Skip to content

Commit

Permalink
leds: lm3692x: Move lm3692x_init and rename to lm3692x_leds_enable
Browse files Browse the repository at this point in the history
This moves lm3692x_init so it can be used from
lm3692x_brightness_set. Rename to lm3692_leds_enable to pair up
with lm3692x_leds_disable. No functional change.

Signed-off-by: Guido Günther <[email protected]>
Acked-by: Pavel Machek <[email protected]>
Signed-off-by: Pavel Machek <[email protected]>
  • Loading branch information
agx authored and pavelmachek committed Jan 7, 2020
1 parent df7083b commit 5e9d7b6
Showing 1 changed file with 35 additions and 35 deletions.
70 changes: 35 additions & 35 deletions drivers/leds/leds-lm3692x.c
Original file line number Diff line number Diff line change
Expand Up @@ -165,40 +165,7 @@ static int lm3692x_fault_check(struct lm3692x_led *led)
return read_buf;
}

static int lm3692x_brightness_set(struct led_classdev *led_cdev,
enum led_brightness brt_val)
{
struct lm3692x_led *led =
container_of(led_cdev, struct lm3692x_led, led_dev);
int ret;
int led_brightness_lsb = (brt_val >> 5);

mutex_lock(&led->lock);

ret = lm3692x_fault_check(led);
if (ret) {
dev_err(&led->client->dev, "Cannot read/clear faults: %d\n",
ret);
goto out;
}

ret = regmap_write(led->regmap, LM3692X_BRT_MSB, brt_val);
if (ret) {
dev_err(&led->client->dev, "Cannot write MSB: %d\n", ret);
goto out;
}

ret = regmap_write(led->regmap, LM3692X_BRT_LSB, led_brightness_lsb);
if (ret) {
dev_err(&led->client->dev, "Cannot write LSB: %d\n", ret);
goto out;
}
out:
mutex_unlock(&led->lock);
return ret;
}

static int lm3692x_init(struct lm3692x_led *led)
static int lm3692x_leds_enable(struct lm3692x_led *led)
{
int enable_state;
int ret, reg_ret;
Expand Down Expand Up @@ -322,6 +289,39 @@ static int lm3692x_init(struct lm3692x_led *led)
return ret;
}

static int lm3692x_brightness_set(struct led_classdev *led_cdev,
enum led_brightness brt_val)
{
struct lm3692x_led *led =
container_of(led_cdev, struct lm3692x_led, led_dev);
int ret;
int led_brightness_lsb = (brt_val >> 5);

mutex_lock(&led->lock);

ret = lm3692x_fault_check(led);
if (ret) {
dev_err(&led->client->dev, "Cannot read/clear faults: %d\n",
ret);
goto out;
}

ret = regmap_write(led->regmap, LM3692X_BRT_MSB, brt_val);
if (ret) {
dev_err(&led->client->dev, "Cannot write MSB: %d\n", ret);
goto out;
}

ret = regmap_write(led->regmap, LM3692X_BRT_LSB, led_brightness_lsb);
if (ret) {
dev_err(&led->client->dev, "Cannot write LSB: %d\n", ret);
goto out;
}
out:
mutex_unlock(&led->lock);
return ret;
}

static enum led_brightness lm3692x_max_brightness(struct lm3692x_led *led,
u32 max_cur)
{
Expand Down Expand Up @@ -451,7 +451,7 @@ static int lm3692x_probe(struct i2c_client *client,
if (ret)
return ret;

ret = lm3692x_init(led);
ret = lm3692x_leds_enable(led);
if (ret)
return ret;

Expand Down

0 comments on commit 5e9d7b6

Please sign in to comment.