linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/2] Add USB 3.0 support for J784S4
@ 2024-05-06  5:20 Ravi Gunasekaran
  2024-05-06  5:20 ` [PATCH v2 1/2] arm64: dts: ti: k3-j784s4-main: Add support for USB Ravi Gunasekaran
  2024-05-06  5:20 ` [PATCH v2 2/2] arm64: dts: ti: k3-j784s4-evm: Enable USB3 support Ravi Gunasekaran
  0 siblings, 2 replies; 4+ messages in thread
From: Ravi Gunasekaran @ 2024-05-06  5:20 UTC (permalink / raw)
  To: nm, vigneshr
  Cc: kristo, robh, krzk+dt, conor+dt, srk, rogerq, r-gunasekaran,
	linux-arm-kernel, devicetree, linux-kernel

J784S4 has one USB sub system.
This series adds and enables support for USB 3.0 for
J784S4 EVM.

Change log:

Changes since v1:
-----------------
* Fixed dtbs_check warning in [2/2]
* Rebased to tip of -next

v1: https://lore.kernel.org/all/20240502053615.29514-1-r-gunasekaran@ti.com/

Matt Ranostay (2):
  arm64: dts: ti: k3-j784s4-main: Add support for USB
  arm64: dts: ti: k3-j784s4-evm: Enable USB3 support

 arch/arm64/boot/dts/ti/k3-j784s4-evm.dts   | 41 ++++++++++++++++++++++
 arch/arm64/boot/dts/ti/k3-j784s4-main.dtsi | 39 ++++++++++++++++++++
 2 files changed, 80 insertions(+)


base-commit: 9221b2819b8a4196eecf5476d66201be60fbcf29
-- 
2.17.1


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

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

* [PATCH v2 1/2] arm64: dts: ti: k3-j784s4-main: Add support for USB
  2024-05-06  5:20 [PATCH v2 0/2] Add USB 3.0 support for J784S4 Ravi Gunasekaran
