1
0
Fork 0

gpio: mockup: change the signature of unlocked get/set helpers

The unlocked variants only get called from places where we already have
the pointer to the underlying gpio_mockup_chip structure, so take it
as parameter instead of struct gpio_chip.

Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com>
hifive-unleashed-5.1
Bartosz Golaszewski 2019-01-23 09:34:15 +01:00
parent 83336668b9
commit e09313ce7e
1 changed files with 8 additions and 11 deletions

View File

@ -83,10 +83,9 @@ static int gpio_mockup_range_ngpio(unsigned int index)
return gpio_mockup_ranges[index * 2 + 1];
}
static int __gpio_mockup_get(struct gpio_chip *gc, unsigned int offset)
static int __gpio_mockup_get(struct gpio_mockup_chip *chip,
unsigned int offset)
{
struct gpio_mockup_chip *chip = gpiochip_get_data(gc);
return chip->lines[offset].value;
}
@ -96,7 +95,7 @@ static int gpio_mockup_get(struct gpio_chip *gc, unsigned int offset)
int val;
mutex_lock(&chip->lock);
val = __gpio_mockup_get(gc, offset);
val = __gpio_mockup_get(chip, offset);
mutex_unlock(&chip->lock);
return val;
@ -110,7 +109,7 @@ static int gpio_mockup_get_multiple(struct gpio_chip *gc,
mutex_lock(&chip->lock);
for_each_set_bit(bit, mask, gc->ngpio) {
val = __gpio_mockup_get(gc, bit);
val = __gpio_mockup_get(chip, bit);
__assign_bit(bit, bits, val);
}
mutex_unlock(&chip->lock);
@ -118,11 +117,9 @@ static int gpio_mockup_get_multiple(struct gpio_chip *gc,
return 0;
}
static void __gpio_mockup_set(struct gpio_chip *gc,
static void __gpio_mockup_set(struct gpio_mockup_chip *chip,
unsigned int offset, int value)
{
struct gpio_mockup_chip *chip = gpiochip_get_data(gc);
chip->lines[offset].value = !!value;
}
@ -132,7 +129,7 @@ static void gpio_mockup_set(struct gpio_chip *gc,
struct gpio_mockup_chip *chip = gpiochip_get_data(gc);
mutex_lock(&chip->lock);
__gpio_mockup_set(gc, offset, value);
__gpio_mockup_set(chip, offset, value);
mutex_unlock(&chip->lock);
}
@ -144,7 +141,7 @@ static void gpio_mockup_set_multiple(struct gpio_chip *gc,
mutex_lock(&chip->lock);
for_each_set_bit(bit, mask, gc->ngpio)
__gpio_mockup_set(gc, bit, test_bit(bit, bits));
__gpio_mockup_set(chip, bit, test_bit(bit, bits));
mutex_unlock(&chip->lock);
}
@ -155,7 +152,7 @@ static int gpio_mockup_dirout(struct gpio_chip *gc,
mutex_lock(&chip->lock);
chip->lines[offset].dir = GPIO_MOCKUP_DIR_OUT;
__gpio_mockup_set(gc, offset, value);
__gpio_mockup_set(chip, offset, value);
mutex_unlock(&chip->lock);
return 0;