Devicetree
 help / color / mirror / Atom feed
* [PATCH] arm64: dts: qcom: ipq5018: Add pinctrl for MDIO bus
@ 2026-08-11 13:36 Luo Jie
  2026-08-11 14:00 ` Kathiravan Thirumoorthy
  0 siblings, 1 reply; 4+ messages in thread
From: Luo Jie @ 2026-08-11 13:36 UTC (permalink / raw)
  To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley
  Cc: linux-arm-msm, devicetree, linux-kernel, Luo Jie

The external MDIO bus (mdio1) needs its MDC/MDIO lines configured via
TLMM pinctrl; without this the pins are left in their default state and
the bus does not function on boards that enable it.

Add a mdio_pins pinctrl state for gpio36 (mdc) and gpio37 (mdio) with
8mA drive strength and pull-up, and reference it from the mdio1 node
via pinctrl-0/pinctrl-names.

Signed-off-by: Luo Jie <jie.luo@oss.qualcomm.com>
---
 arch/arm64/boot/dts/qcom/ipq5018.dtsi | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/ipq5018.dtsi b/arch/arm64/boot/dts/qcom/ipq5018.dtsi
index 4fc627b47fe7..a8a89a9c8160 100644
--- a/arch/arm64/boot/dts/qcom/ipq5018.dtsi
+++ b/arch/arm64/boot/dts/qcom/ipq5018.dtsi
@@ -241,6 +241,8 @@ mdio1: mdio@90000 {
 			reg = <0x00090000 0x64>;
 			#address-cells = <1>;
 			#size-cells = <0>;
+			pinctrl-0 = <&mdio_pins>;
+			pinctrl-names = "default";
 
 			clocks = <&gcc GCC_MDIO1_AHB_CLK>;
 			clock-names = "gcc_mdio_ahb_clk";
@@ -427,6 +429,22 @@ uart1_pins: uart1-state {
 				drive-strength = <8>;
 				bias-pull-down;
 			};
+
+			mdio_pins: mdio-state {
+				mdc-pins {
+					pins = "gpio36";
+					function = "mdc";
+					drive-strength = <8>;
+					bias-pull-up;
+				};
+
+				mdio-pins {
+					pins = "gpio37";
+					function = "mdio";
+					drive-strength = <8>;
+					bias-pull-up;
+				};
+			};
 		};
 
 		gcc: clock-controller@1800000 {

---
base-commit: 3d08ff75a47a3e7e2ab45a3bcab6723b4d906422
change-id: 20260811-qcom_ipq5018_mdio_pinctrl-f9e609e97c3d

Best regards,
--  
Luo Jie <jie.luo@oss.qualcomm.com>


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH] arm64: dts: qcom: ipq5018: Add pinctrl for MDIO bus
  2026-08-11 13:36 [PATCH] arm64: dts: qcom: ipq5018: Add pinctrl for MDIO bus Luo Jie
@ 2026-08-11 14:00 ` Kathiravan Thirumoorthy
  2026-08-11 15:24   ` Jie Luo
  0 siblings, 1 reply; 4+ messages in thread
From: Kathiravan Thirumoorthy @ 2026-08-11 14:00 UTC (permalink / raw)
  To: Luo Jie, Bjorn Andersson, Konrad Dybcio, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley
  Cc: linux-arm-msm, devicetree, linux-kernel


On 8/11/2026 7:06 PM, Luo Jie wrote:
> The external MDIO bus (mdio1) needs its MDC/MDIO lines configured via
> TLMM pinctrl; without this the pins are left in their default state and
> the bus does not function on boards that enable it.

Should we move the TLMM definitions to the board DTS file rather than 
keeping it in the SoC DTSI?

>
> Add a mdio_pins pinctrl state for gpio36 (mdc) and gpio37 (mdio) with
> 8mA drive strength and pull-up, and reference it from the mdio1 node
> via pinctrl-0/pinctrl-names.
>
> Signed-off-by: Luo Jie <jie.luo@oss.qualcomm.com>
> ---
>   arch/arm64/boot/dts/qcom/ipq5018.dtsi | 18 ++++++++++++++++++
>   1 file changed, 18 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/qcom/ipq5018.dtsi b/arch/arm64/boot/dts/qcom/ipq5018.dtsi
> index 4fc627b47fe7..a8a89a9c8160 100644
> --- a/arch/arm64/boot/dts/qcom/ipq5018.dtsi
> +++ b/arch/arm64/boot/dts/qcom/ipq5018.dtsi
> @@ -241,6 +241,8 @@ mdio1: mdio@90000 {
>   			reg = <0x00090000 0x64>;
>   			#address-cells = <1>;
>   			#size-cells = <0>;
> +			pinctrl-0 = <&mdio_pins>;
> +			pinctrl-names = "default";
>   
>   			clocks = <&gcc GCC_MDIO1_AHB_CLK>;
>   			clock-names = "gcc_mdio_ahb_clk";
> @@ -427,6 +429,22 @@ uart1_pins: uart1-state {
>   				drive-strength = <8>;
>   				bias-pull-down;
>   			};
> +
> +			mdio_pins: mdio-state {
> +				mdc-pins {
> +					pins = "gpio36";
> +					function = "mdc";
> +					drive-strength = <8>;
> +					bias-pull-up;
> +				};
> +
> +				mdio-pins {
> +					pins = "gpio37";
> +					function = "mdio";
> +					drive-strength = <8>;
> +					bias-pull-up;
> +				};
> +			};
>   		};
>   
>   		gcc: clock-controller@1800000 {
>
> ---
> base-commit: 3d08ff75a47a3e7e2ab45a3bcab6723b4d906422
> change-id: 20260811-qcom_ipq5018_mdio_pinctrl-f9e609e97c3d
>
> Best regards,
> --
> Luo Jie <jie.luo@oss.qualcomm.com>
>
>

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] arm64: dts: qcom: ipq5018: Add pinctrl for MDIO bus
  2026-08-11 14:00 ` Kathiravan Thirumoorthy
