Subversion Repositories HelenOS-historic

Rev

Rev 195 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 195 Rev 268
Line 112... Line 112...
112
    struct madt_apic_header *end = (struct madt_apic_header *) (((__u8 *) acpi_madt) + acpi_madt->header.length);
112
    struct madt_apic_header *end = (struct madt_apic_header *) (((__u8 *) acpi_madt) + acpi_madt->header.length);
113
    struct madt_apic_header *h = &acpi_madt->apic_header[0];
113
    struct madt_apic_header *h = &acpi_madt->apic_header[0];
114
    __u8 prev_type = 0; /* used to detect inconsecutive entries */
114
    __u8 prev_type = 0; /* used to detect inconsecutive entries */
115
 
115
 
116
 
116
 
117
    l_apic = (__u32 *) acpi_madt->l_apic_address;
117
    l_apic = (__u32 *) (__native) acpi_madt->l_apic_address;
118
 
118
 
119
    while (h < end) {
119
    while (h < end) {
120
        switch (h->type) {
120
        switch (h->type) {
121
            case MADT_L_APIC:
121
            case MADT_L_APIC:
122
                madt_l_apic_entry((struct madt_l_apic *) h, prev_type);
122
                madt_l_apic_entry((struct madt_l_apic *) h, prev_type);
Line 174... Line 174...
174
    if (madt_io_apic_entry_cnt && prev_type != MADT_IO_APIC)
174
    if (madt_io_apic_entry_cnt && prev_type != MADT_IO_APIC)
175
    panic("%s entries are not consecuitve\n", entry[MADT_IO_APIC]);
175
    panic("%s entries are not consecuitve\n", entry[MADT_IO_APIC]);
176
 
176
 
177
    if (!madt_io_apic_entry_cnt++) {
177
    if (!madt_io_apic_entry_cnt++) {
178
        madt_io_apic_entries = ioa;
178
        madt_io_apic_entries = ioa;
179
        io_apic = (__u32 *) ioa->io_apic_address;
179
        io_apic = (__u32 *) (__native) ioa->io_apic_address;
180
    }
180
    }
181
    else {
181
    else {
182
        /* currently not supported */
182
        /* currently not supported */
183
        return;
183
        return;
184
    }
184
    }