diff --git a/drivers/power/bq2589x_chg_mmi/bq2589x_charger.c b/drivers/power/bq2589x_chg_mmi/bq2589x_charger.c index 9a0f419f82a5..5c2d17d09a84 100644 --- a/drivers/power/bq2589x_chg_mmi/bq2589x_charger.c +++ b/drivers/power/bq2589x_chg_mmi/bq2589x_charger.c @@ -1416,10 +1416,12 @@ static int bq2589x_parse_dt(struct device *dev, struct bq2589x *bq) if (gpio_is_valid(bq->wls_en_gpio)) { ret = gpio_request(bq->wls_en_gpio, "mmi wls en pin"); - if (ret) + if (ret) { dev_err(bq->dev, "%s: %d gpio(wls en) request failed\n", __func__, bq->wls_en_gpio); - else - gpio_direction_output(bq->wls_en_gpio, 0);//default enable wls charge + return ret; + } + + gpio_direction_output(bq->wls_en_gpio, 0);//default enable wls charge } ret = of_property_read_u32(np, "ti,bq2589x,vbus-volt-high-level", &pe.high_volt_level); diff --git a/drivers/power/sgm4154x_chg_mmi/sgm4154x_charger.c b/drivers/power/sgm4154x_chg_mmi/sgm4154x_charger.c index d382139ea1c6..0b843a89a073 100644 --- a/drivers/power/sgm4154x_chg_mmi/sgm4154x_charger.c +++ b/drivers/power/sgm4154x_chg_mmi/sgm4154x_charger.c @@ -2495,10 +2495,12 @@ static int sgm4154x_parse_dt(struct sgm4154x_device *sgm) if (gpio_is_valid(sgm->wls_en_gpio)) { ret = gpio_request(sgm->wls_en_gpio, "mmi wls en pin"); - if (ret) + if (ret) { dev_err(sgm->dev, "%s: %d gpio(wls en) request failed\n", __func__, sgm->wls_en_gpio); - else - gpio_direction_output(sgm->wls_en_gpio, 0);//default enable wls charge + return ret; + } + + gpio_direction_output(sgm->wls_en_gpio, 0);//default enable wls charge } /* sw jeita */