On 19-01-29 13:29:04, Peng Fan wrote: > Hi Abel, > > > -----Original Message----- > > From: Abel Vesa > > Sent: 2019年1月29日 19:31 > > To: Tom Rini <tr...@konsulko.com>; Fabio Estevam > > <fabio.este...@nxp.com>; u-boot@lists.denx.de; dl-uboot-imx > > <uboot-...@nxp.com>; Peng Fan <peng....@nxp.com> > > Cc: Nitin Garg <nitin.g...@nxp.com>; Abel Vesa <abel.v...@nxp.com> > > Subject: [PATCH v2 05/22] mmc: fsl_esdhc: Fix DM_REGULATOR ifdefs for SPL > > builds > > > > Since the fsl_esdhc will also be used by SPL, make the preprocessor switches > > more generic to allow any kind of build. > > > > Signed-off-by: Abel Vesa <abel.v...@nxp.com> > > --- > > drivers/mmc/fsl_esdhc.c | 8 ++++---- > > 1 file changed, 4 insertions(+), 4 deletions(-) > > > > diff --git a/drivers/mmc/fsl_esdhc.c b/drivers/mmc/fsl_esdhc.c index > > b8171ba..47f2a8f 100644 > > --- a/drivers/mmc/fsl_esdhc.c > > +++ b/drivers/mmc/fsl_esdhc.c > > @@ -804,7 +804,7 @@ static int esdhc_set_voltage(struct mmc *mmc) > > case MMC_SIGNAL_VOLTAGE_330: > > if (priv->vs18_enable) > > return -EIO; > > -#ifdef CONFIG_DM_REGULATOR > > +#if CONFIG_IS_ENABLED(DM_REGULATOR) > > If you need SPL DM REGULATOR, this is not enough, you might also need > SPL_DM_REGULATOR. >
According to the definition: /* * CONFIG_IS_ENABLED(FOO) evaluates to * 1 if CONFIG_SPL_BUILD is undefined and CONFIG_FOO is set to 'y' or 'm', * 1 if CONFIG_SPL_BUILD is defined and CONFIG_SPL_FOO is set to 'y' or 'm', * 0 otherwise. */ #define CONFIG_IS_ENABLED(option) \ (config_enabled(CONFIG_VAL(option)) || \ config_enabled(CONFIG_VAL(option##_MODULE)) if the building for SPL and SPL_DM_REGULATOR is enabled, then build in whatever is inside. What exactly am I missing here ? > Regards, > Peng. > > > if (!IS_ERR_OR_NULL(priv->vqmmc_dev)) { > > ret = regulator_set_value(priv->vqmmc_dev, 3300000); > > if (ret) { > > @@ -823,7 +823,7 @@ static int esdhc_set_voltage(struct mmc *mmc) > > > > return -EAGAIN; > > case MMC_SIGNAL_VOLTAGE_180: > > -#ifdef CONFIG_DM_REGULATOR > > +#if CONFIG_IS_ENABLED(DM_REGULATOR) > > if (!IS_ERR_OR_NULL(priv->vqmmc_dev)) { > > ret = regulator_set_value(priv->vqmmc_dev, 1800000); > > if (ret) { > > @@ -1442,7 +1442,7 @@ static int fsl_esdhc_probe(struct udevice *dev) > > int node = dev_of_offset(dev); > > struct esdhc_soc_data *data = > > (struct esdhc_soc_data *)dev_get_driver_data(dev); -#ifdef > > CONFIG_DM_REGULATOR > > +#if CONFIG_IS_ENABLED(DM_REGULATOR) > > struct udevice *vqmmc_dev; > > #endif > > fdt_addr_t addr; > > @@ -1500,7 +1500,7 @@ static int fsl_esdhc_probe(struct udevice *dev) > > > > priv->vs18_enable = 0; > > > > -#ifdef CONFIG_DM_REGULATOR > > +#if CONFIG_IS_ENABLED(DM_REGULATOR) > > /* > > * If emmc I/O has a fixed voltage at 1.8V, this must be provided, > > * otherwise, emmc will work abnormally. > > -- > > 2.7.4 > _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot