Changeset 99718a2e in mainline for kernel/genarch/src/acpi/madt.c
- Timestamp:
- 2010-06-30T20:42:42Z (15 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 873c681
- Parents:
- 50f4b95
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/genarch/src/acpi/madt.c
r50f4b95 r99718a2e 111 111 return ((struct madt_l_apic *) 112 112 madt_entries_index[madt_l_apic_entry_index + i])->apic_id == 113 l_apic_id();113 bsp_l_apic; 114 114 } 115 115 … … 147 147 static void madt_l_apic_entry(struct madt_l_apic *la, size_t i) 148 148 { 149 if ( !madt_l_apic_entry_cnt++)149 if (madt_l_apic_entry_cnt == 0) 150 150 madt_l_apic_entry_index = i; 151 152 madt_l_apic_entry_cnt++; 151 153 152 154 if (!(la->flags & 0x1)) { … … 160 162 static void madt_io_apic_entry(struct madt_io_apic *ioa, size_t i) 161 163 { 162 if ( !madt_io_apic_entry_cnt++) {164 if (madt_io_apic_entry_cnt == 0) { 163 165 /* Remember index of the first io apic entry */ 164 166 madt_io_apic_entry_index = i; … … 167 169 /* Currently not supported */ 168 170 } 171 172 madt_io_apic_entry_cnt++; 169 173 } 170 174 … … 190 194 /* Count MADT entries */ 191 195 unsigned int madt_entries_index_cnt = 0; 192 for (hdr = &acpi_madt->apic_header[0]; hdr < end;196 for (hdr = acpi_madt->apic_header; hdr < end; 193 197 hdr = (struct madt_apic_header *) (((uint8_t *) hdr) + hdr->length)) 194 198 madt_entries_index_cnt++; … … 196 200 /* Create MADT APIC entries index array */ 197 201 madt_entries_index = (struct madt_apic_header **) 198 malloc(madt_entries_index_cnt * sizeof(struct madt_apic_header * *),202 malloc(madt_entries_index_cnt * sizeof(struct madt_apic_header *), 199 203 FRAME_ATOMIC); 200 204 if (!madt_entries_index) … … 203 207 size_t i = 0; 204 208 205 for (hdr = &acpi_madt->apic_header[0]; hdr < end; 206 hdr = (struct madt_apic_header *) (((uint8_t *) hdr) + hdr->length)) 207 madt_entries_index[i++] = hdr; 209 for (hdr = acpi_madt->apic_header; hdr < end; 210 hdr = (struct madt_apic_header *) (((uint8_t *) hdr) + hdr->length)) { 211 madt_entries_index[i] = hdr; 212 i++; 213 } 208 214 209 215 /* Sort MADT index structure */
Note:
See TracChangeset
for help on using the changeset viewer.