Pin_to_controller returns struct at91_gpio_chip, whereas at91_mux_*
functions expect void __iomem * pointing to controller register
window. Fix the code to do appropriate conversion between the two.

Signed-off-by: Andrey Smirnov <andrew.smir...@gmail.com>
---
 drivers/pinctrl/pinctrl-at91.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/pinctrl/pinctrl-at91.c b/drivers/pinctrl/pinctrl-at91.c
index ebbc6f6..e24c9be 100644
--- a/drivers/pinctrl/pinctrl-at91.c
+++ b/drivers/pinctrl/pinctrl-at91.c
@@ -414,8 +414,10 @@ static int at91_pinctrl_set_conf(struct at91_pinctrl 
*info, unsigned int pin_num
 {
        unsigned int mask;
        void __iomem *pio;
+       struct at91_gpio_chip *at91_gpio;
 
-       pio = pin_to_controller(pin_num);
+       at91_gpio = pin_to_controller(pin_num);
+       pio  = at91_gpio->regbase;
        mask = pin_to_mask(pin_num);
 
        if (conf & PULL_UP && conf & PULL_DOWN)
-- 
2.9.3


_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

Reply via email to