Message ID | 20170915191054.28337-1-marek.vasut+renesas@gmail.com |
---|---|
State | Accepted |
Commit | 9f13021f81009449c869ea441620cdc77146dee8 |
Delegated to: | Jaehoon Chung |
Headers | show |
Series | [U-Boot] mmc: uniphier-sd: Add vqmmc regulator support | expand |
On 09/15/2017 09:10 PM, Marek Vasut wrote: > Add initial support for setting the vqmmc regulator. Since we do not > support 1V8 modes, set the regulator to 3V3 and enable it. > > Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com> > Cc: Masahiro Yamada <yamada.masahiro@socionext.com> > Cc: Jaehoon Chung <jh80.chung@samsung.com> Anything ?! I don't see this in the PR ... > --- > drivers/mmc/uniphier-sd.c | 13 +++++++++++++ > 1 file changed, 13 insertions(+) > > diff --git a/drivers/mmc/uniphier-sd.c b/drivers/mmc/uniphier-sd.c > index 3c52161067..0d1203cb76 100644 > --- a/drivers/mmc/uniphier-sd.c > +++ b/drivers/mmc/uniphier-sd.c > @@ -14,6 +14,7 @@ > #include <linux/dma-direction.h> > #include <linux/io.h> > #include <linux/sizes.h> > +#include <power/regulator.h> > #include <asm/unaligned.h> > > DECLARE_GLOBAL_DATA_PTR; > @@ -756,6 +757,9 @@ static int uniphier_sd_probe(struct udevice *dev) > fdt_addr_t base; > struct clk clk; > int ret; > +#ifdef CONFIG_DM_REGULATOR > + struct udevice *vqmmc_dev; > +#endif > > base = devfdt_get_addr(dev); > if (base == FDT_ADDR_T_NONE) > @@ -765,6 +769,15 @@ static int uniphier_sd_probe(struct udevice *dev) > if (!priv->regbase) > return -ENOMEM; > > +#ifdef CONFIG_DM_REGULATOR > + ret = device_get_supply_regulator(dev, "vqmmc-supply", &vqmmc_dev); > + if (!ret) { > + /* Set the regulator to 3.3V until we support 1.8V modes */ > + regulator_set_value(vqmmc_dev, 3300000); > + regulator_set_enable(vqmmc_dev, true); > + } > +#endif > + > ret = clk_get_by_index(dev, 0, &clk); > if (ret < 0) { > dev_err(dev, "failed to get host clock\n"); >
Hi Marek, On 09/26/2017 01:47 AM, Marek Vasut wrote: > On 09/15/2017 09:10 PM, Marek Vasut wrote: >> Add initial support for setting the vqmmc regulator. Since we do not >> support 1V8 modes, set the regulator to 3V3 and enable it. >> >> Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com> >> Cc: Masahiro Yamada <yamada.masahiro@socionext.com> >> Cc: Jaehoon Chung <jh80.chung@samsung.com> > > Anything ?! I don't see this in the PR ... Sorry...I missed this patch..First, i have checked on patchwork. Will pick this patch into u-boot-mmc. Best Regards, Jaehoon Chung > >> --- >> drivers/mmc/uniphier-sd.c | 13 +++++++++++++ >> 1 file changed, 13 insertions(+) >> >> diff --git a/drivers/mmc/uniphier-sd.c b/drivers/mmc/uniphier-sd.c >> index 3c52161067..0d1203cb76 100644 >> --- a/drivers/mmc/uniphier-sd.c >> +++ b/drivers/mmc/uniphier-sd.c >> @@ -14,6 +14,7 @@ >> #include <linux/dma-direction.h> >> #include <linux/io.h> >> #include <linux/sizes.h> >> +#include <power/regulator.h> >> #include <asm/unaligned.h> >> >> DECLARE_GLOBAL_DATA_PTR; >> @@ -756,6 +757,9 @@ static int uniphier_sd_probe(struct udevice *dev) >> fdt_addr_t base; >> struct clk clk; >> int ret; >> +#ifdef CONFIG_DM_REGULATOR >> + struct udevice *vqmmc_dev; >> +#endif >> >> base = devfdt_get_addr(dev); >> if (base == FDT_ADDR_T_NONE) >> @@ -765,6 +769,15 @@ static int uniphier_sd_probe(struct udevice *dev) >> if (!priv->regbase) >> return -ENOMEM; >> >> +#ifdef CONFIG_DM_REGULATOR >> + ret = device_get_supply_regulator(dev, "vqmmc-supply", &vqmmc_dev); >> + if (!ret) { >> + /* Set the regulator to 3.3V until we support 1.8V modes */ >> + regulator_set_value(vqmmc_dev, 3300000); >> + regulator_set_enable(vqmmc_dev, true); >> + } >> +#endif >> + >> ret = clk_get_by_index(dev, 0, &clk); >> if (ret < 0) { >> dev_err(dev, "failed to get host clock\n"); >> > >
2017-09-26 16:41 GMT+09:00 Jaehoon Chung <jh80.chung@samsung.com>: > Hi Marek, > > On 09/26/2017 01:47 AM, Marek Vasut wrote: >> On 09/15/2017 09:10 PM, Marek Vasut wrote: >>> Add initial support for setting the vqmmc regulator. Since we do not >>> support 1V8 modes, set the regulator to 3V3 and enable it. >>> >>> Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com> >>> Cc: Masahiro Yamada <yamada.masahiro@socionext.com> >>> Cc: Jaehoon Chung <jh80.chung@samsung.com> >> >> Anything ?! I don't see this in the PR ... > > Sorry...I missed this patch..First, i have checked on patchwork. > Will pick this patch into u-boot-mmc. > > Best Regards, > Jaehoon Chung > UniPhier SoCs have different mechanism for 3.3/1.8 switching, but it is not a problem for me because I do not have a plan for enabling CONFIG_DM_REGULATOR. Acked-by: Masahiro Yamada <yamada.masahiro@socionext.com>
On 09/27/2017 05:19 PM, Masahiro Yamada wrote: > 2017-09-26 16:41 GMT+09:00 Jaehoon Chung <jh80.chung@samsung.com>: >> Hi Marek, >> >> On 09/26/2017 01:47 AM, Marek Vasut wrote: >>> On 09/15/2017 09:10 PM, Marek Vasut wrote: >>>> Add initial support for setting the vqmmc regulator. Since we do not >>>> support 1V8 modes, set the regulator to 3V3 and enable it. >>>> >>>> Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com> >>>> Cc: Masahiro Yamada <yamada.masahiro@socionext.com> >>>> Cc: Jaehoon Chung <jh80.chung@samsung.com> >>> >>> Anything ?! I don't see this in the PR ... >> >> Sorry...I missed this patch..First, i have checked on patchwork. >> Will pick this patch into u-boot-mmc. >> >> Best Regards, >> Jaehoon Chung >> > > > UniPhier SoCs have different mechanism for 3.3/1.8 switching, > but it is not a problem for me because I do not have a plan > for enabling CONFIG_DM_REGULATOR. > > Acked-by: Masahiro Yamada <yamada.masahiro@socionext.com> Cool, thanks! Is there a documentation for the uniphier mechanism somewhere ?
2017-09-28 0:50 GMT+09:00 Marek Vasut <marek.vasut@gmail.com>: > On 09/27/2017 05:19 PM, Masahiro Yamada wrote: >> 2017-09-26 16:41 GMT+09:00 Jaehoon Chung <jh80.chung@samsung.com>: >>> Hi Marek, >>> >>> On 09/26/2017 01:47 AM, Marek Vasut wrote: >>>> On 09/15/2017 09:10 PM, Marek Vasut wrote: >>>>> Add initial support for setting the vqmmc regulator. Since we do not >>>>> support 1V8 modes, set the regulator to 3V3 and enable it. >>>>> >>>>> Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com> >>>>> Cc: Masahiro Yamada <yamada.masahiro@socionext.com> >>>>> Cc: Jaehoon Chung <jh80.chung@samsung.com> >>>> >>>> Anything ?! I don't see this in the PR ... >>> >>> Sorry...I missed this patch..First, i have checked on patchwork. >>> Will pick this patch into u-boot-mmc. >>> >>> Best Regards, >>> Jaehoon Chung >>> >> >> >> UniPhier SoCs have different mechanism for 3.3/1.8 switching, >> but it is not a problem for me because I do not have a plan >> for enabling CONFIG_DM_REGULATOR. >> >> Acked-by: Masahiro Yamada <yamada.masahiro@socionext.com> > > Cool, thanks! > > Is there a documentation for the uniphier mechanism somewhere ? > No document available. Only crappy private documents. They say SoC spec books are CONFIDENTIAL!! Sigh.
On 09/27/2017 06:13 PM, Masahiro Yamada wrote: > 2017-09-28 0:50 GMT+09:00 Marek Vasut <marek.vasut@gmail.com>: >> On 09/27/2017 05:19 PM, Masahiro Yamada wrote: >>> 2017-09-26 16:41 GMT+09:00 Jaehoon Chung <jh80.chung@samsung.com>: >>>> Hi Marek, >>>> >>>> On 09/26/2017 01:47 AM, Marek Vasut wrote: >>>>> On 09/15/2017 09:10 PM, Marek Vasut wrote: >>>>>> Add initial support for setting the vqmmc regulator. Since we do not >>>>>> support 1V8 modes, set the regulator to 3V3 and enable it. >>>>>> >>>>>> Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com> >>>>>> Cc: Masahiro Yamada <yamada.masahiro@socionext.com> >>>>>> Cc: Jaehoon Chung <jh80.chung@samsung.com> >>>>> >>>>> Anything ?! I don't see this in the PR ... >>>> >>>> Sorry...I missed this patch..First, i have checked on patchwork. >>>> Will pick this patch into u-boot-mmc. >>>> >>>> Best Regards, >>>> Jaehoon Chung >>>> >>> >>> >>> UniPhier SoCs have different mechanism for 3.3/1.8 switching, >>> but it is not a problem for me because I do not have a plan >>> for enabling CONFIG_DM_REGULATOR. >>> >>> Acked-by: Masahiro Yamada <yamada.masahiro@socionext.com> >> >> Cool, thanks! >> >> Is there a documentation for the uniphier mechanism somewhere ? >> > > No document available. I hope that new 96borad will have documentation available, *ahem* :-) > Only crappy private documents. > > They say SoC spec books are CONFIDENTIAL!! > Sigh. OK, I'll keep in mind there's a uniphier-specific way to toggle the 1V8 when adding HS200 support, so you can fill that in when you have time. Thanks!
On 09/26/2017 01:47 AM, Marek Vasut wrote: > On 09/15/2017 09:10 PM, Marek Vasut wrote: >> Add initial support for setting the vqmmc regulator. Since we do not >> support 1V8 modes, set the regulator to 3V3 and enable it. >> >> Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com> >> Cc: Masahiro Yamada <yamada.masahiro@socionext.com> >> Cc: Jaehoon Chung <jh80.chung@samsung.com> > > Anything ?! I don't see this in the PR ... Applied to u-boot-mmc. Thanks! Best Regards, Jaehoon Chung > >> --- >> drivers/mmc/uniphier-sd.c | 13 +++++++++++++ >> 1 file changed, 13 insertions(+) >> >> diff --git a/drivers/mmc/uniphier-sd.c b/drivers/mmc/uniphier-sd.c >> index 3c52161067..0d1203cb76 100644 >> --- a/drivers/mmc/uniphier-sd.c >> +++ b/drivers/mmc/uniphier-sd.c >> @@ -14,6 +14,7 @@ >> #include <linux/dma-direction.h> >> #include <linux/io.h> >> #include <linux/sizes.h> >> +#include <power/regulator.h> >> #include <asm/unaligned.h> >> >> DECLARE_GLOBAL_DATA_PTR; >> @@ -756,6 +757,9 @@ static int uniphier_sd_probe(struct udevice *dev) >> fdt_addr_t base; >> struct clk clk; >> int ret; >> +#ifdef CONFIG_DM_REGULATOR >> + struct udevice *vqmmc_dev; >> +#endif >> >> base = devfdt_get_addr(dev); >> if (base == FDT_ADDR_T_NONE) >> @@ -765,6 +769,15 @@ static int uniphier_sd_probe(struct udevice *dev) >> if (!priv->regbase) >> return -ENOMEM; >> >> +#ifdef CONFIG_DM_REGULATOR >> + ret = device_get_supply_regulator(dev, "vqmmc-supply", &vqmmc_dev); >> + if (!ret) { >> + /* Set the regulator to 3.3V until we support 1.8V modes */ >> + regulator_set_value(vqmmc_dev, 3300000); >> + regulator_set_enable(vqmmc_dev, true); >> + } >> +#endif >> + >> ret = clk_get_by_index(dev, 0, &clk); >> if (ret < 0) { >> dev_err(dev, "failed to get host clock\n"); >> > >
diff --git a/drivers/mmc/uniphier-sd.c b/drivers/mmc/uniphier-sd.c index 3c52161067..0d1203cb76 100644 --- a/drivers/mmc/uniphier-sd.c +++ b/drivers/mmc/uniphier-sd.c @@ -14,6 +14,7 @@ #include <linux/dma-direction.h> #include <linux/io.h> #include <linux/sizes.h> +#include <power/regulator.h> #include <asm/unaligned.h> DECLARE_GLOBAL_DATA_PTR; @@ -756,6 +757,9 @@ static int uniphier_sd_probe(struct udevice *dev) fdt_addr_t base; struct clk clk; int ret; +#ifdef CONFIG_DM_REGULATOR + struct udevice *vqmmc_dev; +#endif base = devfdt_get_addr(dev); if (base == FDT_ADDR_T_NONE) @@ -765,6 +769,15 @@ static int uniphier_sd_probe(struct udevice *dev) if (!priv->regbase) return -ENOMEM; +#ifdef CONFIG_DM_REGULATOR + ret = device_get_supply_regulator(dev, "vqmmc-supply", &vqmmc_dev); + if (!ret) { + /* Set the regulator to 3.3V until we support 1.8V modes */ + regulator_set_value(vqmmc_dev, 3300000); + regulator_set_enable(vqmmc_dev, true); + } +#endif + ret = clk_get_by_index(dev, 0, &clk); if (ret < 0) { dev_err(dev, "failed to get host clock\n");
Add initial support for setting the vqmmc regulator. Since we do not support 1V8 modes, set the regulator to 3V3 and enable it. Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com> Cc: Masahiro Yamada <yamada.masahiro@socionext.com> Cc: Jaehoon Chung <jh80.chung@samsung.com> --- drivers/mmc/uniphier-sd.c | 13 +++++++++++++ 1 file changed, 13 insertions(+)