2024-02-06 12:07:38

by Mihai Sain

[permalink] [raw]
Subject: [PATCH v3 0/8] Add power-supply properties for sdmmc nodes on Microchip boards

This patch series adds power-supply properties for sdmmc nodes on Microchip boards.

Changes in v3:
--------------

* Update the commit description for each board in order to wrap the line at max 75 columns.

Changes in v2:
--------------

* Update the commit description for each board.
* The goal is to keep the vqmmc at 3V3 in order to use the sd high-speed mode.

Mihai Sain (8):
ARM: dts: microchip: sam9x60_curiosity: Add power-supply properties for sdmmc nodes
ARM: dts: microchip: sam9x60ek: Add power-supply properties for sdmmc nodes
ARM: dts: microchip: sama5d27_som1_ek: Add power-supply properties for sdmmc nodes
ARM: dts: microchip: sama5d27_wlsom1: Add power-supply property for sdmmc1 node
ARM: dts: microchip: sama5d27_wlsom1_ek: Add power-supply property for sdmmc0 node
ARM: dts: microchip: sama5d29_curiosity: Add power-supply properties for sdmmc nodes
ARM: dts: microchip: sama5d2_icp: Add power-supply property for sdmmc0 node
ARM: dts: microchip: sama5d2_xplained: Add power-supply property for sdmmc0 node

--
2.43.0



2024-02-06 12:07:50

by Mihai Sain

[permalink] [raw]
Subject: [PATCH v3 1/8] ARM: dts: microchip: sam9x60_curiosity: Add power-supply properties for sdmmc nodes

The sdmmc0 and sdmmc1 controllers are powered from 3.3V regulator.
Add vmmc-supply and vqmmc-supply properties to sdmmc nodes.
The sdmmc controller from SAM9X60 MPU doesn't support the
IO voltage signaling/switching required by the UHS sd-card.
In order to use the sd high-speed mode, keep vqmmc at 3V3.

Signed-off-by: Mihai Sain <[email protected]>
---
arch/arm/boot/dts/microchip/at91-sam9x60_curiosity.dts | 4 ++++
1 file changed, 4 insertions(+)

diff --git a/arch/arm/boot/dts/microchip/at91-sam9x60_curiosity.dts b/arch/arm/boot/dts/microchip/at91-sam9x60_curiosity.dts
index c6fbdd29019f..457c54dde0b7 100644
--- a/arch/arm/boot/dts/microchip/at91-sam9x60_curiosity.dts
+++ b/arch/arm/boot/dts/microchip/at91-sam9x60_curiosity.dts
@@ -452,6 +452,8 @@ &sdmmc0 {
pinctrl-0 = <&pinctrl_sdmmc0_default &pinctrl_sdmmc0_cd>;
cd-gpios = <&pioA 25 GPIO_ACTIVE_LOW>;
disable-wp;
+ vmmc-supply = <&vdd1_3v3>;
+ vqmmc-supply = <&vdd1_3v3>;
status = "okay";
};

@@ -460,6 +462,8 @@ &sdmmc1 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_sdmmc1_default>;
disable-wp;
+ vmmc-supply = <&vdd1_3v3>;
+ vqmmc-supply = <&vdd1_3v3>;
status = "okay";
};

--
2.43.0


2024-02-06 12:08:35

by Mihai Sain

[permalink] [raw]
Subject: [PATCH v3 4/8] ARM: dts: microchip: sama5d27_wlsom1: Add power-supply property for sdmmc1 node

The sdmmc1 controller is powered from 3.3V regulator.
Add vmmc-supply and vqmmc-supply properties to sdmmc nodes.
The sdmmc controller from SAMA5D2 MPU has support for
IO voltage signaling/switching required by the UHS sd-card.
In order to avoid the issues from the tuning procedure required by
the UHS cards, keep the vqmmc at 3V3 to use the sd high-speed mode.

Signed-off-by: Mihai Sain <[email protected]>
---
arch/arm/boot/dts/microchip/at91-sama5d27_wlsom1.dtsi | 2 ++
1 file changed, 2 insertions(+)

