On Wed, Feb 12, 2020 at 7:58 PM Florian Fainelli <f.fainelli@xxxxxxxxx> wrote: > On 2/12/2020 6:59 PM, Jaedon Shin wrote: > > ARM-based Broadcom STB SoCs have GPIO-based voltage regulator for PCIe > > turning off/on power supplies. > > > > Signed-off-by: Jaedon Shin <jaedon.shin@xxxxxxxxx> > > --- > > drivers/gpio/gpio-brcmstb.c | 13 ++++- > > drivers/pci/controller/pcie-brcmstb.c | 76 +++++++++++++++++++++++++++ > > 2 files changed, 88 insertions(+), 1 deletion(-) > > > > diff --git a/drivers/gpio/gpio-brcmstb.c b/drivers/gpio/gpio-brcmstb.c > > index 05e3f99ae59c..0cee5fcd2782 100644 > > --- a/drivers/gpio/gpio-brcmstb.c > > +++ b/drivers/gpio/gpio-brcmstb.c > > @@ -777,7 +777,18 @@ static struct platform_driver brcmstb_gpio_driver = { > > .remove = brcmstb_gpio_remove, > > .shutdown = brcmstb_gpio_shutdown, > > }; > > -module_platform_driver(brcmstb_gpio_driver); > > + > > +static int __init brcmstb_gpio_init(void) > > +{ > > + return platform_driver_register(&brcmstb_gpio_driver); > > +} > > +subsys_initcall(brcmstb_gpio_init); > > + > > +static void __exit brcmstb_gpio_exit(void) > > +{ > > + platform_driver_unregister(&brcmstb_gpio_driver); > > +} > > +module_exit(brcmstb_gpio_exit); > > We do this in the downstream tree, but there is no reason, we should > just deal with EPROBE_DEFER being returned from the regulator subsystem > until the GPIO provide is available. > Agreed, also see this thread from January 2016: https://lore.kernel.org/linux-mips/568EAA99.1020603@xxxxxxxxx/ Best regards, Gregory