devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/3] arm64: dts: qcom: qcs404: Add Ethernet node
@ 2019-01-23 17:48 Vinod Koul
  2019-01-23 17:48 ` [PATCH 2/3] arm64: dts: qcom: qcs404: Enable ethernet for EVB-4000 Vinod Koul
  2019-01-23 17:48 ` [PATCH 3/3] arm64: dts: qcom: qcs404: Add AR8035 Phy node Vinod Koul
  0 siblings, 2 replies; 5+ messages in thread
From: Vinod Koul @ 2019-01-23 17:48 UTC (permalink / raw)
  To: Andy Gross, David Brown
  Cc: Vinod Koul, Rob Herring, Mark Rutland, linux-arm-msm, devicetree,
	Bjorn Andersson, Niklas Cassel

Add the ethernet node found in QCS404 platform.

Co-developed-by: Niklas Cassel <niklas.cassel@linaro.org>
Signed-off-by: Niklas Cassel <niklas.cassel@linaro.org>
Signed-off-by: Vinod Koul <vkoul@kernel.org>
---
 arch/arm64/boot/dts/qcom/qcs404.dtsi | 24 ++++++++++++++++++++++++
 1 file changed, 24 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/qcs404.dtsi b/arch/arm64/boot/dts/qcom/qcs404.dtsi
index f3d77e7ee0d2..4696472bdc4e 100644
--- a/arch/arm64/boot/dts/qcom/qcs404.dtsi
+++ b/arch/arm64/boot/dts/qcom/qcs404.dtsi
@@ -346,6 +346,30 @@
 			status = "okay";
 		};
 