@ 2024-05-06  5:20 ` Ravi Gunasekaran
  2024-05-06  6:22   ` Krzysztof Kozlowski
  2024-05-06  5:20 ` [PATCH v2 2/2] arm64: dts: ti: k3-j784s4-evm: Enable USB3 support Ravi Gunasekaran
  1 sibling, 1 reply; 4+ messages in thread
From: Ravi Gunasekaran @ 2024-05-06  5:20 UTC (permalink / raw)
  To: nm, vigneshr
  Cc: kristo, robh, krzk+dt, conor+dt, srk, rogerq, r-gunasekaran,
	linux-arm-kernel, devicetree, linux-kernel

From: Matt Ranostay <mranostay@ti.com>

Add support for the USB 3.0 controller

Signed-off-by: Matt Ranostay <mranostay@ti.com>
Signed-off-by: Ravi Gunasekaran <r-gunasekaran@ti.com>
---
Changes since v1:
----------------
* No change

v1: https://lore.kernel.org/all/20240502053615.29514-2-r-gunasekaran@ti.com/

 arch/arm64/boot/dts/ti/k3-j784s4-main.dtsi | 39 ++++++++++++++++++++++
 1 file changed, 39 insertions(+)

diff --git a/arch/arm64/boot/dts/ti/k3-j784s4-main.dtsi b/arch/arm64/boot/dts/ti/k3-j784s4-main.dtsi
index 6a4554c6c9c1..51cdd0b56a6f 100644
--- a/arch/arm64/boot/dts/ti/k3-j784s4-main.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-j784s4-main.dtsi
@@ -75,6 +75,13 @@
 				      <J784S4_SERDES4_LANE2_EDP_LANE2>,
 				      <J784S4_SERDES4_LANE3_EDP_LANE3>;
 		};
+
+		usb_serdes_mux: mux-controller@4000 {
+			compatible = "reg-mux";
+			reg = <0x4000 0x4>;
+			#mux-control-cells = <1>;
+			mux-reg-masks = <0x0 0x8000000>; /* USB0 to SERDES0 lane 3 mux */
+		};
 	};
 
 	gic500: interrupt-controller@1800000 {
@@ -568,6 +575,38 @@
 		status = "disabled";
 	};
 
+	usbss0: cdns-usb@4104000 {
+		bootph-all;
+		compatible = "ti,j721e-usb";
+		reg = <0x00 0x4104000 0x00 0x100>;
+		dma-coherent;
+		power-domains = <&k3_pds 398 TI_SCI_PD_EXCLUSIVE>;
+		clocks = <&k3_clks 398 21>, <&k3_clks 398 2>;
+		clock-names = "ref", "lpm";
+		assigned-clocks = <&k3_clks 398 21>;    /* USB2_REFCLK */
+		assigned-clock-parents = <&k3_clks 398 22>; /* HFOSC0 */
+		#address-cells = <2>;
+		#size-cells = <2>;
+		ranges;
+
+		status = "disabled"; /* Needs lane config */
+
+		usb0: usb@6000000 {
+			bootph-all;
+			compatible = "cdns,usb3";
+			reg = <0x00 0x6000000 0x00 0x10000>,
+			      <0x00 0x6010000 0x00 0x10000>,
+			      <0x00 0x6020000 0x00 0x10000>;
+			reg-names = "otg", "xhci", "dev";
+			interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_HIGH>,  /* irq.0 */
+				     <GIC_SPI 102 IRQ_TYPE_LEVEL_HIGH>, /* irq.6 */
+				     <GIC_SPI 120 IRQ_TYPE_LEVEL_HIGH>; /* otgirq.0 */
+			interrupt-names = "host",
+					  "peripheral",
+					  "otg";
+		};
+	};
+
 	main_i2c0: i2c@2000000 {
 		compatible = "ti,j721e-i2c", "ti,omap4-i2c";
 		reg = <0x00 0x02000000 0x00 0x100>;
-- 
2.17.1


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

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

* [PATCH v2 2/2] arm64: dts: ti: k3-j784s4-evm: Enable USB3 support
  2024-05-06  5:20 [PATCH v2 0/2] Add USB 3.0 support for J784S4 Ravi Gunasekaran
  2024-05-06  5:20 ` [PATCH v2 1/2] arm64: dts: ti: k3-j784s4-main: Add support for USB Ravi Gunasekaran