diff --git a/arch/arm/boot/dts/microchip/at91-sama5d27_wlsom1.dtsi b/arch/arm/boot/dts/microchip/at91-sama5d27_wlsom1.dtsi
index 4617805c7748..96819ea24cbd 100644
--- a/arch/arm/boot/dts/microchip/at91-sama5d27_wlsom1.dtsi
+++ b/arch/arm/boot/dts/microchip/at91-sama5d27_wlsom1.dtsi
@@ -368,6 +368,8 @@ &sdmmc1 {
no-1-8-v;
non-removable;
bus-width = <4>;
+ vmmc-supply = <&vdd_3v3>;
+ vqmmc-supply = <&vdd_3v3>;
status = "okay";

wilc: wifi@0 {
--
2.43.0


2024-02-06 12:08:59

by Mihai Sain

[permalink] [raw]
Subject: [PATCH v3 6/8] ARM: dts: microchip: sama5d29_curiosity: Add power-supply properties for sdmmc nodes

The sdmmc0 and sdmmc1 controllers are powered from 3.3V regulator.
Add vmmc-supply and vqmmc-supply properties to sdmmc nodes.
The sdmmc controller from SAMA5D2 MPU has support for
IO voltage signaling/switching required by the UHS sd-card.
In order to avoid the issues from the tuning procedure required by
the UHS cards, keep the vqmmc at 3V3 to use the sd high-speed mode.

Signed-off-by: Mihai Sain <[email protected]>
---
arch/arm/boot/dts/microchip/at91-sama5d29_curiosity.dts | 4 ++++
1 file changed, 4 insertions(+)

diff --git a/arch/arm/boot/dts/microchip/at91-sama5d29_curiosity.dts b/arch/arm/boot/dts/microchip/at91-sama5d29_curiosity.dts
index 6b02b7bcfd49..4a86597d089a 100644
--- a/arch/arm/boot/dts/microchip/at91-sama5d29_curiosity.dts
+++ b/arch/arm/boot/dts/microchip/at91-sama5d29_curiosity.dts
@@ -504,6 +504,8 @@ &sdmmc0 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_sdmmc0_default>;
disable-wp;
+ vmmc-supply = <&vdd_3v3>;
+ vqmmc-supply = <&vdd_3v3>;
status = "okay";
};

@@ -512,6 +514,8 @@ &sdmmc1 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_sdmmc1_default>;
disable-wp;
+ vmmc-supply = <&vdd_3v3>;
+ vqmmc-supply = <&vdd_3v3>;
status = "okay";
};

--
2.43.0


2024-02-06 12:09:11

by Mihai Sain

[permalink] [raw]
Subject: [PATCH v3 7/8] ARM: dts: microchip: sama5d2_icp: Add power-supply property for sdmmc0 node

The sdmmc0 controller is powered from 3.3V regulator.
Add vmmc-supply and vqmmc-supply properties to sdmmc0 node.
The sdmmc controller from SAMA5D2 MPU has support for
IO voltage signaling/switching required by the UHS sd-card.
In order to avoid the issues from the tuning procedure required by
the UHS cards, keep the vqmmc at 3V3 to use the sd high-speed mode.

Signed-off-by: Mihai Sain <[email protected]>
---
arch/arm/boot/dts/microchip/at91-sama5d2_icp.dts | 2 ++
1 file changed, 2 insertions(+)

diff --git a/arch/arm/boot/dts/microchip/at91-sama5d2_icp.dts b/arch/arm/boot/dts/microchip/at91-sama5d2_icp.dts
index 999adeca6f33..adcb3240e5f5 100644
--- a/arch/arm/boot/dts/microchip/at91-sama5d2_icp.dts
+++ b/arch/arm/boot/dts/microchip/at91-sama5d2_icp.dts
@@ -712,6 +712,8 @@ &sdmmc0 {
bus-width = <4>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_sdmmc0_default>;
+ vmmc-supply = <&vdd_io_reg>; // 3.3V
+ vqmmc-supply = <&vdd_io_reg>; // 3.3V
status = "okay";
};

