Loading drivers/leds/leds-lm3692x.c +26 −16 Original line number Diff line number Diff line Loading @@ -289,6 +289,30 @@ static int lm3692x_leds_enable(struct lm3692x_led *led) return ret; } static int lm3692x_leds_disable(struct lm3692x_led *led) { int ret; ret = regmap_update_bits(led->regmap, LM3692X_EN, LM3692X_DEVICE_EN, 0); if (ret) { dev_err(&led->client->dev, "Failed to disable regulator: %d\n", ret); return ret; } if (led->enable_gpio) gpiod_direction_output(led->enable_gpio, 0); if (led->regulator) { ret = regulator_disable(led->regulator); if (ret) dev_err(&led->client->dev, "Failed to disable regulator: %d\n", ret); } return ret; } static int lm3692x_brightness_set(struct led_classdev *led_cdev, enum led_brightness brt_val) { Loading Loading @@ -463,23 +487,9 @@ static int lm3692x_remove(struct i2c_client *client) struct lm3692x_led *led = i2c_get_clientdata(client); int ret; ret = regmap_update_bits(led->regmap, LM3692X_EN, LM3692X_DEVICE_EN, 0); if (ret) { dev_err(&led->client->dev, "Failed to disable regulator: %d\n", ret); return ret; } if (led->enable_gpio) gpiod_direction_output(led->enable_gpio, 0); if (led->regulator) { ret = regulator_disable(led->regulator); ret = lm3692x_leds_disable(led); if (ret) dev_err(&led->client->dev, "Failed to disable regulator: %d\n", ret); } return ret; mutex_destroy(&led->lock); return 0; Loading Loading
drivers/leds/leds-lm3692x.c +26 −16 Original line number Diff line number Diff line Loading @@ -289,6 +289,30 @@ static int lm3692x_leds_enable(struct lm3692x_led *led) return ret; } static int lm3692x_leds_disable(struct lm3692x_led *led) { int ret; ret = regmap_update_bits(led->regmap, LM3692X_EN, LM3692X_DEVICE_EN, 0); if (ret) { dev_err(&led->client->dev, "Failed to disable regulator: %d\n", ret); return ret; } if (led->enable_gpio) gpiod_direction_output(led->enable_gpio, 0); if (led->regulator) { ret = regulator_disable(led->regulator); if (ret) dev_err(&led->client->dev, "Failed to disable regulator: %d\n", ret); } return ret; } static int lm3692x_brightness_set(struct led_classdev *led_cdev, enum led_brightness brt_val) { Loading Loading @@ -463,23 +487,9 @@ static int lm3692x_remove(struct i2c_client *client) struct lm3692x_led *led = i2c_get_clientdata(client); int ret; ret = regmap_update_bits(led->regmap, LM3692X_EN, LM3692X_DEVICE_EN, 0); if (ret) { dev_err(&led->client->dev, "Failed to disable regulator: %d\n", ret); return ret; } if (led->enable_gpio) gpiod_direction_output(led->enable_gpio, 0); if (led->regulator) { ret = regulator_disable(led->regulator); ret = lm3692x_leds_disable(led); if (ret) dev_err(&led->client->dev, "Failed to disable regulator: %d\n", ret); } return ret; mutex_destroy(&led->lock); return 0; Loading