Message ID | 20181113135051.15308-3-brgl@bgdev.pl (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | ARM: davinci: fix ethernet support on da850-evm | expand |
On Tue, Nov 13, 2018 at 2:51 PM Bartosz Golaszewski <brgl@bgdev.pl> wrote: > From: Bartosz Golaszewski <bgolaszewski@baylibre.com> > > Commit 587f7a694f01 ("gpio: davinci: Use dev name for label and > automatic base selection") broke the network support in legacy boot > mode for da850-evm since we can no longer request the MDIO clock GPIO. > > Other boards may be broken too, which I haven't tested. > > The problem is in the fact that most board files still use the legacy > GPIO API where lines are requested by numbers rather than descriptors. > > While this should be fixed eventually, in order to unbreak the board > for now - provide a way to manually specify the GPIO base in platform > data. > > Fixes: 587f7a694f01 ("gpio: davinci: Use dev name for label and automatic base selection") > Cc: stable@vger.kernel.org > Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com> Acked-by: Linus Walleij <linus.walleij@linaro.org> I guess this will be merged throug ARM SoC? Yours, Linus Walleij
pon., 19 lis 2018 o 14:19 Linus Walleij <linus.walleij@linaro.org> napisaĆ(a): > > On Tue, Nov 13, 2018 at 2:51 PM Bartosz Golaszewski <brgl@bgdev.pl> wrote: > > > From: Bartosz Golaszewski <bgolaszewski@baylibre.com> > > > > Commit 587f7a694f01 ("gpio: davinci: Use dev name for label and > > automatic base selection") broke the network support in legacy boot > > mode for da850-evm since we can no longer request the MDIO clock GPIO. > > > > Other boards may be broken too, which I haven't tested. > > > > The problem is in the fact that most board files still use the legacy > > GPIO API where lines are requested by numbers rather than descriptors. > > > > While this should be fixed eventually, in order to unbreak the board > > for now - provide a way to manually specify the GPIO base in platform > > data. > > > > Fixes: 587f7a694f01 ("gpio: davinci: Use dev name for label and automatic base selection") > > Cc: stable@vger.kernel.org > > Signed-off-by: Bartosz Golaszewski <bgolaszewski@baylibre.com> > > Acked-by: Linus Walleij <linus.walleij@linaro.org> > > I guess this will be merged throug ARM SoC? > Yes, if Sekhar's fine with that. Bart
diff --git a/drivers/gpio/gpio-davinci.c b/drivers/gpio/gpio-davinci.c index 5c1564fcc24e..bdb29e51b417 100644 --- a/drivers/gpio/gpio-davinci.c +++ b/drivers/gpio/gpio-davinci.c @@ -258,7 +258,7 @@ static int davinci_gpio_probe(struct platform_device *pdev) chips->chip.set = davinci_gpio_set; chips->chip.ngpio = ngpio; - chips->chip.base = -1; + chips->chip.base = pdata->no_auto_base ? pdata->base : -1; #ifdef CONFIG_OF_GPIO chips->chip.of_gpio_n_cells = 2; diff --git a/include/linux/platform_data/gpio-davinci.h b/include/linux/platform_data/gpio-davinci.h index f92a47e18034..a93841bfb9f7 100644 --- a/include/linux/platform_data/gpio-davinci.h +++ b/include/linux/platform_data/gpio-davinci.h @@ -17,6 +17,8 @@ #define __DAVINCI_GPIO_PLATFORM_H struct davinci_gpio_platform_data { + bool no_auto_base; + u32 base; u32 ngpio; u32 gpio_unbanked; };