Matt DeVillier has submitted this change. ( https://review.coreboot.org/c/coreboot/+/77413?usp=email )
Change subject: acpi/device: Only return dev->ops->acpi_name if non-NULL ......................................................................
acpi/device: Only return dev->ops->acpi_name if non-NULL
Returning a NULL device name can cause issues if something else does handle it.
E.g. UART and GNA devices on Intel Alder Lake-N cause INTERNAL_POWER_ERROR BSOD's in Windows when enabled due to invalid packages being created from a NULL name
Test: build/boot google/nissa (craaskvin) to Win11
Change-Id: I0679147ad3e330d706bbf97c30bc11b2432e2e8a Signed-off-by: CoolStar coolstarorganization@gmail.com Reviewed-on: https://review.coreboot.org/c/coreboot/+/77413 Tested-by: build bot (Jenkins) no-reply@coreboot.org Reviewed-by: Matt DeVillier matt.devillier@gmail.com Reviewed-by: Felix Singer service+coreboot-gerrit@felixsinger.de --- M src/acpi/device.c 1 file changed, 5 insertions(+), 2 deletions(-)
Approvals: Matt DeVillier: Looks good to me, approved build bot (Jenkins): Verified Felix Singer: Looks good to me, approved
diff --git a/src/acpi/device.c b/src/acpi/device.c index b76357e..92000a3 100644 --- a/src/acpi/device.c +++ b/src/acpi/device.c @@ -76,8 +76,11 @@ return NULL;
/* Check for device specific handler */ - if (dev->ops && dev->ops->acpi_name) - return dev->ops->acpi_name(dev); + if (dev->ops && dev->ops->acpi_name) { + name = dev->ops->acpi_name(dev); + if (name) + return name; + }
/* Walk up the tree to find if any parent can identify this device */ while (pdev->bus) {