Since gpiod_count() does not return 0 anymore, we don't need to shadow
its error code and would safely propagate to the user.

While here, replace second parameter by NULL in order to prevent side
effects on _DSD enabled firmware.

Cc: Benjamin Tissoires <benjamin.tissoi...@redhat.com>
Signed-off-by: Andy Shevchenko <andriy.shevche...@linux.intel.com>
---
 drivers/platform/x86/surface3_button.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/platform/x86/surface3_button.c 
b/drivers/platform/x86/surface3_button.c
index 8bfd7f613d36..57f51476bb65 100644
--- a/drivers/platform/x86/surface3_button.c
+++ b/drivers/platform/x86/surface3_button.c
@@ -196,9 +196,10 @@ static int surface3_button_probe(struct i2c_client *client,
                    strlen(SURFACE_BUTTON_OBJ_NAME)))
                return -ENODEV;
 
-       if (gpiod_count(dev, KBUILD_MODNAME) <= 0) {
+       error = gpiod_count(dev, NULL);
+       if (error < 0) {
                dev_dbg(dev, "no GPIO attached, ignoring...\n");
-               return -ENODEV;
+               return error;
        }
 
        priv = devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL);
-- 
2.11.0

Reply via email to