Duncan Laurie has uploaded this change for review. ( https://review.coreboot.org/c/coreboot/+/39835 )
Change subject: mb/emulation/qemu-i440fx: Add acpi_name handler for QEMU ......................................................................
mb/emulation/qemu-i440fx: Add acpi_name handler for QEMU
QEMU does not have a separate northbridge chip, so the mainboard needs to handle the ACPI name and paths so that devices can get generated into the SSDT properly. This fixes the PIRQ and TPM table generation.
Change-Id: Ifc7d4359eea38ac0b55d655e39191ae7f8655fe4 Signed-off-by: Duncan Laurie dlaurie@google.com --- M src/mainboard/emulation/qemu-i440fx/northbridge.c 1 file changed, 17 insertions(+), 0 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/35/39835/1
diff --git a/src/mainboard/emulation/qemu-i440fx/northbridge.c b/src/mainboard/emulation/qemu-i440fx/northbridge.c index 7e067a4..de96029 100644 --- a/src/mainboard/emulation/qemu-i440fx/northbridge.c +++ b/src/mainboard/emulation/qemu-i440fx/northbridge.c @@ -229,6 +229,20 @@ return len; } #endif + +#if CONFIG(HAVE_ACPI_TABLES) +static const char *qemu_acpi_name(const struct device *dev) +{ + if (dev->path.type == DEVICE_PATH_DOMAIN) + return "PCI0"; + + if (dev->path.type != DEVICE_PATH_PCI || dev->bus->secondary != 0) + return NULL; + + return NULL; +} +#endif + static struct device_operations pci_domain_ops = { .read_resources = cpu_pci_domain_read_resources, .set_resources = cpu_pci_domain_set_resources, @@ -238,6 +252,9 @@ #if CONFIG(GENERATE_SMBIOS_TABLES) .get_smbios_data = qemu_get_smbios_data, #endif +#if CONFIG(HAVE_ACPI_TABLES) + .acpi_name = qemu_acpi_name, +#endif };
static void cpu_bus_init(struct device *dev)
Furquan Shaikh has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/39835 )
Change subject: mb/emulation/qemu-i440fx: Add acpi_name handler for QEMU ......................................................................
Patch Set 1: Code-Review+2
Paul Menzel has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/39835 )
Change subject: mb/emulation/qemu-i440fx: Add acpi_name handler for QEMU ......................................................................
Patch Set 1:
(1 comment)
https://review.coreboot.org/c/coreboot/+/39835/1//COMMIT_MSG Commit Message:
https://review.coreboot.org/c/coreboot/+/39835/1//COMMIT_MSG@13 PS1, Line 13: Tested how? acpidump? Running some TPM command in QEMU?
Hello build bot (Jenkins), Furquan Shaikh,
I'd like you to reexamine a change. Please visit
https://review.coreboot.org/c/coreboot/+/39835
to look at the new patch set (#2).
Change subject: mb/emulation/qemu-i440fx: Add acpi_name handler for QEMU ......................................................................
mb/emulation/qemu-i440fx: Add acpi_name handler for QEMU
QEMU does not have a separate northbridge chip, so the mainboard needs to handle the ACPI name and paths so that devices can get generated into the SSDT properly. This fixes the PIRQ and TPM table generation.
This issue can be seen in the coreboot output: ACPI_PIRQ_GEN: Missing LPCB ACPI path
Change-Id: Ifc7d4359eea38ac0b55d655e39191ae7f8655fe4 Signed-off-by: Duncan Laurie dlaurie@google.com --- M src/mainboard/emulation/qemu-i440fx/northbridge.c 1 file changed, 17 insertions(+), 0 deletions(-)
git pull ssh://review.coreboot.org:29418/coreboot refs/changes/35/39835/2
Duncan Laurie has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/39835 )
Change subject: mb/emulation/qemu-i440fx: Add acpi_name handler for QEMU ......................................................................
Patch Set 1:
(1 comment)
https://review.coreboot.org/c/coreboot/+/39835/1//COMMIT_MSG Commit Message:
https://review.coreboot.org/c/coreboot/+/39835/1//COMMIT_MSG@13 PS1, Line 13:
Tested how? acpidump? Running some TPM command in QEMU?
Done
Patrick Rudolph has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/39835 )
Change subject: mb/emulation/qemu-i440fx: Add acpi_name handler for QEMU ......................................................................
Patch Set 2: Code-Review+2
Paul Menzel has posted comments on this change. ( https://review.coreboot.org/c/coreboot/+/39835 )
Change subject: mb/emulation/qemu-i440fx: Add acpi_name handler for QEMU ......................................................................
Patch Set 2: Code-Review+1
Patrick Georgi has submitted this change. ( https://review.coreboot.org/c/coreboot/+/39835 )
Change subject: mb/emulation/qemu-i440fx: Add acpi_name handler for QEMU ......................................................................
mb/emulation/qemu-i440fx: Add acpi_name handler for QEMU
QEMU does not have a separate northbridge chip, so the mainboard needs to handle the ACPI name and paths so that devices can get generated into the SSDT properly. This fixes the PIRQ and TPM table generation.
This issue can be seen in the coreboot output: ACPI_PIRQ_GEN: Missing LPCB ACPI path
Change-Id: Ifc7d4359eea38ac0b55d655e39191ae7f8655fe4 Signed-off-by: Duncan Laurie dlaurie@google.com Reviewed-on: https://review.coreboot.org/c/coreboot/+/39835 Tested-by: build bot (Jenkins) no-reply@coreboot.org Reviewed-by: Patrick Rudolph siro@das-labor.org Reviewed-by: Paul Menzel paulepanter@users.sourceforge.net --- M src/mainboard/emulation/qemu-i440fx/northbridge.c 1 file changed, 17 insertions(+), 0 deletions(-)
Approvals: build bot (Jenkins): Verified Paul Menzel: Looks good to me, but someone else must approve Patrick Rudolph: Looks good to me, approved
diff --git a/src/mainboard/emulation/qemu-i440fx/northbridge.c b/src/mainboard/emulation/qemu-i440fx/northbridge.c index 355f13c..74e52de 100644 --- a/src/mainboard/emulation/qemu-i440fx/northbridge.c +++ b/src/mainboard/emulation/qemu-i440fx/northbridge.c @@ -229,6 +229,20 @@ return len; } #endif + +#if CONFIG(HAVE_ACPI_TABLES) +static const char *qemu_acpi_name(const struct device *dev) +{ + if (dev->path.type == DEVICE_PATH_DOMAIN) + return "PCI0"; + + if (dev->path.type != DEVICE_PATH_PCI || dev->bus->secondary != 0) + return NULL; + + return NULL; +} +#endif + static struct device_operations pci_domain_ops = { .read_resources = cpu_pci_domain_read_resources, .set_resources = cpu_pci_domain_set_resources, @@ -238,6 +252,9 @@ #if CONFIG(GENERATE_SMBIOS_TABLES) .get_smbios_data = qemu_get_smbios_data, #endif +#if CONFIG(HAVE_ACPI_TABLES) + .acpi_name = qemu_acpi_name, +#endif };
static void cpu_bus_init(struct device *dev)