blob: 14fab74b8492dc55b1194f5da85f74e47519c346 [file] [log] [blame]
Felix Heldaab8a222024-01-08 23:30:38 +01001/* SPDX-License-Identifier: GPL-2.0-only */
2
3#include <acpi/acpi.h>
4#include <amdblocks/data_fabric.h>
5#include <device/device.h>
6
7unsigned long acpi_fill_madt(unsigned long current)
8{
9 struct device *dev = NULL;
10 while ((dev = dev_find_path(dev, DEVICE_PATH_DOMAIN)) != NULL) {
11 struct resource *res = probe_resource(dev, IOMMU_IOAPIC_IDX);
12 if (!res)
13 continue;
14
15 current += acpi_create_madt_ioapic_from_hw((acpi_madt_ioapic_t *)current,
16 res->base);
17 }
18
19 return current;
20}