diff options
author | Bartosz Golaszewski <bgolaszewski@baylibre.com> | 2019-01-23 03:34:15 -0500 |
---|---|---|
committer | Bartosz Golaszewski <bgolaszewski@baylibre.com> | 2019-02-19 11:42:29 -0500 |
commit | e09313ce7ea1706d1642c7d5af103915e69fc6d0 (patch) | |
tree | e6dfdc6d09ad4adc2976558da34e55e057d71884 /drivers/gpio | |
parent | 83336668b94eb44ecd78a0b7840e43f0859e05cb (diff) |
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>
Diffstat (limited to 'drivers/gpio')
-rw-r--r-- | drivers/gpio/gpio-mockup.c | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/drivers/gpio/gpio-mockup.c b/drivers/gpio/gpio-mockup.c index 433adb3b4617..c498b0fbbec8 100644 --- a/drivers/gpio/gpio-mockup.c +++ b/drivers/gpio/gpio-mockup.c | |||
@@ -83,10 +83,9 @@ static int gpio_mockup_range_ngpio(unsigned int index) | |||
83 | return gpio_mockup_ranges[index * 2 + 1]; | 83 | return gpio_mockup_ranges[index * 2 + 1]; |
84 | } | 84 | } |
85 | 85 | ||
86 | static int __gpio_mockup_get(struct gpio_chip *gc, unsigned int offset) | 86 | static int __gpio_mockup_get(struct gpio_mockup_chip *chip, |
87 | unsigned int offset) | ||
87 | { | 88 | { |
88 | struct gpio_mockup_chip *chip = gpiochip_get_data(gc); | ||
89 | |||
90 | return chip->lines[offset].value; | 89 | return chip->lines[offset].value; |
91 | } | 90 | } |
92 | 91 | ||
@@ -96,7 +95,7 @@ static int gpio_mockup_get(struct gpio_chip *gc, unsigned int offset) | |||
96 | int val; | 95 | int val; |
97 | 96 | ||
98 | mutex_lock(&chip->lock); | 97 | mutex_lock(&chip->lock); |
99 | val = __gpio_mockup_get(gc, offset); | 98 | val = __gpio_mockup_get(chip, offset); |
100 | mutex_unlock(&chip->lock); | 99 | mutex_unlock(&chip->lock); |
101 | 100 | ||
102 | return val; | 101 | return val; |
@@ -110,7 +109,7 @@ static int gpio_mockup_get_multiple(struct gpio_chip *gc, | |||
110 | 109 | ||
111 | mutex_lock(&chip->lock); | 110 | mutex_lock(&chip->lock); |
112 | for_each_set_bit(bit, mask, gc->ngpio) { | 111 | for_each_set_bit(bit, mask, gc->ngpio) { |
113 | val = __gpio_mockup_get(gc, bit); | 112 | val = __gpio_mockup_get(chip, bit); |
114 | __assign_bit(bit, bits, val); | 113 | __assign_bit(bit, bits, val); |
115 | } | 114 | } |
116 | mutex_unlock(&chip->lock); | 115 | mutex_unlock(&chip->lock); |
@@ -118,11 +117,9 @@ static int gpio_mockup_get_multiple(struct gpio_chip *gc, | |||
118 | return 0; | 117 | return 0; |
119 | } | 118 | } |
120 | 119 | ||
121 | static void __gpio_mockup_set(struct gpio_chip *gc, | 120 | static void __gpio_mockup_set(struct gpio_mockup_chip *chip, |
122 | unsigned int offset, int value) | 121 | unsigned int offset, int value) |
123 | { | 122 | { |
124 | struct gpio_mockup_chip *chip = gpiochip_get_data(gc); | ||
125 | |||
126 | chip->lines[offset].value = !!value; | 123 | chip->lines[offset].value = !!value; |
127 | } | 124 | } |
128 | 125 | ||
@@ -132,7 +129,7 @@ static void gpio_mockup_set(struct gpio_chip *gc, | |||
132 | struct gpio_mockup_chip *chip = gpiochip_get_data(gc); | 129 | struct gpio_mockup_chip *chip = gpiochip_get_data(gc); |
133 | 130 | ||
134 | mutex_lock(&chip->lock); | 131 | mutex_lock(&chip->lock); |
135 | __gpio_mockup_set(gc, offset, value); | 132 | __gpio_mockup_set(chip, offset, value); |
136 | mutex_unlock(&chip->lock); | 133 | mutex_unlock(&chip->lock); |
137 | } | 134 | } |
138 | 135 | ||
@@ -144,7 +141,7 @@ static void gpio_mockup_set_multiple(struct gpio_chip *gc, | |||
144 | 141 | ||
145 | mutex_lock(&chip->lock); | 142 | mutex_lock(&chip->lock); |
146 | for_each_set_bit(bit, mask, gc->ngpio) | 143 | for_each_set_bit(bit, mask, gc->ngpio) |
147 | __gpio_mockup_set(gc, bit, test_bit(bit, bits)); | 144 | __gpio_mockup_set(chip, bit, test_bit(bit, bits)); |
148 | mutex_unlock(&chip->lock); | 145 | mutex_unlock(&chip->lock); |
149 | } | 146 | } |
150 | 147 | ||
@@ -155,7 +152,7 @@ static int gpio_mockup_dirout(struct gpio_chip *gc, | |||
155 | 152 | ||
156 | mutex_lock(&chip->lock); | 153 | mutex_lock(&chip->lock); |
157 | chip->lines[offset].dir = GPIO_MOCKUP_DIR_OUT; | 154 | chip->lines[offset].dir = GPIO_MOCKUP_DIR_OUT; |
158 | __gpio_mockup_set(gc, offset, value); | 155 | __gpio_mockup_set(chip, offset, value); |
159 | mutex_unlock(&chip->lock); | 156 | mutex_unlock(&chip->lock); |
160 | 157 | ||
161 | return 0; | 158 | return 0; |