Re: [PATCH v2 16/18] arm: dts: owl-s500-roseapplepi: Add uSD support

Cristian Ciocaltea
2020-11-29T18:37:00Z

On Sat, Nov 28, 2020 at 01:08:51PM +0530, Manivannan Sadhasivam wrote:
> On Fri, Nov 20, 2020 at 01:56:10AM +0200, Cristian Ciocaltea wrote:
> > Add uSD support for RoseapplePi SBC using a fixed regulator as a
> > temporary solution until PMIC support becomes available.
> >
> > Signed-off-by: Cristian Ciocaltea <cristian.ciocaltea@gmail.com>
> > ---
> > arch/arm/boot/dts/owl-s500-roseapplepi.dts | 50 ++++++++++++++++++++++
> > 1 file changed, 50 insertions(+)
> >
> > diff --git a/arch/arm/boot/dts/owl-s500-roseapplepi.dts b/arch/arm/boot/dts/owl-s500-roseapplepi.dts
> > index 800edf5d2d12..fe9ae3619422 100644
> > --- a/arch/arm/boot/dts/owl-s500-roseapplepi.dts
> > +++ b/arch/arm/boot/dts/owl-s500-roseapplepi.dts
> > @@ -14,6 +14,7 @@ / {
> > model = "Roseapple Pi";
> >
> > aliases {
> > + mmc0 = &mmc0;
> > serial2 = &uart2;
> > };
> >
> > @@ -25,6 +26,55 @@ memory@0 {
> > device_type = "memory";
> > reg = <0x0 0x80000000>; /* 2GB */
> > };
> > +
> > + /* Fixed regulator used in the absence of PMIC */
> > + sd_vcc: sd-vcc {
>
> Is this the exact name in the schematics?

Yes, it is referred as "SD_VCC". Once the support for the ATC260x PMIC
will be available, the following item will be present in the regulators
list:

sd_vcc: switchldo1 {
regulator-name = "SD_VCC";
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3300000>;
regulator-always-on;
regulator-boot-on;
};

Thanks,
Cristi

> Thanks,
> Mani
>
> > + compatible = "regulator-fixed";
> > + regulator-name = "fixed-3.1V";
> > + regulator-min-microvolt = <3100000>;
> > + regulator-max-microvolt = <3100000>;
> > + regulator-always-on;
> > + };
> > +};
> > +
> > +&pinctrl {
> > + mmc0_pins: mmc0-pins {
> > + pinmux {
> > + groups = "sd0_d0_mfp", "sd0_d1_mfp", "sd0_d2_d3_mfp",
> > + "sd0_cmd_mfp", "sd0_clk_mfp";
> > + function = "sd0";
> > + };
> > +
> > + drv-pinconf {
> > + groups = "sd0_d0_d3_drv", "sd0_cmd_drv", "sd0_clk_drv";
> > + drive-strength = <8>;
> > + };
> > +
> > + bias0-pinconf {
> > + pins = "sd0_d0", "sd0_d1", "sd0_d2",
> > + "sd0_d3", "sd0_cmd";
> > + bias-pull-up;
> > + };
> > +
> > + bias1-pinconf {
> > + pins = "sd0_clk";
> > + bias-pull-down;
> > + };
> > + };
> > +};
> > +
> > +/* uSD */
> > +&mmc0 {
> > + status = "okay";
> > + pinctrl-names = "default";
> > + pinctrl-0 = <&mmc0_pins>;
> > + no-sdio;
> > + no-mmc;
> > + no-1-8-v;
> > + cd-gpios = <&pinctrl 117 GPIO_ACTIVE_LOW>;
> > + bus-width = <4>;
> > + vmmc-supply = <&sd_vcc>;
> > + vqmmc-supply = <&sd_vcc>;
> > };
> >
> > &twd_timer {
> > --
> > 2.29.2
> >