blob: 1ac81498b522ab32a08f6a74006002b7a05da146 [file] [log] [blame]
Angel Pons3b7983a2021-01-28 12:14:12 +01001/* SPDX-License-Identifier: GPL-2.0-only */
2
3#include <acpi/acpi.h>
4#include <arch/ioapic.h>
5#include <arch/smp/mpspec.h>
6
7unsigned long acpi_fill_madt(unsigned long current)
8{
Angel Pons3b7983a2021-01-28 12:14:12 +01009 /* IOAPIC */
Kyösti Mälkkic0457352021-06-08 06:12:25 +030010 current += acpi_create_madt_ioapic_from_hw((acpi_madt_ioapic_t *)current, IO_APIC_ADDR);
Angel Pons3b7983a2021-01-28 12:14:12 +010011
Angel Pons3b7983a2021-01-28 12:14:12 +010012 /* INT_SRC_OVR */
13 current += acpi_create_madt_irqoverride((acpi_madt_irqoverride_t *)
14 current, 0, 0, 2, MP_IRQ_POLARITY_HIGH | MP_IRQ_TRIGGER_EDGE);
15 current += acpi_create_madt_irqoverride((acpi_madt_irqoverride_t *)
16 current, 0, 9, 9, MP_IRQ_POLARITY_HIGH | MP_IRQ_TRIGGER_LEVEL);
17
18 return current;
19}