@ 2026-08-11 15:24   ` Jie Luo
  2026-08-11 16:11     ` Kathiravan Thirumoorthy
  0 siblings, 1 reply; 4+ messages in thread
From: Jie Luo @ 2026-08-11 15:24 UTC (permalink / raw)
  To: Kathiravan Thirumoorthy, Bjorn Andersson, Konrad Dybcio,
	Rob Herring, Krzysztof Kozlowski, Conor Dooley
  Cc: linux-arm-msm, devicetree, linux-kernel



On 8/11/2026 10:00 PM, Kathiravan Thirumoorthy wrote:
> 
> On 8/11/2026 7:06 PM, Luo Jie wrote:
>> The external MDIO bus (mdio1) needs its MDC/MDIO lines configured via
>> TLMM pinctrl; without this the pins are left in their default state and
>> the bus does not function on boards that enable it.
> 
> Should we move the TLMM definitions to the board DTS file rather than
> keeping it in the SoC DTSI?

The MDC/MDIO pin-group definition is SoC-specific. On IPQ5018, only
these two TLMM pins support the MDIO interface—one for MDC and one for
MDIO—with no alternative pin assignments available. Therefore, the
definition can remain in the IPQ5018 pinctrl/SoC DTSI for reuse.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] arm64: dts: qcom: ipq5018: Add pinctrl for MDIO bus
  2026-08-11 15:24   ` Jie Luo
@ 2026-08-11 16:11     ` Kathiravan Thirumoorthy
  0 siblings, 0 replies; 4+ messages in thread
From: Kathiravan Thirumoorthy @ 2026-08-11 16:11 UTC (permalink / raw)
  To: Jie Luo, Bjorn Andersson, Konrad Dybcio, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley
  Cc: linux-arm-msm, devicetree, linux-kernel


On 8/11/2026 8:54 PM, Jie Luo wrote:
>
> On 8/11/2026 10:00 PM, Kathiravan Thirumoorthy wrote:
>> On 8/11/2026 7:06 PM, Luo Jie wrote:
>>> The external MDIO bus (mdio1) needs its MDC/MDIO lines configured via
>>> TLMM pinctrl; without this the pins are left in their default state and
>>> the bus does not function on boards that enable it.
>> Should we move the TLMM definitions to the board DTS file rather than
>> keeping it in the SoC DTSI?
> The MDC/MDIO pin-group definition is SoC-specific. On IPQ5018, only
> these two TLMM pins support the MDIO interface—one for MDC and one for
> MDIO—with no alternative pin assignments available. Therefore, the
> definition can remain in the IPQ5018 pinctrl/SoC DTSI for reuse.

Thanks, As discussed, please send this change along with its consumer.


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2026-08-11 16:11 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-11 13:36 [PATCH] arm64: dts: qcom: ipq5018: Add pinctrl for MDIO bus Luo Jie
2026-08-11 14:00 ` Kathiravan Thirumoorthy
2026-08-11 15:24   ` Jie Luo
2026-08-11 16:11     ` Kathiravan Thirumoorthy

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox