gpio: mockup: implement get_multiple()
We already support set_multiple(). Implement get_multiple() as well. Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
This commit is contained in:
parent
9212492f6e
commit
cbf1e092f2
@ -102,6 +102,22 @@ static int gpio_mockup_get(struct gpio_chip *gc, unsigned int offset)
|
||||
return val;
|
||||
}
|
||||
|
||||
static int gpio_mockup_get_multiple(struct gpio_chip *gc,
|
||||
unsigned long *mask, unsigned long *bits)
|
||||
{
|
||||
struct gpio_mockup_chip *chip = gpiochip_get_data(gc);
|
||||
unsigned int bit, val;
|
||||
|
||||
mutex_lock(&chip->lock);
|
||||
for_each_set_bit(bit, mask, gc->ngpio) {
|
||||
val = __gpio_mockup_get(gc, bit);
|
||||
__assign_bit(bit, bits, val);
|
||||
}
|
||||
mutex_unlock(&chip->lock);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void __gpio_mockup_set(struct gpio_chip *gc,
|
||||
unsigned int offset, int value)
|
||||
{
|
||||
@ -327,6 +343,7 @@ static int gpio_mockup_probe(struct platform_device *pdev)
|
||||
gc->parent = dev;
|
||||
gc->get = gpio_mockup_get;
|
||||
gc->set = gpio_mockup_set;
|
||||
gc->get_multiple = gpio_mockup_get_multiple;
|
||||
gc->set_multiple = gpio_mockup_set_multiple;
|
||||
gc->direction_output = gpio_mockup_dirout;
|
||||
gc->direction_input = gpio_mockup_dirin;
|
||||
|
Loading…
Reference in New Issue
Block a user