@ 2024-05-06  5:20 ` Ravi Gunasekaran
  1 sibling, 0 replies; 4+ messages in thread
From: Ravi Gunasekaran @ 2024-05-06  5:20 UTC (permalink / raw)
  To: nm, vigneshr
  Cc: kristo, robh, krzk+dt, conor+dt, srk, rogerq, r-gunasekaran,
	linux-arm-kernel, devicetree, linux-kernel

From: Matt Ranostay <mranostay@ti.com>

The board uses SERDES0 Lane 3 for USB3 IP. So update the
SerDes lane info for USB. Add the pin mux data and
enable USB3 support.

Signed-off-by: Matt Ranostay <mranostay@ti.com>
Signed-off-by: Ravi Gunasekaran <r-gunasekaran@ti.com>
---
Changes since v1:
----------------
* Fixed dtbs_check warning by renaming 'main-usbss0-pins-default'
  to 'main-usbss0-default-pins'

v1: https://lore.kernel.org/all/20240502053615.29514-2-r-gunasekaran@ti.com/

 arch/arm64/boot/dts/ti/k3-j784s4-evm.dts | 41 ++++++++++++++++++++++++
 1 file changed, 41 insertions(+)

diff --git a/arch/arm64/boot/dts/ti/k3-j784s4-evm.dts b/arch/arm64/boot/dts/ti/k3-j784s4-evm.dts
index d511b25d62e3..a2d3cba0423e 100644
--- a/arch/arm64/boot/dts/ti/k3-j784s4-evm.dts
+++ b/arch/arm64/boot/dts/ti/k3-j784s4-evm.dts
@@ -336,6 +336,13 @@
 			J784S4_IOPAD(0x010, PIN_INPUT_PULLUP, 8) /* (AH33) MCAN13_RX.I2C4_SDA */
 		>;
 	};
+
+	main_usbss0_pins_default: main-usbss0-default-pins {
+		bootph-all;
+		pinctrl-single,pins = <
+			J784S4_IOPAD(0x0ec, PIN_OUTPUT, 6) /* (AN37) TIMER_IO1.USB0_DRVVBUS */
+		>;
+	};
 };
 
 &wkup_pmx2 {
@@ -1041,6 +1048,40 @@
 				 <&k3_clks 218 22>;
 };
 
+&serdes0 {
+	status = "okay";
+
+	serdes0_usb_link: phy@3 {
+		reg = <3>;
+		cdns,num-lanes = <1>;
+		#phy-cells = <0>;
+		cdns,phy-type = <PHY_TYPE_USB3>;
+		resets = <&serdes_wiz0 4>;
+	};
+};
+
+&serdes_wiz0 {
+	status = "okay";
+};
+
+&usb_serdes_mux {
+	idle-states = <0>; /* USB0 to SERDES lane 3 */
+};
+
+&usbss0 {
+	status = "okay";
+	pinctrl-0 = <&main_usbss0_pins_default>;
+	pinctrl-names = "default";
+	ti,vbus-divider;
+};
+
+&usb0 {
+	dr_mode = "otg";
+	maximum-speed = "super-speed";
+	phys = <&serdes0_usb_link>;
+	phy-names = "cdns3,usb3-phy";
+};
+
 &serdes_wiz4 {
 	status = "okay";
 };
-- 
2.17.1


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

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

* Re: [PATCH v2 1/2] arm64: dts: ti: k3-j784s4-main: Add support for USB
  2024-05-06  5:20 ` [PATCH v2 1/2] arm64: dts: ti: k3-j784s4-main: Add support for USB Ravi Gunasekaran
@ 2024-05-06  6:22   ` Krzysztof Kozlowski
  0 siblings, 0 replies; 4+ messages in thread
From: Krzysztof Kozlowski @ 2024-05-06  6:22 UTC (permalink / raw)
  To: Ravi Gunasekaran, nm, vigneshr
  Cc: kristo, robh, krzk+dt, conor+dt, srk, rogerq, linux-arm-kernel,
	devicetree, linux-kernel

On 06/05/2024 07:20, Ravi Gunasekaran wrote:
> From: Matt Ranostay <mranostay@ti.com>
> 
> Add support for the USB 3.0 controller
> 
> Signed-off-by: Matt Ranostay <mranostay@ti.com>
> Signed-off-by: Ravi Gunasekaran <r-gunasekaran@ti.com>
> ---
> Changes since v1:
> ----------------
> * No change


>  
>  	gic500: interrupt-controller@1800000 {
> @@ -568,6 +575,38 @@
>  		status = "disabled";
>  	};
>  
> +	usbss0: cdns-usb@4104000 {

usb

Node names should be generic. See also an explanation and list of
examples (not exhaustive) in DT specification:
https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#generic-names-recommendation




Best regards,
Krzysztof


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

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

end of thread, other threads:[~2024-05-06  6:22 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-05-06  5:20 [PATCH v2 0/2] Add USB 3.0 support for J784S4 Ravi Gunasekaran
2024-05-06  5:20 ` [PATCH v2 1/2] arm64: dts: ti: k3-j784s4-main: Add support for USB Ravi Gunasekaran
2024-05-06  6:22   ` Krzysztof Kozlowski
2024-05-06  5:20 ` [PATCH v2 2/2] arm64: dts: ti: k3-j784s4-evm: Enable USB3 support Ravi Gunasekaran

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).