/* * APIC driver for the IBM "Summit" chipset. */ #define APIC_DEFINITION 1 #include #include #include #include #include #include #include #include #include #include #include #include #include #include static int probe_summit(void) { /* probed later in mptable/ACPI hooks */ return 0; } static cpumask_t vector_allocation_domain(int cpu) { /* Careful. Some cpus do not strictly honor the set of cpus * specified in the interrupt destination when using lowest * priority interrupt delivery mode. * * In particular there was a hyperthreading cpu observed to * deliver interrupts to the wrong hyperthread when only one * hyperthread was specified in the interrupt desitination. */ cpumask_t domain = { { [0] = APIC_ALL_CPUS, } }; return domain; } struct genapic apic_summit = APIC_INIT("summit", probe_summit);