mirror of
https://github.com/torvalds/linux.git
synced 2026-06-05 04:56:13 +02:00
media: i2c: ds90ub953: use new GPIO line value setter callbacks
struct gpio_chip now has callbacks for setting line values that return an integer, allowing to indicate failures. Convert the driver to using them. Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org> Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
This commit is contained in:
parent
bb4954b4ab
commit
c4406dc9bc
|
|
@ -317,14 +317,13 @@ static int ub953_gpio_get(struct gpio_chip *gc, unsigned int offset)
|
|||
return !!(v & UB953_REG_GPIO_PIN_STS_GPIO_STS(offset));
|
||||
}
|
||||
|
||||
static void ub953_gpio_set(struct gpio_chip *gc, unsigned int offset, int value)
|
||||
static int ub953_gpio_set(struct gpio_chip *gc, unsigned int offset, int value)
|
||||
{
|
||||
struct ub953_data *priv = gpiochip_get_data(gc);
|
||||
|
||||
regmap_update_bits(priv->regmap, UB953_REG_LOCAL_GPIO_DATA,
|
||||
UB953_REG_LOCAL_GPIO_DATA_GPIO_OUT_SRC(offset),
|
||||
value ? UB953_REG_LOCAL_GPIO_DATA_GPIO_OUT_SRC(offset) :
|
||||
0);
|
||||
return regmap_update_bits(priv->regmap, UB953_REG_LOCAL_GPIO_DATA,
|
||||
UB953_REG_LOCAL_GPIO_DATA_GPIO_OUT_SRC(offset),
|
||||
value ? UB953_REG_LOCAL_GPIO_DATA_GPIO_OUT_SRC(offset) : 0);
|
||||
}
|
||||
|
||||
static int ub953_gpio_of_xlate(struct gpio_chip *gc,
|
||||
|
|
@ -362,7 +361,7 @@ static int ub953_gpiochip_probe(struct ub953_data *priv)
|
|||
gc->direction_input = ub953_gpio_direction_in;
|
||||
gc->direction_output = ub953_gpio_direction_out;
|
||||
gc->get = ub953_gpio_get;
|
||||
gc->set = ub953_gpio_set;
|
||||
gc->set_rv = ub953_gpio_set;
|
||||
gc->of_xlate = ub953_gpio_of_xlate;
|
||||
gc->of_gpio_n_cells = 2;
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user