diff --git a/drivers/gnss/sirf.c b/drivers/gnss/sirf.c index 4596fde16dfe..3e88e79d1053 100644 --- a/drivers/gnss/sirf.c +++ b/drivers/gnss/sirf.c @@ -292,14 +292,18 @@ static int sirf_probe(struct serdev_device *serdev) data->on_off = devm_gpiod_get_optional(dev, "sirf,onoff", GPIOD_OUT_LOW); - if (IS_ERR(data->on_off)) + if (IS_ERR(data->on_off)) { + ret = PTR_ERR(data->on_off); goto err_put_device; + } if (data->on_off) { data->wakeup = devm_gpiod_get_optional(dev, "sirf,wakeup", GPIOD_IN); - if (IS_ERR(data->wakeup)) + if (IS_ERR(data->wakeup)) { + ret = PTR_ERR(data->wakeup); goto err_put_device; + } /* * Configurations where WAKEUP has been left not connected,