From: Gwendal Grignou Date: Tue, 14 Jan 2025 20:21:22 +0000 (-0800) Subject: platform/chrome: cros_ec_lpc: Handle EC without CRS section X-Git-Tag: v6.14-rc1~170^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=fccebbdde2067e359f01382a72c31ed2af7acbac;p=thirdparty%2Fkernel%2Flinux.git platform/chrome: cros_ec_lpc: Handle EC without CRS section Fix logic to support GOOG0004 device without CRS section. Instead of failing, assume there are not memory mapped EC registers. Fixes: be4fccb5e1fb ("platform/chrome: cros_ec_lpc: Support direct EC register memory access") Signed-off-by: Gwendal Grignou Link: https://lore.kernel.org/r/20250114202122.2352277-1-gwendal@chromium.org Signed-off-by: Tzung-Bi Shih --- diff --git a/drivers/platform/chrome/cros_ec_lpc.c b/drivers/platform/chrome/cros_ec_lpc.c index ee9e3c8685cfc..5a2f1d98b3501 100644 --- a/drivers/platform/chrome/cros_ec_lpc.c +++ b/drivers/platform/chrome/cros_ec_lpc.c @@ -562,11 +562,7 @@ static int cros_ec_lpc_probe(struct platform_device *pdev) */ status = acpi_walk_resources(adev->handle, METHOD_NAME__CRS, cros_ec_lpc_resources, ec_lpc); - if (ACPI_FAILURE(status)) { - dev_err(dev, "failed to get resources\n"); - return -ENODEV; - } - if (ec_lpc->mem32.address_length) { + if (ACPI_SUCCESS(status) && ec_lpc->mem32.address_length) { ec_lpc->base = devm_ioremap(dev, ec_lpc->mem32.address, ec_lpc->mem32.address_length);