* [PATCH v4 1/3] arm64: dts: ti: k3-am62-main: Update OTAP and ITAP delay select
2023-01-12 16:28 [PATCH v4 0/3] Improve K3-am625-sk support (USB, MMC) Sjoerd Simons
@ 2023-01-12 16:28 ` Sjoerd Simons
2023-01-12 16:28 ` [PATCH v4 2/3] arm64: dts: ti: k3-am62-main: Add support for USB Sjoerd Simons
` (2 subsequent siblings)
3 siblings, 0 replies; 5+ messages in thread
From: Sjoerd Simons @ 2023-01-12 16:28 UTC (permalink / raw)
To: Nishanth Menon
Cc: kernel, Nitin Yadav, martyn.welch, Krzysztof Kozlowski,
Rob Herring, Tero Kristo, Vignesh Raghavendra, devicetree,
linux-arm-kernel, linux-kernel
From: Nitin Yadav <n-yadav@ti.com>
UHS Class U1 sd-card are not getting detected due to incorrect
OTAP/ITAP delay select values in linux. Update OTAP and ITAP
delay select values for various speed modes. For sdhci0, update
OTAP delay values for ddr52 & HS200 and add ITAP delay for legacy
& mmc-hs. For sdhci1 & sdhci2, update OTAP & ITAP delay select
recommended as in RIOT for various speed modes.
Signed-off-by: Nitin Yadav <n-yadav@ti.com>
[cherry-pick from vendor BSP]
Signed-off-by: Sjoerd Simons <sjoerd@collabora.com>
Tested-by: Martyn Welch <martyn.welch@collabora.com>
---
(no changes since v3)
Changes in v3:
- Rebased against current ti-next aka 6.2-rc1
- Add Martyn's tested-by
Changes in v2:
- Rebase against linux-next 20221220
arch/arm64/boot/dts/ti/k3-am62-main.dtsi | 46 ++++++++++++------------
1 file changed, 24 insertions(+), 22 deletions(-)
diff --git a/arch/arm64/boot/dts/ti/k3-am62-main.dtsi b/arch/arm64/boot/dts/ti/k3-am62-main.dtsi
index 072903649d6e..466b94d1cee9 100644
--- a/arch/arm64/boot/dts/ti/k3-am62-main.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-am62-main.dtsi
@@ -501,8 +501,10 @@ sdhci0: mmc@fa10000 {
ti,clkbuf-sel = <0x7>;
ti,otap-del-sel-legacy = <0x0>;
ti,otap-del-sel-mmc-hs = <0x0>;
- ti,otap-del-sel-ddr52 = <0x9>;
- ti,otap-del-sel-hs200 = <0x6>;
+ ti,otap-del-sel-ddr52 = <0x5>;
+ ti,otap-del-sel-hs200 = <0x5>;
+ ti,itap-del-sel-legacy = <0xa>;
+ ti,itap-del-sel-mmc-hs = <0x1>;
status = "disabled";
};
@@ -514,17 +516,17 @@ sdhci1: mmc@fa00000 {
clocks = <&k3_clks 58 5>, <&k3_clks 58 6>;
clock-names = "clk_ahb", "clk_xin";
ti,trm-icp = <0x2>;
- ti,otap-del-sel-legacy = <0x0>;
+ ti,otap-del-sel-legacy = <0x8>;
ti,otap-del-sel-sd-hs = <0x0>;
- ti,otap-del-sel-sdr12 = <0xf>;
- ti,otap-del-sel-sdr25 = <0xf>;
- ti,otap-del-sel-sdr50 = <0xc>;
- ti,otap-del-sel-sdr104 = <0x6>;
- ti,otap-del-sel-ddr50 = <0x9>;
- ti,itap-del-sel-legacy = <0x0>;
- ti,itap-del-sel-sd-hs = <0x0>;
- ti,itap-del-sel-sdr12 = <0x0>;
- ti,itap-del-sel-sdr25 = <0x0>;
+ ti,otap-del-sel-sdr12 = <0x0>;
+ ti,otap-del-sel-sdr25 = <0x0>;
+ ti,otap-del-sel-sdr50 = <0x8>;
+ ti,otap-del-sel-sdr104 = <0x7>;
+ ti,otap-del-sel-ddr50 = <0x4>;
+ ti,itap-del-sel-legacy = <0xa>;
+ ti,itap-del-sel-sd-hs = <0x1>;
+ ti,itap-del-sel-sdr12 = <0xa>;
+ ti,itap-del-sel-sdr25 = <0x1>;
ti,clkbuf-sel = <0x7>;
bus-width = <4>;
status = "disabled";
@@ -538,17 +540,17 @@ sdhci2: mmc@fa20000 {
clocks = <&k3_clks 184 5>, <&k3_clks 184 6>;
clock-names = "clk_ahb", "clk_xin";
ti,trm-icp = <0x2>;
- ti,otap-del-sel-legacy = <0x0>;
+ ti,otap-del-sel-legacy = <0x8>;
ti,otap-del-sel-sd-hs = <0x0>;
- ti,otap-del-sel-sdr12 = <0xf>;
- ti,otap-del-sel-sdr25 = <0xf>;
- ti,otap-del-sel-sdr50 = <0xc>;
- ti,otap-del-sel-sdr104 = <0x6>;
- ti,otap-del-sel-ddr50 = <0x9>;
- ti,itap-del-sel-legacy = <0x0>;
- ti,itap-del-sel-sd-hs = <0x0>;
- ti,itap-del-sel-sdr12 = <0x0>;
- ti,itap-del-sel-sdr25 = <0x0>;
+ ti,otap-del-sel-sdr12 = <0x0>;
+ ti,otap-del-sel-sdr25 = <0x0>;
+ ti,otap-del-sel-sdr50 = <0x8>;
+ ti,otap-del-sel-sdr104 = <0x7>;
+ ti,otap-del-sel-ddr50 = <0x8>;
+ ti,itap-del-sel-legacy = <0xa>;
+ ti,itap-del-sel-sd-hs = <0xa>;
+ ti,itap-del-sel-sdr12 = <0xa>;
+ ti,itap-del-sel-sdr25 = <0x1>;
ti,clkbuf-sel = <0x7>;
status = "disabled";
};
--
2.39.0
^ permalink raw reply [flat|nested] 5+ messages in thread* [PATCH v4 2/3] arm64: dts: ti: k3-am62-main: Add support for USB
2023-01-12 16:28 [PATCH v4 0/3] Improve K3-am625-sk support (USB, MMC) Sjoerd Simons
2023-01-12 16:28 ` [PATCH v4 1/3] arm64: dts: ti: k3-am62-main: Update OTAP and ITAP delay select Sjoerd Simons
@ 2023-01-12 16:28 ` Sjoerd Simons
2023-01-12 16:28 ` [PATCH v4 3/3] arm64: dts: ti: k3-am625-sk: " Sjoerd Simons
2023-01-17 13:34 ` [PATCH v4 0/3] Improve K3-am625-sk support (USB, MMC) Vignesh Raghavendra
3 siblings, 0 replies; 5+ messages in thread
From: Sjoerd Simons @ 2023-01-12 16:28 UTC (permalink / raw)
To: Nishanth Menon
Cc: kernel, Nitin Yadav, martyn.welch, Aswath Govindraju,
Vignesh Raghavendra, Krzysztof Kozlowski, Rob Herring,
Tero Kristo, devicetree, linux-arm-kernel, linux-kernel
From: Aswath Govindraju <a-govindraju@ti.com>
AM62 SoC has two instances of USB on it. Therefore, add support for the
same.
Signed-off-by: Aswath Govindraju <a-govindraju@ti.com>
Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
[cherry-pick from vendor BSP, disable nodes by default]
Signed-off-by: Sjoerd Simons <sjoerd@collabora.com>
Tested-by: Martyn Welch <martyn.welch@collabora.com>
---
Changes in v4:
- Default to status="disabled" for usbss nodes
Changes in v3:
- Rebased against current ti-next aka 6.2-rc1
- Add Martyn's tested-by
Changes in v2:
- Rebase against linux-next 20221220
arch/arm64/boot/dts/ti/k3-am62-main.dtsi | 46 ++++++++++++++++++++++++
1 file changed, 46 insertions(+)
diff --git a/arch/arm64/boot/dts/ti/k3-am62-main.dtsi b/arch/arm64/boot/dts/ti/k3-am62-main.dtsi
index 466b94d1cee9..2d437d3b94ed 100644
--- a/arch/arm64/boot/dts/ti/k3-am62-main.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-am62-main.dtsi
@@ -555,6 +555,52 @@ sdhci2: mmc@fa20000 {
status = "disabled";
};
+ usbss0: dwc3-usb@f900000 {
+ compatible = "ti,am62-usb";
+ reg = <0x00 0x0f900000 0x00 0x800>;
+ clocks = <&k3_clks 161 3>;
+ clock-names = "ref";
+ ti,syscon-phy-pll-refclk = <&wkup_conf 0x4008>;
+ #address-cells = <2>;
+ #size-cells = <2>;
+ power-domains = <&k3_pds 178 TI_SCI_PD_EXCLUSIVE>;
+ ranges;
+ status = "disabled";
+
+ usb0: usb@31000000 {
+ compatible = "snps,dwc3";
+ reg =<0x00 0x31000000 0x00 0x50000>;
+ interrupts = <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>, /* irq.0 */
+ <GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>; /* irq.0 */
+ interrupt-names = "host", "peripheral";
+ maximum-speed = "high-speed";
+ dr_mode = "otg";
+ };
+ };
+
+ usbss1: dwc3-usb@f910000 {
+ compatible = "ti,am62-usb";
+ reg = <0x00 0x0f910000 0x00 0x800>;
+ clocks = <&k3_clks 162 3>;
+ clock-names = "ref";
+ ti,syscon-phy-pll-refclk = <&wkup_conf 0x4018>;
+ #address-cells = <2>;
+ #size-cells = <2>;
+ power-domains = <&k3_pds 179 TI_SCI_PD_EXCLUSIVE>;
+ ranges;
+ status = "disabled";
+
+ usb1: usb@31100000 {
+ compatible = "snps,dwc3";
+ reg =<0x00 0x31100000 0x00 0x50000>;
+ interrupts = <GIC_SPI 226 IRQ_TYPE_LEVEL_HIGH>, /* irq.0 */
+ <GIC_SPI 226 IRQ_TYPE_LEVEL_HIGH>; /* irq.0 */
+ interrupt-names = "host", "peripheral";
+ maximum-speed = "high-speed";
+ dr_mode = "otg";
+ };
+ };
+
fss: bus@fc00000 {
compatible = "simple-bus";
reg = <0x00 0x0fc00000 0x00 0x70000>;
--
2.39.0
^ permalink raw reply [flat|nested] 5+ messages in thread* [PATCH v4 3/3] arm64: dts: ti: k3-am625-sk: Add support for USB
2023-01-12 16:28 [PATCH v4 0/3] Improve K3-am625-sk support (USB, MMC) Sjoerd Simons
2023-01-12 16:28 ` [PATCH v4 1/3] arm64: dts: ti: k3-am62-main: Update OTAP and ITAP delay select Sjoerd Simons
2023-01-12 16:28 ` [PATCH v4 2/3] arm64: dts: ti: k3-am62-main: Add support for USB Sjoerd Simons
@ 2023-01-12 16:28 ` Sjoerd Simons
2023-01-17 13:34 ` [PATCH v4 0/3] Improve K3-am625-sk support (USB, MMC) Vignesh Raghavendra
3 siblings, 0 replies; 5+ messages in thread
From: Sjoerd Simons @ 2023-01-12 16:28 UTC (permalink / raw)
To: Nishanth Menon
Cc: kernel, Nitin Yadav, martyn.welch, Aswath Govindraju,
Vignesh Raghavendra, Krzysztof Kozlowski, Rob Herring,
Tero Kristo, devicetree, linux-arm-kernel, linux-kernel
From: Aswath Govindraju <a-govindraju@ti.com>
AM62 SoC has two instances of USB and they are brought on to the board
in the following way,
-> USB0 instance
- This is brought out to a USB TypeC connector on board through TPS6598 PD
controller. The PD controller should decide the role based on CC pin in
the connector. Unfortunately the irq line for the TPS isn't hooked up
which is a mode not yet support by the driver (some patches were
submitted earlier this year[0]). So for now the PD controller is left
out and peripheral mode chosen.
-> USB1 instance
- This is brought out to a USB TypeA connector on board.
Therefore, add the required device tree support for the above in the board
dts file.
0: https://lore.kernel.org/lkml/f714ee55-ef47-317d-81b9-57020dda064b@ti.com/T/
Signed-off-by: Aswath Govindraju <a-govindraju@ti.com>
Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
[merge from vendor bsp, drop TPS6598 support, drop unneeded nodes, reword commit message]
Signed-off-by: Sjoerd Simons <sjoerd@collabora.com>
Tested-by: Martyn Welch <martyn.welch@collabora.com>
---
Changes in v4:
- Disable new usbss nodes by default in the dtsi and enable in the dts
- Drop unneeded disabled nodes in board dts
- Drop unneeded nodes
- Enable usbss nodes
- Small typo fix
Changes in v3:
- Rebased against current ti-next aka 6.2-rc1
- Add Martyn's tested-by
Changes in v2:
- Rebase against linux-next 20221220
arch/arm64/boot/dts/ti/k3-am625-sk.dts | 27 ++++++++++++++++++++++++++
1 file changed, 27 insertions(+)
diff --git a/arch/arm64/boot/dts/ti/k3-am625-sk.dts b/arch/arm64/boot/dts/ti/k3-am625-sk.dts
index 4f179b146cab..6bc7d63cf52f 100644
--- a/arch/arm64/boot/dts/ti/k3-am625-sk.dts
+++ b/arch/arm64/boot/dts/ti/k3-am625-sk.dts
@@ -24,6 +24,8 @@ aliases {
spi0 = &ospi0;
ethernet0 = &cpsw_port1;
ethernet1 = &cpsw_port2;
+ usb0 = &usb0;
+ usb1 = &usb1;
};
chosen {
@@ -284,6 +286,12 @@ main_gpio1_ioexp_intr_pins_default: main-gpio1-ioexp-intr-pins-default {
AM62X_IOPAD(0x01d4, PIN_INPUT, 7) /* (B15) UART0_RTSn.GPIO1_23 */
>;
};
+
+ main_usb1_pins_default: main-usb1-pins-default {
+ pinctrl-single,pins = <
+ AM62X_IOPAD(0x0258, PIN_OUTPUT, 0) /* (F18) USB1_DRVVBUS */
+ >;
+ };
};
&wkup_uart0 {
@@ -464,3 +472,22 @@ partition@3fc0000 {
};
};
};
+
+&usbss0 {
+ status = "okay";
+ ti,vbus-divider;
+};
+
+&usbss1 {
+ status = "okay";
+};
+
+&usb0 {
+ dr_mode = "peripheral";
+};
+
+&usb1 {
+ dr_mode = "host";
+ pinctrl-names = "default";
+ pinctrl-0 = <&main_usb1_pins_default>;
+};
--
2.39.0
^ permalink raw reply [flat|nested] 5+ messages in thread* Re: [PATCH v4 0/3] Improve K3-am625-sk support (USB, MMC)
2023-01-12 16:28 [PATCH v4 0/3] Improve K3-am625-sk support (USB, MMC) Sjoerd Simons
` (2 preceding siblings ...)
2023-01-12 16:28 ` [PATCH v4 3/3] arm64: dts: ti: k3-am625-sk: " Sjoerd Simons
@ 2023-01-17 13:34 ` Vignesh Raghavendra
3 siblings, 0 replies; 5+ messages in thread
From: Vignesh Raghavendra @ 2023-01-17 13:34 UTC (permalink / raw)
To: Sjoerd Simons, Nishanth Menon
Cc: Vignesh Raghavendra, Rob Herring, martyn.welch, devicetree,
Krzysztof Kozlowski, Nitin Yadav, Tero Kristo, linux-kernel,
linux-arm-kernel, kernel
Hi Sjoerd Simons,
On Thu, 12 Jan 2023 17:28:43 +0100, Sjoerd Simons wrote:
> This series picks up a few patches from the TI BSP tree that
> unfortunately didn't make it upstream thusfar.
>
> The first patch improve SD card compatibility (allowing U1 class cards
> to be used), the remaining ones add USB support.
>
> The type-c connector isn't entirely modelled with these changes as
> it goes through a TPS6598 PD controller. Unfortunately the dtb bindings
> for that currently require an irq line, which is not connected on E1 and
> E2 version boards. The patchese to support this setup unfortunately didn't land
> yet[0].. As such the last patch ignored the PD controller and simply
> configures usb0 as periphal only rather then mode switch capable, which
> at least gives some basic usability of that USB port.
>
> [...]
I have applied the following to branch ti-k3-next on [1].
Thank you!
[1/3] arm64: dts: ti: k3-am62-main: Update OTAP and ITAP delay select
commit: bd2912f400934d71ecb040f625685b886ccdcc20
[2/3] arm64: dts: ti: k3-am62-main: Add support for USB
commit: 2240f96cf3cd0f74f5c349fb212c4176627f69b0
[3/3] arm64: dts: ti: k3-am625-sk: Add support for USB
commit: 2d94dfc438853dca9b390a3f32fe5331c336fd28
All being well this means that it will be integrated into the linux-next
tree (usually sometime in the next 24 hours) and sent up the chain during
the next merge window (or sooner if it is a relevant bug fix), however if
problems are discovered then the patch may be dropped or reverted.
You may get further e-mails resulting from automated or manual testing
and review of the tree, please engage with people reporting problems and
send followup patches addressing any issues that are reported if needed.
If any updates are required or you are submitting further changes they
should be sent as incremental updates against current git, existing
patches will not be replaced.
Please add any relevant lists and maintainers to the CCs when replying
to this mail.
[1] https://git.kernel.org/pub/scm/linux/kernel/git/ti/linux.git
--
Vignesh
^ permalink raw reply [flat|nested] 5+ messages in thread