+		ethernet: ethernet@7a80000 {
+			compatible = "qcom,qcs404-ethqos";
+			reg = <0x07a80000 0x10000>,
+				<0x07a96000 0x100>;
+			reg-names = "stmmaceth", "rgmii";
+			clock-names = "stmmaceth", "pclk", "ptp_ref", "rgmii";
+			clocks = <&gcc GCC_ETH_AXI_CLK>,
+				<&gcc GCC_ETH_SLAVE_AHB_CLK>,
+				<&gcc GCC_ETH_PTP_CLK>,
+				<&gcc GCC_ETH_RGMII_CLK>;
+			interrupts = <GIC_SPI 56 IRQ_TYPE_LEVEL_HIGH>,
+					<GIC_SPI 55 IRQ_TYPE_LEVEL_HIGH>;
+			interrupt-names = "macirq", "eth_lpi";
+
+			snps,txpbl = <8>;
+			snps,rxpbl = <2>;
+			snps,aal;
+			snps,tso;
+			rx-fifo-depth=<4096>;
+			tx-fifo-depth=<4096>;
+
+			status = "disabled";
+		};
+
 		wifi: wifi@a000000 {
 			compatible = "qcom,wcn3990-wifi";
 			reg = <0xa000000 0x800000>;
-- 
2.20.1

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

* [PATCH 2/3] arm64: dts: qcom: qcs404: Enable ethernet for EVB-4000
  2019-01-23 17:48 [PATCH 1/3] arm64: dts: qcom: qcs404: Add Ethernet node Vinod Koul
@ 2019-01-23 17:48 ` Vinod Koul
  2019-01-23 17:48 ` [PATCH 3/3] arm64: dts: qcom: qcs404: Add AR8035 Phy node Vinod Koul
  1 sibling, 0 replies; 5+ messages in thread
From: Vinod Koul @ 2019-01-23 17:48 UTC (permalink / raw)
  To: Andy Gross, David Brown
  Cc: Vinod Koul, Rob Herring, Mark Rutland, linux-arm-msm, devicetree,
	Bjorn Andersson, Niklas Cassel

EVB-4000 comes with ethernet so enable it and add pinctrl bindings.

Co-developed-by: Niklas Cassel <niklas.cassel@linaro.org>
Signed-off-by: Niklas Cassel <niklas.cassel@linaro.org>
Signed-off-by: Vinod Koul <vkoul@kernel.org>
---
 arch/arm64/boot/dts/qcom/qcs404-evb-4000.dts | 70 ++++++++++++++++++++
 1 file changed, 70 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/qcs404-evb-4000.dts b/arch/arm64/boot/dts/qcom/qcs404-evb-4000.dts
index 11269ad3de0d..5c02e874be12 100644
--- a/arch/arm64/boot/dts/qcom/qcs404-evb-4000.dts
+++ b/arch/arm64/boot/dts/qcom/qcs404-evb-4000.dts
@@ -3,9 +3,79 @@
 
 /dts-v1/;
 
+#include <dt-bindings/gpio/gpio.h>
 #include "qcs404-evb.dtsi"
 
 / {
 	model = "Qualcomm Technologies, Inc. QCS404 EVB 4000";
 	compatible = "qcom,qcs404-evb";
 };
+
+&ethernet {
+	status = "ok";
+
+	snps,reset-gpio = <&tlmm 60 GPIO_ACTIVE_LOW>;
+	snps,reset-active-low;
+	snps,reset-delays-us = <0 10000 10000>;
+
+	pinctrl-names = "default";
+	pinctrl-0 = <&ethernet_defaults>;
+
+};
+
+&tlmm {
+	ethernet_defaults: ethernet-defaults {
+		int {
+			pins = "gpio61";
+			function = "rgmii_int";
+			bias-disable;
+			drive-strength = <2>;
+		};
+		mdc {
+			pins = "gpio76";
+			function = "rgmii_mdc";
+			bias-pull-up;
+		};
+		mdio {
+			pins = "gpio75";
+			function = "rgmii_mdio";
+			bias-pull-up;
+		};
+		tx {
+			pins = "gpio67", "gpio66", "gpio65", "gpio64";
+			function = "rgmii_tx";
+			bias-pull-up;
+			drive-strength = <16>;
+		};
+		rx {
+			pins = "gpio73", "gpio72", "gpio71", "gpio70";
+			function = "rgmii_rx";
+			bias-disable;
+			drive-strength = <2>;
+		};
+		tx-ctl {
+			pins = "gpio68";
+			function = "rgmii_ctl";
+			bias-pull-up;
+			drive-strength = <16>;
+		};
+		rx-ctl {
+			pins = "gpio74";
+			function = "rgmii_ctl";
+			bias-disable;
+			drive-strength = <2>;
+		};
+		tx-ck {
+			pins = "gpio63";
+			function = "rgmii_ck";
+			bias-pull-up;
+			drive-strength = <16>;
+		};
+		rx-ck {
+			pins = "gpio69";
+			function = "rgmii_ck";
+			bias-disable;
+			drive-strength = <2>;
+		};
+	};
+};
-- 
2.20.1

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

* [PATCH 3/3] arm64: dts: qcom: qcs404: Add AR8035 Phy node
  2019-01-23 17:48 [PATCH 1/3] arm64: dts: qcom: qcs404: Add Ethernet node Vinod Koul
  2019-01-23 17:48 ` [PATCH 2/3] arm64: dts: qcom: qcs404: Enable ethernet for EVB-4000 Vinod Koul
@ 2019-01-23 17:48 ` Vinod Koul
  2019-01-24 22:06   ` Niklas Cassel
  1 sibling, 1 reply; 5+ messages in thread
From: Vinod Koul @ 2019-01-23 17:48 UTC (permalink / raw)
  To: Andy Gross, David Brown
  Cc: Vinod Koul, Rob Herring, Mark Rutland, linux-arm-msm, devicetree,
	Bjorn Andersson, Niklas Cassel

EVB-4000 has ethernet port with AR8035 Phy, so add phy node

Co-developed-by: Niklas Cassel <niklas.cassel@linaro.org>
Signed-off-by: Niklas Cassel <niklas.cassel@linaro.org>
Signed-off-by: Vinod Koul <vkoul@kernel.org>
---
 arch/arm64/boot/dts/qcom/qcs404-evb-4000.dts | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/qcs404-evb-4000.dts b/arch/arm64/boot/dts/qcom/qcs404-evb-4000.dts
index 5c02e874be12..ec85647cfed1 100644
--- a/arch/arm64/boot/dts/qcom/qcs404-evb-4000.dts
+++ b/arch/arm64/boot/dts/qcom/qcs404-evb-4000.dts
@@ -21,6 +21,17 @@
 	pinctrl-names = "default";
 	pinctrl-0 = <&ethernet_defaults>;
 
+	phy-handle = <&phy1>;
+	phy-mode = "rgmii";
+	mdio {
+		#address-cells = <0x1>;
+		#size-cells = <0x0>;
+		compatible = "snps,dwmac-mdio";
+		phy1: phy@4 {
+			device_type = "ethernet-phy";
+			reg = <0x4>;
+		};
+	};
 };
 
 &tlmm {
-- 
2.20.1

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

* Re: [PATCH 3/3] arm64: dts: qcom: qcs404: Add AR8035 Phy node
  2019-01-23 17:48 ` [PATCH 3/3] arm64: dts: qcom: qcs404: Add AR8035 Phy node Vinod Koul
@ 2019-01-24 22:06   ` Niklas Cassel
  2019-01-28  4:12     ` Vinod Koul
  0 siblings, 1 reply; 5+ messages in thread
From: Niklas Cassel @ 2019-01-24 22:06 UTC (permalink / raw)
  To: Vinod Koul
  Cc: Andy Gross, David Brown, Rob Herring, Mark Rutland, linux-arm-msm,
	devicetree, Bjorn Andersson

On Wed, Jan 23, 2019 at 11:18:39PM +0530, Vinod Koul wrote:
> EVB-4000 has ethernet port with AR8035 Phy, so add phy node
> 
> Co-developed-by: Niklas Cassel <niklas.cassel@linaro.org>
> Signed-off-by: Niklas Cassel <niklas.cassel@linaro.org>
> Signed-off-by: Vinod Koul <vkoul@kernel.org>
> ---
>  arch/arm64/boot/dts/qcom/qcs404-evb-4000.dts | 11 +++++++++++
>  1 file changed, 11 insertions(+)
> 
> diff --git a/arch/arm64/boot/dts/qcom/qcs404-evb-4000.dts b/arch/arm64/boot/dts/qcom/qcs404-evb-4000.dts
> index 5c02e874be12..ec85647cfed1 100644
> --- a/arch/arm64/boot/dts/qcom/qcs404-evb-4000.dts
> +++ b/arch/arm64/boot/dts/qcom/qcs404-evb-4000.dts
> @@ -21,6 +21,17 @@
>  	pinctrl-names = "default";
>  	pinctrl-0 = <&ethernet_defaults>;
>  
> +	phy-handle = <&phy1>;
> +	phy-mode = "rgmii";
> +	mdio {
> +		#address-cells = <0x1>;
> +		#size-cells = <0x0>;
> +		compatible = "snps,dwmac-mdio";
> +		phy1: phy@4 {

Hello Vinod,

The AR8035 PHY is compliant with IEEE802.3u clause 22, so please add:
compatible = "ethernet-phy-ieee802.3-c22";

Also, please squash this commit with PATCH 2/3.
The previous patch sets status = "ok" without having a PHY defined,
but I also don't see any reason to keep 2/3 and 3/3 as separate patches.

Kind regards,
Niklas

> +			device_type = "ethernet-phy";
> +			reg = <0x4>;
> +		};
> +	};
>  };
>  
>  &tlmm {
> -- 
> 2.20.1
> 

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

* Re: [PATCH 3/3] arm64: dts: qcom: qcs404: Add AR8035 Phy node
  2019-01-24 22:06   ` Niklas Cassel
@ 2019-01-28  4:12     ` Vinod Koul
  0 siblings, 0 replies; 5+ messages in thread
From: Vinod Koul @ 2019-01-28  4:12 UTC (permalink / raw)
  To: Niklas Cassel
  Cc: Andy Gross, David Brown, Rob Herring, Mark Rutland, linux-arm-msm,
	devicetree, Bjorn Andersson

Hi Niklas,

On 24-01-19, 23:06, Niklas Cassel wrote:
> On Wed, Jan 23, 2019 at 11:18:39PM +0530, Vinod Koul wrote:
> > EVB-4000 has ethernet port with AR8035 Phy, so add phy node
> > 
> > Co-developed-by: Niklas Cassel <niklas.cassel@linaro.org>
> > Signed-off-by: Niklas Cassel <niklas.cassel@linaro.org>
> > Signed-off-by: Vinod Koul <vkoul@kernel.org>
> > ---
> >  arch/arm64/boot/dts/qcom/qcs404-evb-4000.dts | 11 +++++++++++
> >  1 file changed, 11 insertions(+)
> > 
> > diff --git a/arch/arm64/boot/dts/qcom/qcs404-evb-4000.dts b/arch/arm64/boot/dts/qcom/qcs404-evb-4000.dts
> > index 5c02e874be12..ec85647cfed1 100644
> > --- a/arch/arm64/boot/dts/qcom/qcs404-evb-4000.dts
> > +++ b/arch/arm64/boot/dts/qcom/qcs404-evb-4000.dts
> > @@ -21,6 +21,17 @@
> >  	pinctrl-names = "default";
> >  	pinctrl-0 = <&ethernet_defaults>;
> >  
> > +	phy-handle = <&phy1>;
> > +	phy-mode = "rgmii";
> > +	mdio {
> > +		#address-cells = <0x1>;
> > +		#size-cells = <0x0>;
> > +		compatible = "snps,dwmac-mdio";
> > +		phy1: phy@4 {
> 
> Hello Vinod,
> 
> The AR8035 PHY is compliant with IEEE802.3u clause 22, so please add:
> compatible = "ethernet-phy-ieee802.3-c22";

OKay will test and add..

> 
> Also, please squash this commit with PATCH 2/3.
> The previous patch sets status = "ok" without having a PHY defined,
> but I also don't see any reason to keep 2/3 and 3/3 as separate patches.

Yeah agree, in orignal scheme of things it made sense but not anymore so
will do that..

Thanks
-- 
~Vinod

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

end of thread, other threads:[~2019-01-28  4:12 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-01-23 17:48 [PATCH 1/3] arm64: dts: qcom: qcs404: Add Ethernet node Vinod Koul
2019-01-23 17:48 ` [PATCH 2/3] arm64: dts: qcom: qcs404: Enable ethernet for EVB-4000 Vinod Koul
2019-01-23 17:48 ` [PATCH 3/3] arm64: dts: qcom: qcs404: Add AR8035 Phy node Vinod Koul
2019-01-24 22:06   ` Niklas Cassel
2019-01-28  4:12     ` Vinod Koul

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).