--
2.43.0


2024-02-06 12:14:45

by Mihai Sain

[permalink] [raw]
Subject: [PATCH v3 2/8] ARM: dts: microchip: sam9x60ek: Add power-supply properties for sdmmc nodes

The sdmmc0 and sdmmc1 controllers are powered from 3.3V regulator.
Add vmmc-supply and vqmmc-supply properties to sdmmc nodes.
The sdmmc controller from SAM9X60 MPU doesn't support the
IO voltage signaling/switching required by the UHS sd-card.
In order to use the sd high-speed mode, keep vqmmc at 3V3.

Signed-off-by: Mihai Sain <[email protected]>
---
arch/arm/boot/dts/microchip/at91-sam9x60ek.dts | 4 ++++
1 file changed, 4 insertions(+)

diff --git a/arch/arm/boot/dts/microchip/at91-sam9x60ek.dts b/arch/arm/boot/dts/microchip/at91-sam9x60ek.dts
index f3cbb675cea4..b19a0956dc97 100644
--- a/arch/arm/boot/dts/microchip/at91-sam9x60ek.dts
+++ b/arch/arm/boot/dts/microchip/at91-sam9x60ek.dts
@@ -560,6 +560,8 @@ &sdmmc0 {
status = "okay";
cd-gpios = <&pioA 23 GPIO_ACTIVE_LOW>;
disable-wp;
+ vmmc-supply = <&vdd1_3v3>;
+ vqmmc-supply = <&vdd1_3v3>;
};

