hc
2024-02-20 102a0743326a03cd1a1202ceda21e175b7d3575c
kernel/arch/x86/kernel/devicetree.c
....@@ -20,9 +20,11 @@
2020 #include <asm/irqdomain.h>
2121 #include <asm/hpet.h>
2222 #include <asm/apic.h>
23
+#include <asm/io_apic.h>
2324 #include <asm/pci_x86.h>
2425 #include <asm/setup.h>
2526 #include <asm/i8259.h>
27
+#include <asm/prom.h>
2628
2729 __initdata u64 initial_dtb;
2830 char __initdata cmd_line[COMMAND_LINE_SIZE];
....@@ -140,7 +142,7 @@
140142 int ret;
141143
142144 version = GET_APIC_VERSION(apic_read(APIC_LVR));
143
- for_each_node_by_type(dn, "cpu") {
145
+ for_each_of_cpu_node(dn) {
144146 ret = of_property_read_u32(dn, "reg", &apic_id);
145147 if (ret < 0) {
146148 pr_warn("%pOF: missing local APIC ID\n", dn);
....@@ -227,8 +229,8 @@
227229
228230 it = &of_ioapic_type[type_index];
229231 ioapic_set_alloc_attr(&tmp, NUMA_NO_NODE, it->trigger, it->polarity);
230
- tmp.ioapic_id = mpc_ioapic_id(mp_irqdomain_ioapic_idx(domain));
231
- tmp.ioapic_pin = fwspec->param[0];
232
+ tmp.devid = mpc_ioapic_id(mp_irqdomain_ioapic_idx(domain));
233
+ tmp.ioapic.pin = fwspec->param[0];
232234
233235 return mp_irqdomain_alloc(domain, virq, nr_irqs, &tmp);
234236 }