diff mbox series

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

Message ID cf62e297a18518d54dd887a0bc531b18a50da5c5.1605823502.git.cristian.ciocaltea@gmail.com
State Superseded
Headers show
Series None | expand

Commit Message

Cristian Ciocaltea Nov. 19, 2020, 11:56 p.m. UTC
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(+)

Comments

Manivannan Sadhasivam Nov. 28, 2020, 7:38 a.m. UTC | #1
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?

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

>
Cristian Ciocaltea Nov. 29, 2020, 6:35 p.m. UTC | #2
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

> >
Manivannan Sadhasivam Dec. 5, 2020, 6:01 a.m. UTC | #3
On Sun, Nov 29, 2020 at 08:35:32PM +0200, Cristian Ciocaltea wrote:
> 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;

>   };


okay, looks fine to me.

Thanks,
Mani

> 

> 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

> > >
diff mbox series

Patch

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 {
+		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 {