&sdmmc1 {
@@ -568,6 +570,8 @@ &sdmmc1 {
pinctrl-0 = <&pinctrl_sdmmc1_default>;
no-1-8-v;
non-removable;
+ vmmc-supply = <&vdd1_3v3>;
+ vqmmc-supply = <&vdd1_3v3>;
status = "disabled"; /* Conflict with flx4. */
};

--
2.43.0


2024-02-06 12:16:21

by Mihai Sain

[permalink] [raw]
Subject: [PATCH v3 5/8] ARM: dts: microchip: sama5d27_wlsom1_ek: Add power-supply property for sdmmc0 node

The sdmmc0 controller is powered from 3.3V regulator.
Add vmmc-supply and vqmmc-supply properties to sdmmc0 node.
The sdmmc controller from SAMA5D2 MPU has support for
IO voltage signaling/switching required by the UHS sd-card.
In order to avoid the issues from the tuning procedure required by
the UHS cards, keep the vqmmc at 3V3 to use the sd high-speed mode.

Signed-off-by: Mihai Sain <[email protected]>
---
arch/arm/boot/dts/microchip/at91-sama5d27_wlsom1_ek.dts | 2 ++
1 file changed, 2 insertions(+)

diff --git a/arch/arm/boot/dts/microchip/at91-sama5d27_wlsom1_ek.dts b/arch/arm/boot/dts/microchip/at91-sama5d27_wlsom1_ek.dts
index 15239834d886..7b36e1970bb7 100644
--- a/arch/arm/boot/dts/microchip/at91-sama5d27_wlsom1_ek.dts
+++ b/arch/arm/boot/dts/microchip/at91-sama5d27_wlsom1_ek.dts
@@ -199,6 +199,8 @@ &sdmmc0 {
bus-width = <4>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_sdmmc0_default>;
+ vmmc-supply = <&vdd_3v3>;
+ vqmmc-supply = <&vdd_3v3>;
status = "okay";
};

--
2.43.0


2024-02-06 12:16:27

by Mihai Sain

[permalink] [raw]
Subject: [PATCH v3 3/8] ARM: dts: microchip: sama5d27_som1_ek: Add power-supply properties for sdmmc nodes

The sdmmc0 and sdmmc1 controllers are powered from 3.3V regulator.
Add vmmc-supply and vqmmc-supply properties to sdmmc nodes.
The sdmmc controller from SAMA5D2 MPU has support for
IO voltage signaling/switching required by the UHS sd-card.
In order to avoid the issues from the tuning procedure required by
the UHS cards, keep the vqmmc at 3V3 to use the sd high-speed mode.

Signed-off-by: Mihai Sain <[email protected]>
---
arch/arm/boot/dts/microchip/at91-sama5d27_som1_ek.dts | 4 ++++
1 file changed, 4 insertions(+)

diff --git a/arch/arm/boot/dts/microchip/at91-sama5d27_som1_ek.dts b/arch/arm/boot/dts/microchip/at91-sama5d27_som1_ek.dts
index f3ffb8f01d8a..255ee0640133 100644
--- a/arch/arm/boot/dts/microchip/at91-sama5d27_som1_ek.dts
+++ b/arch/arm/boot/dts/microchip/at91-sama5d27_som1_ek.dts
@@ -56,6 +56,8 @@ sdmmc0: sdio-host@a0000000 {
bus-width = <8>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_sdmmc0_default>;
+ vmmc-supply = <&vddin_3v3>;
+ vqmmc-supply = <&vddin_3v3>;
status = "okay";
};

@@ -63,6 +65,8 @@ sdmmc1: sdio-host@b0000000 {
bus-width = <4>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_sdmmc1_default>;
+ vmmc-supply = <&vddin_3v3>;
+ vqmmc-supply = <&vddin_3v3>;
status = "okay";
};

--
2.43.0


2024-02-06 12:17:10

by Mihai Sain

[permalink] [raw]
Subject: [PATCH v3 8/8] ARM: dts: microchip: sama5d2_xplained: Add power-supply property for sdmmc0 node

The sdmmc0 controller is powered from 3.3V regulator.
Add vmmc-supply and vqmmc-supply properties to sdmmc0 node.
The sdmmc controller from SAMA5D2 MPU has support for
IO voltage signaling/switching required by the UHS sd-card.
In order to avoid the issues from the tuning procedure required by
the UHS cards, keep the vqmmc at 3V3 to use the sd high-speed mode.

Signed-off-by: Mihai Sain <[email protected]>
---
arch/arm/boot/dts/microchip/at91-sama5d2_xplained.dts | 2 ++
1 file changed, 2 insertions(+)

diff --git a/arch/arm/boot/dts/microchip/at91-sama5d2_xplained.dts b/arch/arm/boot/dts/microchip/at91-sama5d2_xplained.dts
index 6680031387e8..9b7e56790a5a 100644
--- a/arch/arm/boot/dts/microchip/at91-sama5d2_xplained.dts
+++ b/arch/arm/boot/dts/microchip/at91-sama5d2_xplained.dts
@@ -67,6 +67,8 @@ sdmmc0: sdio-host@a0000000 {
pinctrl-0 = <&pinctrl_sdmmc0_default>;
non-removable;
mmc-ddr-3_3v;
+ vmmc-supply = <&vdd_3v3_reg>;
+ vqmmc-supply = <&vdd_3v3_reg>;
status = "okay";
};

--
2.43.0


2024-02-18 14:45:37

by Claudiu

[permalink] [raw]
Subject: Re: [PATCH v3 3/8] ARM: dts: microchip: sama5d27_som1_ek: Add power-supply properties for sdmmc nodes

Hi, Mihai,

I'm replying to this series as the description is still better to me than
the one from v4, but, few notes:

On 06.02.2024 14:03, Mihai Sain wrote:
> The sdmmc0 and sdmmc1 controllers are powered from 3.3V regulator.

In schematic at [1] (for SDMMC0 at least) I see VDDSDHC could be either 1v8
or 3v3 and is selected by SDMMC_VDDSEL signal. Maybe update the description
to reflect the this.

[1]
https://ww1.microchip.com/downloads/aemDocuments/documents/MPU32/ProductDocuments/UserGuides/SAMA5D27-SOM1-Kit1-Users-Guide-DS50002667.pdf

> Add vmmc-supply and vqmmc-supply properties to sdmmc nodes.
> The sdmmc controller from SAMA5D2 MPU has support for
> IO voltage signaling/switching required by the UHS sd-card.

Ok, it has support as you mentioned in one of the replies to v1.

> In order to avoid the issues from the tuning procedure required by
> the UHS cards, keep the vqmmc at 3V3 to use the sd high-speed mode.

But it is still not clear enough for me why you want to keep it at 3v3.
Maybe it would have been clearer if you kept the statement from your reply
to v1:

"On the SAMA5 MPUs there is support for IO voltage switching but since we
have issues with the tuning procedure required but the UHS cards,
we want to keep vqmmc at 3V3 in order to use high-speed mode"

Thank you,
Claudiu Beznea


>
> Signed-off-by: Mihai Sain <[email protected]>
> ---
> arch/arm/boot/dts/microchip/at91-sama5d27_som1_ek.dts | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/arch/arm/boot/dts/microchip/at91-sama5d27_som1_ek.dts b/arch/arm/boot/dts/microchip/at91-sama5d27_som1_ek.dts
> index f3ffb8f01d8a..255ee0640133 100644
> --- a/arch/arm/boot/dts/microchip/at91-sama5d27_som1_ek.dts
> +++ b/arch/arm/boot/dts/microchip/at91-sama5d27_som1_ek.dts
> @@ -56,6 +56,8 @@ sdmmc0: sdio-host@a0000000 {
> bus-width = <8>;
> pinctrl-names = "default";
> pinctrl-0 = <&pinctrl_sdmmc0_default>;
> + vmmc-supply = <&vddin_3v3>;
> + vqmmc-supply = <&vddin_3v3>;
> status = "okay";
> };
>
> @@ -63,6 +65,8 @@ sdmmc1: sdio-host@b0000000 {
> bus-width = <4>;
> pinctrl-names = "default";
> pinctrl-0 = <&pinctrl_sdmmc1_default>;
> + vmmc-supply = <&vddin_3v3>;
> + vqmmc-supply = <&vddin_3v3>;
> status = "okay";
> };
>

2024-02-18 14:45:51

by Claudiu

[permalink] [raw]
Subject: Re: [PATCH v3 5/8] ARM: dts: microchip: sama5d27_wlsom1_ek: Add power-supply property for sdmmc0 node



On 06.02.2024 14:03, Mihai Sain wrote:
> The sdmmc0 controller is powered from 3.3V regulator.

Same here. SDMMC0 data lines are powered by VDDSDHC which could be 1v8/3v3.

[1]
https://ww1.microchip.com/downloads/aemDocuments/documents/MPU32/ProductDocuments/UserGuides/SAMA5D2-Wireless-SOM1-Kit-User%27s-Guide-50002931d.pdf

> Add vmmc-supply and vqmmc-supply properties to sdmmc0 node.
> The sdmmc controller from SAMA5D2 MPU has support for
> IO voltage signaling/switching required by the UHS sd-card.
> In order to avoid the issues from the tuning procedure required by
> the UHS cards, keep the vqmmc at 3V3 to use the sd high-speed mode.
>
> Signed-off-by: Mihai Sain <[email protected]>
> ---
> arch/arm/boot/dts/microchip/at91-sama5d27_wlsom1_ek.dts | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/arch/arm/boot/dts/microchip/at91-sama5d27_wlsom1_ek.dts b/arch/arm/boot/dts/microchip/at91-sama5d27_wlsom1_ek.dts
> index 15239834d886..7b36e1970bb7 100644
> --- a/arch/arm/boot/dts/microchip/at91-sama5d27_wlsom1_ek.dts
> +++ b/arch/arm/boot/dts/microchip/at91-sama5d27_wlsom1_ek.dts
> @@ -199,6 +199,8 @@ &sdmmc0 {
> bus-width = <4>;
> pinctrl-names = "default";
> pinctrl-0 = <&pinctrl_sdmmc0_default>;
> + vmmc-supply = <&vdd_3v3>;
> + vqmmc-supply = <&vdd_3v3>;
> status = "okay";
> };
>

2024-02-18 14:46:08

by Claudiu

[permalink] [raw]
Subject: Re: [PATCH v3 6/8] ARM: dts: microchip: sama5d29_curiosity: Add power-supply properties for sdmmc nodes



On 06.02.2024 14:03, Mihai Sain wrote:
> The sdmmc0 and sdmmc1 controllers are powered from 3.3V regulator.

Same here (for SDMMC0), according to
https://ww1.microchip.com/downloads/aemDocuments/documents/MPU32/ProductDocuments/UserGuides/SAMA5D29-Curiosity-EV07R15A-Users-Guide-DS60001822.pdf

> Add vmmc-supply and vqmmc-supply properties to sdmmc nodes.
> The sdmmc controller from SAMA5D2 MPU has support for
> IO voltage signaling/switching required by the UHS sd-card.
> In order to avoid the issues from the tuning procedure required by
> the UHS cards, keep the vqmmc at 3V3 to use the sd high-speed mode.
>
> Signed-off-by: Mihai Sain <[email protected]>
> ---
> arch/arm/boot/dts/microchip/at91-sama5d29_curiosity.dts | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/arch/arm/boot/dts/microchip/at91-sama5d29_curiosity.dts b/arch/arm/boot/dts/microchip/at91-sama5d29_curiosity.dts
> index 6b02b7bcfd49..4a86597d089a 100644
> --- a/arch/arm/boot/dts/microchip/at91-sama5d29_curiosity.dts
> +++ b/arch/arm/boot/dts/microchip/at91-sama5d29_curiosity.dts
> @@ -504,6 +504,8 @@ &sdmmc0 {
> pinctrl-names = "default";
> pinctrl-0 = <&pinctrl_sdmmc0_default>;
> disable-wp;
> + vmmc-supply = <&vdd_3v3>;
> + vqmmc-supply = <&vdd_3v3>;
> status = "okay";
> };
>
> @@ -512,6 +514,8 @@ &sdmmc1 {
> pinctrl-names = "default";
> pinctrl-0 = <&pinctrl_sdmmc1_default>;
> disable-wp;
> + vmmc-supply = <&vdd_3v3>;
> + vqmmc-supply = <&vdd_3v3>;
> status = "okay";
> };
>

2024-02-18 14:46:22

by Claudiu

[permalink] [raw]
Subject: Re: [PATCH v3 8/8] ARM: dts: microchip: sama5d2_xplained: Add power-supply property for sdmmc0 node



On 06.02.2024 14:03, Mihai Sain wrote:
> The sdmmc0 controller is powered from 3.3V regulator.

Same here according to
https://ww1.microchip.com/downloads/en/DeviceDoc/SAMA5D2C-XULT-User%27s-Guide-50002691E.pdf

> Add vmmc-supply and vqmmc-supply properties to sdmmc0 node.
> The sdmmc controller from SAMA5D2 MPU has support for
> IO voltage signaling/switching required by the UHS sd-card.
> In order to avoid the issues from the tuning procedure required by
> the UHS cards, keep the vqmmc at 3V3 to use the sd high-speed mode.
>
> Signed-off-by: Mihai Sain <[email protected]>
> ---
> arch/arm/boot/dts/microchip/at91-sama5d2_xplained.dts | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/arch/arm/boot/dts/microchip/at91-sama5d2_xplained.dts b/arch/arm/boot/dts/microchip/at91-sama5d2_xplained.dts
> index 6680031387e8..9b7e56790a5a 100644
> --- a/arch/arm/boot/dts/microchip/at91-sama5d2_xplained.dts
> +++ b/arch/arm/boot/dts/microchip/at91-sama5d2_xplained.dts
> @@ -67,6 +67,8 @@ sdmmc0: sdio-host@a0000000 {
> pinctrl-0 = <&pinctrl_sdmmc0_default>;
> non-removable;
> mmc-ddr-3_3v;
> + vmmc-supply = <&vdd_3v3_reg>;
> + vqmmc-supply = <&vdd_3v3_reg>;
> status = "okay";
> };
>