summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRaul E Rangel <rrangel@chromium.org>2020-06-02 10:47:27 -0600
committerFelix Held <felix-coreboot@felixheld.de>2020-06-03 19:17:36 +0000
commit066a9af02c3eff812193597f7c32b0be1d8f6e3b (patch)
tree793438f5a846921b58d12d60178d858a78398de3
parent79e12abb1bdf9e25e23d6b7313f087fae81e5a60 (diff)
drivers/generic/max98357a: Don't write device if HID is missing
If the device is missing the HID, the code would previously leave an open scope and device on the stack. BUG=b:154756391 TEST=Verify stack ACPI stack does not exceed limit on Trembyle. Fixes: a1c82c5ebee ("drivers/generic/max98357a: Allow custom _HID from config") Signed-off-by: Raul E Rangel <rrangel@chromium.org> Change-Id: I798ed08ef0a0575def12937a66a7ce99f743e60d Reviewed-on: https://review.coreboot.org/c/coreboot/+/42014 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Furquan Shaikh <furquan@google.com>
-rw-r--r--src/drivers/generic/max98357a/max98357a.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/drivers/generic/max98357a/max98357a.c b/src/drivers/generic/max98357a/max98357a.c
index bd45296bcd..575548bd27 100644
--- a/src/drivers/generic/max98357a/max98357a.c
+++ b/src/drivers/generic/max98357a/max98357a.c
@@ -26,15 +26,15 @@ static void max98357a_fill_ssdt(const struct device *dev)
if (!scope || !name)
return;
- /* Device */
- acpigen_write_scope(scope);
- acpigen_write_device(name);
-
if (!config->hid) {
printk(BIOS_ERR, "%s: ERROR: _HID required\n", dev_path(dev));
return;
}
+ /* Device */
+ acpigen_write_scope(scope);
+ acpigen_write_device(name);
+
acpigen_write_name_string("_HID", config->hid);
acpigen_write_name_integer("_UID", 0);
acpigen_write_name_string("_DDN", dev->chip_ops->name);