From ef9c00dbd383d2b68207cc996caa05c25c7894f5 Mon Sep 17 00:00:00 2001 From: Prashant Malani Date: Wed, 4 Jan 2023 06:08:44 +0000 Subject: [PATCH] platform/chrome: cros_typec_switch: Use fwnode* prop check Using device_property_present() multiple times on an ACPI device leads to kernel panics on Chromebook systems. This happens when there is > 1 boolean property in an ACPI device which is created dynamically by the BIOS as part of SSDT[1] on Chromebook systems Since fwnode_* can handle simple device tree properties equally well, switch to using the fwnode_property_present() function version. This will avoid panics and make the usage consistent when we introduce a check for the 2nd property in a subsequent patch. [1] https://wiki.osdev.org/SSDT Signed-off-by: Prashant Malani Reviewed-by: Benson Leung Link: https://lore.kernel.org/r/20230104060846.112216-1-pmalani@chromium.org --- drivers/platform/chrome/cros_typec_switch.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/platform/chrome/cros_typec_switch.c b/drivers/platform/chrome/cros_typec_switch.c index a26219e..2536bda 100644 --- a/drivers/platform/chrome/cros_typec_switch.c +++ b/drivers/platform/chrome/cros_typec_switch.c @@ -254,7 +254,7 @@ static int cros_typec_register_switches(struct cros_typec_switch_data *sdata) dev_dbg(dev, "Retimer switch registered for index %llu\n", index); - if (!device_property_present(fwnode->dev, "mode-switch")) + if (!fwnode_property_present(fwnode, "mode-switch")) continue; ret = cros_typec_register_mode_switch(port, fwnode); -- 2.7.4