Message ID | 20170423011056.7057-1-sjg@chromium.org |
---|---|
State | Accepted |
Commit | 05cbeb7c3612da8d4bafa82be05092450a500052 |
Delegated to: | Simon Glass |
Headers | show |
On Sun, Apr 23, 2017 at 4:10 AM, Simon Glass <sjg@chromium.org> wrote: > We should not call out to board code from drivers. With driver model, > mmc_power_init() already has code to use a named regulator, but the > legacy code path remains. Update the code to make this clear. > I don't like this patch as it described. (I will answer to your mail in the other thread later) Let me check more, possible it's okay to have. > Signed-off-by: Simon Glass <sjg@chromium.org> > --- > > drivers/mmc/mmc.c | 15 +++++++++++---- > 1 file changed, 11 insertions(+), 4 deletions(-) > > diff --git a/drivers/mmc/mmc.c b/drivers/mmc/mmc.c > index 72fc17716e..3cdf6a4f3b 100644 > --- a/drivers/mmc/mmc.c > +++ b/drivers/mmc/mmc.c > @@ -1608,17 +1608,17 @@ static int mmc_send_if_cond(struct mmc *mmc) > return 0; > } > > +#ifndef CONFIG_DM_MMC > /* board-specific MMC power initializations. */ > __weak void board_mmc_power_init(void) > { > } > +#endif > > static int mmc_power_init(struct mmc *mmc) > { > - board_mmc_power_init(); > - > -#if defined(CONFIG_DM_MMC) && defined(CONFIG_DM_REGULATOR) && \ > - !defined(CONFIG_SPL_BUILD) > +#if defined(CONFIG_DM_MMC) > +#if defined(CONFIG_DM_REGULATOR) && !defined(CONFIG_SPL_BUILD) > struct udevice *vmmc_supply; > int ret; > > @@ -1635,6 +1635,13 @@ static int mmc_power_init(struct mmc *mmc) > return ret; > } > #endif > +#else /* !CONFIG_DM_MMC */ > + /* > + * Driver model should use a regulator, as above, rather than calling > + * out to board code. > + */ > + board_mmc_power_init(); > +#endif > return 0; > } > > -- > 2.12.2.816.g2cccc81164-goog > > _______________________________________________ > U-Boot mailing list > U-Boot@lists.denx.de > https://lists.denx.de/listinfo/u-boot
On Sun, Apr 23, 2017 at 4:10 AM, Simon Glass <sjg@chromium.org> wrote: > We should not call out to board code from drivers. With driver model, > mmc_power_init() already has code to use a named regulator, but the > legacy code path remains. Update the code to make this clear. > I don't like this patch as it described. (I will answer to your mail in the other thread later) Let me check more, possible it's okay to have. > Signed-off-by: Simon Glass <sjg@chromium.org> > --- > > drivers/mmc/mmc.c | 15 +++++++++++---- > 1 file changed, 11 insertions(+), 4 deletions(-) > Applied to u-boot-dm
diff --git a/drivers/mmc/mmc.c b/drivers/mmc/mmc.c index 72fc17716e..3cdf6a4f3b 100644 --- a/drivers/mmc/mmc.c +++ b/drivers/mmc/mmc.c @@ -1608,17 +1608,17 @@ static int mmc_send_if_cond(struct mmc *mmc) return 0; } +#ifndef CONFIG_DM_MMC /* board-specific MMC power initializations. */ __weak void board_mmc_power_init(void) { } +#endif static int mmc_power_init(struct mmc *mmc) { - board_mmc_power_init(); - -#if defined(CONFIG_DM_MMC) && defined(CONFIG_DM_REGULATOR) && \ - !defined(CONFIG_SPL_BUILD) +#if defined(CONFIG_DM_MMC) +#if defined(CONFIG_DM_REGULATOR) && !defined(CONFIG_SPL_BUILD) struct udevice *vmmc_supply; int ret; @@ -1635,6 +1635,13 @@ static int mmc_power_init(struct mmc *mmc) return ret; } #endif +#else /* !CONFIG_DM_MMC */ + /* + * Driver model should use a regulator, as above, rather than calling + * out to board code. + */ + board_mmc_power_init(); +#endif return 0; }
We should not call out to board code from drivers. With driver model, mmc_power_init() already has code to use a named regulator, but the legacy code path remains. Update the code to make this clear. Signed-off-by: Simon Glass <sjg@chromium.org> --- drivers/mmc/mmc.c | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-)