|
11 | 11 | #include <linux/init.h>
|
12 | 12 | #include <linux/kernel.h>
|
13 | 13 | #include <linux/err.h>
|
14 |
| -#include <linux/gpio.h> |
| 14 | +#include <linux/gpio/consumer.h> |
15 | 15 | #include <linux/i2c.h>
|
16 | 16 | #include <linux/mfd/core.h>
|
17 | 17 | #include <linux/regmap.h>
|
@@ -225,14 +225,12 @@ static int lm3533_set_lvled_config(struct lm3533 *lm3533, u8 lvled, u8 led)
|
225 | 225 |
|
226 | 226 | static void lm3533_enable(struct lm3533 *lm3533)
|
227 | 227 | {
|
228 |
| - if (gpio_is_valid(lm3533->gpio_hwen)) |
229 |
| - gpio_set_value(lm3533->gpio_hwen, 1); |
| 228 | + gpiod_set_value(lm3533->hwen, 1); |
230 | 229 | }
|
231 | 230 |
|
232 | 231 | static void lm3533_disable(struct lm3533 *lm3533)
|
233 | 232 | {
|
234 |
| - if (gpio_is_valid(lm3533->gpio_hwen)) |
235 |
| - gpio_set_value(lm3533->gpio_hwen, 0); |
| 233 | + gpiod_set_value(lm3533->hwen, 0); |
236 | 234 | }
|
237 | 235 |
|
238 | 236 | enum lm3533_attribute_type {
|
@@ -483,18 +481,10 @@ static int lm3533_device_init(struct lm3533 *lm3533)
|
483 | 481 | return -EINVAL;
|
484 | 482 | }
|
485 | 483 |
|
486 |
| - lm3533->gpio_hwen = pdata->gpio_hwen; |
487 |
| - |
488 |
| - if (gpio_is_valid(lm3533->gpio_hwen)) { |
489 |
| - ret = devm_gpio_request_one(lm3533->dev, lm3533->gpio_hwen, |
490 |
| - GPIOF_OUT_INIT_LOW, "lm3533-hwen"); |
491 |
| - if (ret < 0) { |
492 |
| - dev_err(lm3533->dev, |
493 |
| - "failed to request HWEN GPIO %d\n", |
494 |
| - lm3533->gpio_hwen); |
495 |
| - return ret; |
496 |
| - } |
497 |
| - } |
| 484 | + lm3533->hwen = devm_gpiod_get(lm3533->dev, NULL, GPIOD_OUT_LOW); |
| 485 | + if (IS_ERR(lm3533->hwen)) |
| 486 | + return dev_err_probe(lm3533->dev, PTR_ERR(lm3533->hwen), "failed to request HWEN GPIO\n"); |
| 487 | + gpiod_set_consumer_name(lm3533->hwen, "lm3533-hwen"); |
498 | 488 |
|
499 | 489 | lm3533_enable(lm3533);
|
500 | 490 |
|
|
0 commit comments