]> www.infradead.org Git - nvme.git/commitdiff
platform/chrome: cros_ec_lpc: Handle EC without CRS section
authorGwendal Grignou <gwendal@chromium.org>
Tue, 14 Jan 2025 20:21:22 +0000 (12:21 -0800)
committerTzung-Bi Shih <tzungbi@kernel.org>
Wed, 15 Jan 2025 01:28:50 +0000 (01:28 +0000)
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 <gwendal@chromium.org>
Link: https://lore.kernel.org/r/20250114202122.2352277-1-gwendal@chromium.org
Signed-off-by: Tzung-Bi Shih <tzungbi@kernel.org>
drivers/platform/chrome/cros_ec_lpc.c

index ee9e3c8685cfc422c6a50f5b0403cd027ef4c02c..5a2f1d98b3501b3b88adaf50fe5784f990310f9f 100644 (file)
@@ -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);