* [PATCH] phy: marvell: phy-mvebu-a3700-comphy: Reset COMPHY registers before USB 3.0 power on
@ 2022-09-20 12:11 Pali Rohár
2022-09-21 5:03 ` Shinichiro Kawasaki
0 siblings, 1 reply; 11+ messages in thread
From: Pali Rohár @ 2022-09-20 12:11 UTC (permalink / raw)
To: Miquel Raynal, Kishon Vijay Abraham I, Vinod Koul,
Shinichiro Kawasaki
Cc: linux-phy, linux-kernel
Turris MOX board with older ARM Trusted Firmware version v1.5 is not able
to detect any USB 3.0 device connected to USB-A port on Mox-A module after
commit 0a6fc70d76bd ("phy: marvell: phy-mvebu-a3700-comphy: Remove broken
reset support"). On the other hand USB 2.0 devices connected to the same
USB-A port are working fine.
It looks as if the older firmware configures COMPHY registers for USB 3.0
somehow incompatibly for kernel driver. Experiments show that resetting
COMPHY registers via setting SFT_RST auto-clearing bit in COMPHY_SFT_RESET
register fixes this issue.
Reset the COMPHY in mvebu_a3700_comphy_usb3_power_on() function as a first
step after selecting COMPHY lane and USB 3.0 function. With this change
Turris MOX board can successfully detect USB 3.0 devices again.
Before the above mentioned commit this reset was implemented in PHY reset
method, so this is the reason why there was no issue with older firmware
version then.
Fixes: 0a6fc70d76bd ("phy: marvell: phy-mvebu-a3700-comphy: Remove broken reset support")
Reported-by: Marek Behún <kabel@kernel.org>
Signed-off-by: Pali Rohár <pali@kernel.org>
---
Shinichiro, could you please check that all USB functionality still
works correctly on your board?
---
drivers/phy/marvell/phy-mvebu-a3700-comphy.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/phy/marvell/phy-mvebu-a3700-comphy.c b/drivers/phy/marvell/phy-mvebu-a3700-comphy.c
index 67712c77d806..d641b345afa3 100644
--- a/drivers/phy/marvell/phy-mvebu-a3700-comphy.c
+++ b/drivers/phy/marvell/phy-mvebu-a3700-comphy.c
@@ -826,6 +826,9 @@ mvebu_a3700_comphy_usb3_power_on(struct mvebu_a3700_comphy_lane *lane)
if (ret)
return ret;
+ /* COMPHY register reset (cleared automatically) */
+ comphy_lane_reg_set(lane, COMPHY_SFT_RESET, SFT_RST, SFT_RST);
+
/*
* 0. Set PHY OTG Control(0x5d034), bit 4, Power up OTG module The
* register belong to UTMI module, so it is set in UTMI phy driver.
--
2.20.1
--
linux-phy mailing list
linux-phy@lists.infradead.org
https://lists.infradead.org/mailman/listinfo/linux-phy
^ permalink raw reply related [flat|nested] 11+ messages in thread* Re: [PATCH] phy: marvell: phy-mvebu-a3700-comphy: Reset COMPHY registers before USB 3.0 power on 2022-09-20 12:11 [PATCH] phy: marvell: phy-mvebu-a3700-comphy: Reset COMPHY registers before USB 3.0 power on Pali Rohár @ 2022-09-21 5:03 ` Shinichiro Kawasaki 2022-09-21 8:05 ` Pali Rohár 0 siblings, 1 reply; 11+ messages in thread From: Shinichiro Kawasaki @ 2022-09-21 5:03 UTC (permalink / raw) To: Pali Rohár Cc: Miquel Raynal, Kishon Vijay Abraham I, Vinod Koul, linux-phy@lists.infradead.org, linux-kernel@vger.kernel.org On Sep 20, 2022 / 14:11, Pali Rohár wrote: > Turris MOX board with older ARM Trusted Firmware version v1.5 is not able > to detect any USB 3.0 device connected to USB-A port on Mox-A module after > commit 0a6fc70d76bd ("phy: marvell: phy-mvebu-a3700-comphy: Remove broken > reset support"). On the other hand USB 2.0 devices connected to the same > USB-A port are working fine. > > It looks as if the older firmware configures COMPHY registers for USB 3.0 > somehow incompatibly for kernel driver. Experiments show that resetting > COMPHY registers via setting SFT_RST auto-clearing bit in COMPHY_SFT_RESET > register fixes this issue. > > Reset the COMPHY in mvebu_a3700_comphy_usb3_power_on() function as a first > step after selecting COMPHY lane and USB 3.0 function. With this change > Turris MOX board can successfully detect USB 3.0 devices again. > > Before the above mentioned commit this reset was implemented in PHY reset > method, so this is the reason why there was no issue with older firmware > version then. > > Fixes: 0a6fc70d76bd ("phy: marvell: phy-mvebu-a3700-comphy: Remove broken reset support") > Reported-by: Marek Behún <kabel@kernel.org> > Signed-off-by: Pali Rohár <pali@kernel.org> > --- > Shinichiro, could you please check that all USB functionality still > works correctly on your board? > --- Sure. TL;DR, this patch works ok for my espressobin v7 board. Tested-by: Shin'ichiro Kawasaki <shinichiro.kawasaki@wdc.com> I prepared base kernel v5.19.10 applying the commit 0a6fc70d76bd. Regardless whether this fix patch for Turrix MOX board is applied or not, two USB ports on my esprssobin v7 board worked as expected. I confirmed it by using USB thumb drive. The drive was detected and its partition was mounted successfully using either of the two USB ports. I also confirmed SATA port is ok (my SSD card was detected without error message) and three network ports works ok ("Link is Up" message on network cable connection). I did same confirmations with the latest firmware (TF-A and U-boot) and old firmware (with version date in 2017). All looks good for me. -- Shin'ichiro Kawasaki -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] phy: marvell: phy-mvebu-a3700-comphy: Reset COMPHY registers before USB 3.0 power on 2022-09-21 5:03 ` Shinichiro Kawasaki @ 2022-09-21 8:05 ` Pali Rohár 2022-09-21 12:44 ` Shinichiro Kawasaki 2022-09-24 7:14 ` Vinod Koul 0 siblings, 2 replies; 11+ messages in thread From: Pali Rohár @ 2022-09-21 8:05 UTC (permalink / raw) To: Shinichiro Kawasaki Cc: Miquel Raynal, Kishon Vijay Abraham I, Vinod Koul, linux-phy@lists.infradead.org, linux-kernel@vger.kernel.org On Wednesday 21 September 2022 05:03:01 Shinichiro Kawasaki wrote: > On Sep 20, 2022 / 14:11, Pali Rohár wrote: > > Turris MOX board with older ARM Trusted Firmware version v1.5 is not able > > to detect any USB 3.0 device connected to USB-A port on Mox-A module after > > commit 0a6fc70d76bd ("phy: marvell: phy-mvebu-a3700-comphy: Remove broken > > reset support"). On the other hand USB 2.0 devices connected to the same > > USB-A port are working fine. > > > > It looks as if the older firmware configures COMPHY registers for USB 3.0 > > somehow incompatibly for kernel driver. Experiments show that resetting > > COMPHY registers via setting SFT_RST auto-clearing bit in COMPHY_SFT_RESET > > register fixes this issue. > > > > Reset the COMPHY in mvebu_a3700_comphy_usb3_power_on() function as a first > > step after selecting COMPHY lane and USB 3.0 function. With this change > > Turris MOX board can successfully detect USB 3.0 devices again. > > > > Before the above mentioned commit this reset was implemented in PHY reset > > method, so this is the reason why there was no issue with older firmware > > version then. > > > > Fixes: 0a6fc70d76bd ("phy: marvell: phy-mvebu-a3700-comphy: Remove broken reset support") > > Reported-by: Marek Behún <kabel@kernel.org> > > Signed-off-by: Pali Rohár <pali@kernel.org> > > --- > > Shinichiro, could you please check that all USB functionality still > > works correctly on your board? > > --- > > Sure. TL;DR, this patch works ok for my espressobin v7 board. > > Tested-by: Shin'ichiro Kawasaki <shinichiro.kawasaki@wdc.com> > > I prepared base kernel v5.19.10 applying the commit 0a6fc70d76bd. Regardless > whether this fix patch for Turrix MOX board is applied or not, two USB ports on > my esprssobin v7 board worked as expected. I confirmed it by using USB thumb > drive. The drive was detected and its partition was mounted successfully using > either of the two USB ports. Thank you for testing! Anyway, please check that USB 3.0 device is working fine. Because as I wrote in commit message, on Turris Mox was USB 2.0 device working fine, but USB 3.0 not. And maybe check in system (lsusb) that USB 3.0 device was really detected as USB 3.0 because USB 3.0 devices have supported also fallback USB 2.0/1.x legacy mode. > I also confirmed SATA port is ok (my SSD card was detected without error > message) and three network ports works ok ("Link is Up" message on network cable > connection). I did same confirmations with the latest firmware (TF-A and U-boot) > and old firmware (with version date in 2017). All looks good for me. > > -- > Shin'ichiro Kawasaki -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] phy: marvell: phy-mvebu-a3700-comphy: Reset COMPHY registers before USB 3.0 power on 2022-09-21 8:05 ` Pali Rohár @ 2022-09-21 12:44 ` Shinichiro Kawasaki 2022-09-21 12:57 ` Pali Rohár 2022-09-24 7:14 ` Vinod Koul 1 sibling, 1 reply; 11+ messages in thread From: Shinichiro Kawasaki @ 2022-09-21 12:44 UTC (permalink / raw) To: Pali Rohár Cc: Miquel Raynal, Kishon Vijay Abraham I, Vinod Koul, linux-phy@lists.infradead.org, linux-kernel@vger.kernel.org On Sep 21, 2022 / 08:05, Pali Rohár wrote: > On Wednesday 21 September 2022 05:03:01 Shinichiro Kawasaki wrote: > > On Sep 20, 2022 / 14:11, Pali Rohár wrote: > > > Turris MOX board with older ARM Trusted Firmware version v1.5 is not able > > > to detect any USB 3.0 device connected to USB-A port on Mox-A module after > > > commit 0a6fc70d76bd ("phy: marvell: phy-mvebu-a3700-comphy: Remove broken > > > reset support"). On the other hand USB 2.0 devices connected to the same > > > USB-A port are working fine. > > > > > > It looks as if the older firmware configures COMPHY registers for USB 3.0 > > > somehow incompatibly for kernel driver. Experiments show that resetting > > > COMPHY registers via setting SFT_RST auto-clearing bit in COMPHY_SFT_RESET > > > register fixes this issue. > > > > > > Reset the COMPHY in mvebu_a3700_comphy_usb3_power_on() function as a first > > > step after selecting COMPHY lane and USB 3.0 function. With this change > > > Turris MOX board can successfully detect USB 3.0 devices again. > > > > > > Before the above mentioned commit this reset was implemented in PHY reset > > > method, so this is the reason why there was no issue with older firmware > > > version then. > > > > > > Fixes: 0a6fc70d76bd ("phy: marvell: phy-mvebu-a3700-comphy: Remove broken reset support") > > > Reported-by: Marek Behún <kabel@kernel.org> > > > Signed-off-by: Pali Rohár <pali@kernel.org> > > > --- > > > Shinichiro, could you please check that all USB functionality still > > > works correctly on your board? > > > --- > > > > Sure. TL;DR, this patch works ok for my espressobin v7 board. > > > > Tested-by: Shin'ichiro Kawasaki <shinichiro.kawasaki@wdc.com> > > > > I prepared base kernel v5.19.10 applying the commit 0a6fc70d76bd. Regardless > > whether this fix patch for Turrix MOX board is applied or not, two USB ports on > > my esprssobin v7 board worked as expected. I confirmed it by using USB thumb > > drive. The drive was detected and its partition was mounted successfully using > > either of the two USB ports. > > Thank you for testing! Anyway, please check that USB 3.0 device is > working fine. Because as I wrote in commit message, on Turris Mox was > USB 2.0 device working fine, but USB 3.0 not. And maybe check in system > (lsusb) that USB 3.0 device was really detected as USB 3.0 because USB > 3.0 devices have supported also fallback USB 2.0/1.x legacy mode. Ah, I see. For that check, I connected my USB 3.1 drive to the USB 3.0 port of my espressobin, then checked 'lsusb -vt' and sysfs: $ lsusb -vt /: Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/1p, 5000M ID 1d6b:0003 Linux Foundation 3.0 root hub |__ Port 1: Dev 2, If 0, Class=Mass Storage, Driver=usb-storage, 5000M ID 0781:5583 SanDisk Corp. Ultra Fit /: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/1p, 480M ID 1d6b:0002 Linux Foundation 2.0 root hub /: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=orion-ehci/1p, 480M ID 1d6b:0002 Linux Foundation 2.0 root hub $ cat /sys/bus/usb/devices/3-1/version 3.00 USB3 port is listed under the Bus 03, "3.0" root hub. According to sysfs, its USB version is 3.00. I observed same outputs with and without the patch for Turris MOX board. Are these good enough? If other check is needed, please let me know. -- Shin'ichiro Kawasaki -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] phy: marvell: phy-mvebu-a3700-comphy: Reset COMPHY registers before USB 3.0 power on 2022-09-21 12:44 ` Shinichiro Kawasaki @ 2022-09-21 12:57 ` Pali Rohár 0 siblings, 0 replies; 11+ messages in thread From: Pali Rohár @ 2022-09-21 12:57 UTC (permalink / raw) To: Shinichiro Kawasaki Cc: Miquel Raynal, Kishon Vijay Abraham I, Vinod Koul, linux-phy@lists.infradead.org, linux-kernel@vger.kernel.org On Wednesday 21 September 2022 12:44:58 Shinichiro Kawasaki wrote: > On Sep 21, 2022 / 08:05, Pali Rohár wrote: > > On Wednesday 21 September 2022 05:03:01 Shinichiro Kawasaki wrote: > > > On Sep 20, 2022 / 14:11, Pali Rohár wrote: > > > > Turris MOX board with older ARM Trusted Firmware version v1.5 is not able > > > > to detect any USB 3.0 device connected to USB-A port on Mox-A module after > > > > commit 0a6fc70d76bd ("phy: marvell: phy-mvebu-a3700-comphy: Remove broken > > > > reset support"). On the other hand USB 2.0 devices connected to the same > > > > USB-A port are working fine. > > > > > > > > It looks as if the older firmware configures COMPHY registers for USB 3.0 > > > > somehow incompatibly for kernel driver. Experiments show that resetting > > > > COMPHY registers via setting SFT_RST auto-clearing bit in COMPHY_SFT_RESET > > > > register fixes this issue. > > > > > > > > Reset the COMPHY in mvebu_a3700_comphy_usb3_power_on() function as a first > > > > step after selecting COMPHY lane and USB 3.0 function. With this change > > > > Turris MOX board can successfully detect USB 3.0 devices again. > > > > > > > > Before the above mentioned commit this reset was implemented in PHY reset > > > > method, so this is the reason why there was no issue with older firmware > > > > version then. > > > > > > > > Fixes: 0a6fc70d76bd ("phy: marvell: phy-mvebu-a3700-comphy: Remove broken reset support") > > > > Reported-by: Marek Behún <kabel@kernel.org> > > > > Signed-off-by: Pali Rohár <pali@kernel.org> > > > > --- > > > > Shinichiro, could you please check that all USB functionality still > > > > works correctly on your board? > > > > --- > > > > > > Sure. TL;DR, this patch works ok for my espressobin v7 board. > > > > > > Tested-by: Shin'ichiro Kawasaki <shinichiro.kawasaki@wdc.com> > > > > > > I prepared base kernel v5.19.10 applying the commit 0a6fc70d76bd. Regardless > > > whether this fix patch for Turrix MOX board is applied or not, two USB ports on > > > my esprssobin v7 board worked as expected. I confirmed it by using USB thumb > > > drive. The drive was detected and its partition was mounted successfully using > > > either of the two USB ports. > > > > Thank you for testing! Anyway, please check that USB 3.0 device is > > working fine. Because as I wrote in commit message, on Turris Mox was > > USB 2.0 device working fine, but USB 3.0 not. And maybe check in system > > (lsusb) that USB 3.0 device was really detected as USB 3.0 because USB > > 3.0 devices have supported also fallback USB 2.0/1.x legacy mode. > > Ah, I see. For that check, I connected my USB 3.1 drive to the USB 3.0 port of > my espressobin, then checked 'lsusb -vt' and sysfs: > > $ lsusb -vt > /: Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/1p, 5000M > ID 1d6b:0003 Linux Foundation 3.0 root hub > |__ Port 1: Dev 2, If 0, Class=Mass Storage, Driver=usb-storage, 5000M > ID 0781:5583 SanDisk Corp. Ultra Fit > /: Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci-hcd/1p, 480M > ID 1d6b:0002 Linux Foundation 2.0 root hub > /: Bus 01.Port 1: Dev 1, Class=root_hub, Driver=orion-ehci/1p, 480M > ID 1d6b:0002 Linux Foundation 2.0 root hub > > $ cat /sys/bus/usb/devices/3-1/version > 3.00 > > USB3 port is listed under the Bus 03, "3.0" root hub. According to sysfs, its > USB version is 3.00. I observed same outputs with and without the patch for > Turris MOX board. > > Are these good enough? If other check is needed, please let me know. Perfect, that is enough! If USB 3.1 drive is detected and working then everything is OK. -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] phy: marvell: phy-mvebu-a3700-comphy: Reset COMPHY registers before USB 3.0 power on 2022-09-21 8:05 ` Pali Rohár 2022-09-21 12:44 ` Shinichiro Kawasaki @ 2022-09-24 7:14 ` Vinod Koul 2022-09-24 8:31 ` Pali Rohár 1 sibling, 1 reply; 11+ messages in thread From: Vinod Koul @ 2022-09-24 7:14 UTC (permalink / raw) To: Pali Rohár Cc: Shinichiro Kawasaki, Miquel Raynal, Kishon Vijay Abraham I, linux-phy@lists.infradead.org, linux-kernel@vger.kernel.org On 21-09-22, 10:05, Pali Rohár wrote: > On Wednesday 21 September 2022 05:03:01 Shinichiro Kawasaki wrote: > > On Sep 20, 2022 / 14:11, Pali Rohár wrote: > > > Turris MOX board with older ARM Trusted Firmware version v1.5 is not able > > > to detect any USB 3.0 device connected to USB-A port on Mox-A module after > > > commit 0a6fc70d76bd ("phy: marvell: phy-mvebu-a3700-comphy: Remove broken > > > reset support"). On the other hand USB 2.0 devices connected to the same > > > USB-A port are working fine. > > > > > > It looks as if the older firmware configures COMPHY registers for USB 3.0 > > > somehow incompatibly for kernel driver. Experiments show that resetting > > > COMPHY registers via setting SFT_RST auto-clearing bit in COMPHY_SFT_RESET > > > register fixes this issue. > > > > > > Reset the COMPHY in mvebu_a3700_comphy_usb3_power_on() function as a first > > > step after selecting COMPHY lane and USB 3.0 function. With this change > > > Turris MOX board can successfully detect USB 3.0 devices again. > > > > > > Before the above mentioned commit this reset was implemented in PHY reset > > > method, so this is the reason why there was no issue with older firmware > > > version then. > > > > > > Fixes: 0a6fc70d76bd ("phy: marvell: phy-mvebu-a3700-comphy: Remove broken reset support") > > > Reported-by: Marek Behún <kabel@kernel.org> > > > Signed-off-by: Pali Rohár <pali@kernel.org> > > > --- > > > Shinichiro, could you please check that all USB functionality still > > > works correctly on your board? > > > --- > > > > Sure. TL;DR, this patch works ok for my espressobin v7 board. > > > > Tested-by: Shin'ichiro Kawasaki <shinichiro.kawasaki@wdc.com> > > > > I prepared base kernel v5.19.10 applying the commit 0a6fc70d76bd. Regardless > > whether this fix patch for Turrix MOX board is applied or not, two USB ports on > > my esprssobin v7 board worked as expected. I confirmed it by using USB thumb > > drive. The drive was detected and its partition was mounted successfully using > > either of the two USB ports. > > Thank you for testing! Anyway, please check that USB 3.0 device is > working fine. Because as I wrote in commit message, on Turris Mox was > USB 2.0 device working fine, but USB 3.0 not. And maybe check in system update the log now? > (lsusb) that USB 3.0 device was really detected as USB 3.0 because USB > 3.0 devices have supported also fallback USB 2.0/1.x legacy mode. > > > I also confirmed SATA port is ok (my SSD card was detected without error > > message) and three network ports works ok ("Link is Up" message on network cable > > connection). I did same confirmations with the latest firmware (TF-A and U-boot) > > and old firmware (with version date in 2017). All looks good for me. > > > > -- > > Shin'ichiro Kawasaki -- ~Vinod -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] phy: marvell: phy-mvebu-a3700-comphy: Reset COMPHY registers before USB 3.0 power on 2022-09-24 7:14 ` Vinod Koul @ 2022-09-24 8:31 ` Pali Rohár 2022-09-30 23:45 ` Pali Rohár 0 siblings, 1 reply; 11+ messages in thread From: Pali Rohár @ 2022-09-24 8:31 UTC (permalink / raw) To: Vinod Koul Cc: Shinichiro Kawasaki, Miquel Raynal, Kishon Vijay Abraham I, linux-phy@lists.infradead.org, linux-kernel@vger.kernel.org On Saturday 24 September 2022 12:44:49 Vinod Koul wrote: > On 21-09-22, 10:05, Pali Rohár wrote: > > On Wednesday 21 September 2022 05:03:01 Shinichiro Kawasaki wrote: > > > On Sep 20, 2022 / 14:11, Pali Rohár wrote: > > > > Turris MOX board with older ARM Trusted Firmware version v1.5 is not able > > > > to detect any USB 3.0 device connected to USB-A port on Mox-A module after > > > > commit 0a6fc70d76bd ("phy: marvell: phy-mvebu-a3700-comphy: Remove broken > > > > reset support"). On the other hand USB 2.0 devices connected to the same > > > > USB-A port are working fine. > > > > > > > > It looks as if the older firmware configures COMPHY registers for USB 3.0 > > > > somehow incompatibly for kernel driver. Experiments show that resetting > > > > COMPHY registers via setting SFT_RST auto-clearing bit in COMPHY_SFT_RESET > > > > register fixes this issue. > > > > > > > > Reset the COMPHY in mvebu_a3700_comphy_usb3_power_on() function as a first > > > > step after selecting COMPHY lane and USB 3.0 function. With this change > > > > Turris MOX board can successfully detect USB 3.0 devices again. > > > > > > > > Before the above mentioned commit this reset was implemented in PHY reset > > > > method, so this is the reason why there was no issue with older firmware > > > > version then. > > > > > > > > Fixes: 0a6fc70d76bd ("phy: marvell: phy-mvebu-a3700-comphy: Remove broken reset support") > > > > Reported-by: Marek Behún <kabel@kernel.org> > > > > Signed-off-by: Pali Rohár <pali@kernel.org> > > > > --- > > > > Shinichiro, could you please check that all USB functionality still > > > > works correctly on your board? > > > > --- > > > > > > Sure. TL;DR, this patch works ok for my espressobin v7 board. > > > > > > Tested-by: Shin'ichiro Kawasaki <shinichiro.kawasaki@wdc.com> > > > > > > I prepared base kernel v5.19.10 applying the commit 0a6fc70d76bd. Regardless > > > whether this fix patch for Turrix MOX board is applied or not, two USB ports on > > > my esprssobin v7 board worked as expected. I confirmed it by using USB thumb > > > drive. The drive was detected and its partition was mounted successfully using > > > either of the two USB ports. > > > > Thank you for testing! Anyway, please check that USB 3.0 device is > > working fine. Because as I wrote in commit message, on Turris Mox was > > USB 2.0 device working fine, but USB 3.0 not. And maybe check in system > > update the log now? What do you want to update? > > (lsusb) that USB 3.0 device was really detected as USB 3.0 because USB > > 3.0 devices have supported also fallback USB 2.0/1.x legacy mode. > > > > > I also confirmed SATA port is ok (my SSD card was detected without error > > > message) and three network ports works ok ("Link is Up" message on network cable > > > connection). I did same confirmations with the latest firmware (TF-A and U-boot) > > > and old firmware (with version date in 2017). All looks good for me. > > > > > > -- > > > Shin'ichiro Kawasaki > > -- > ~Vinod -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] phy: marvell: phy-mvebu-a3700-comphy: Reset COMPHY registers before USB 3.0 power on 2022-09-24 8:31 ` Pali Rohár @ 2022-09-30 23:45 ` Pali Rohár 2022-10-09 12:07 ` Pali Rohár 2022-10-10 5:19 ` Vinod Koul 0 siblings, 2 replies; 11+ messages in thread From: Pali Rohár @ 2022-09-30 23:45 UTC (permalink / raw) To: Vinod Koul; +Cc: linux-phy@lists.infradead.org, linux-kernel@vger.kernel.org On Saturday 24 September 2022 10:31:27 Pali Rohár wrote: > On Saturday 24 September 2022 12:44:49 Vinod Koul wrote: > > On 21-09-22, 10:05, Pali Rohár wrote: > > > On Wednesday 21 September 2022 05:03:01 Shinichiro Kawasaki wrote: > > > > On Sep 20, 2022 / 14:11, Pali Rohár wrote: > > > > > Turris MOX board with older ARM Trusted Firmware version v1.5 is not able > > > > > to detect any USB 3.0 device connected to USB-A port on Mox-A module after > > > > > commit 0a6fc70d76bd ("phy: marvell: phy-mvebu-a3700-comphy: Remove broken > > > > > reset support"). On the other hand USB 2.0 devices connected to the same > > > > > USB-A port are working fine. > > > > > > > > > > It looks as if the older firmware configures COMPHY registers for USB 3.0 > > > > > somehow incompatibly for kernel driver. Experiments show that resetting > > > > > COMPHY registers via setting SFT_RST auto-clearing bit in COMPHY_SFT_RESET > > > > > register fixes this issue. > > > > > > > > > > Reset the COMPHY in mvebu_a3700_comphy_usb3_power_on() function as a first > > > > > step after selecting COMPHY lane and USB 3.0 function. With this change > > > > > Turris MOX board can successfully detect USB 3.0 devices again. > > > > > > > > > > Before the above mentioned commit this reset was implemented in PHY reset > > > > > method, so this is the reason why there was no issue with older firmware > > > > > version then. > > > > > > > > > > Fixes: 0a6fc70d76bd ("phy: marvell: phy-mvebu-a3700-comphy: Remove broken reset support") > > > > > Reported-by: Marek Behún <kabel@kernel.org> > > > > > Signed-off-by: Pali Rohár <pali@kernel.org> > > > > > --- > > > > > Shinichiro, could you please check that all USB functionality still > > > > > works correctly on your board? > > > > > --- > > > > > > > > Sure. TL;DR, this patch works ok for my espressobin v7 board. > > > > > > > > Tested-by: Shin'ichiro Kawasaki <shinichiro.kawasaki@wdc.com> > > > > > > > > I prepared base kernel v5.19.10 applying the commit 0a6fc70d76bd. Regardless > > > > whether this fix patch for Turrix MOX board is applied or not, two USB ports on > > > > my esprssobin v7 board worked as expected. I confirmed it by using USB thumb > > > > drive. The drive was detected and its partition was mounted successfully using > > > > either of the two USB ports. > > > > > > Thank you for testing! Anyway, please check that USB 3.0 device is > > > working fine. Because as I wrote in commit message, on Turris Mox was > > > USB 2.0 device working fine, but USB 3.0 not. And maybe check in system > > > > update the log now? > > What do you want to update? Vinod, could you describe a bit more what is needed to update? Because this patch fixes regression - USB 3.0 support on Turris Mox board. > > > (lsusb) that USB 3.0 device was really detected as USB 3.0 because USB > > > 3.0 devices have supported also fallback USB 2.0/1.x legacy mode. > > > > > > > I also confirmed SATA port is ok (my SSD card was detected without error > > > > message) and three network ports works ok ("Link is Up" message on network cable > > > > connection). I did same confirmations with the latest firmware (TF-A and U-boot) > > > > and old firmware (with version date in 2017). All looks good for me. > > > > > > > > -- > > > > Shin'ichiro Kawasaki > > > > -- > > ~Vinod -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] phy: marvell: phy-mvebu-a3700-comphy: Reset COMPHY registers before USB 3.0 power on 2022-09-30 23:45 ` Pali Rohár @ 2022-10-09 12:07 ` Pali Rohár 2022-10-10 5:19 ` Vinod Koul 1 sibling, 0 replies; 11+ messages in thread From: Pali Rohár @ 2022-10-09 12:07 UTC (permalink / raw) To: Vinod Koul; +Cc: linux-phy@lists.infradead.org, linux-kernel@vger.kernel.org Vinod: PING? On Saturday 01 October 2022 01:45:41 Pali Rohár wrote: > On Saturday 24 September 2022 10:31:27 Pali Rohár wrote: > > On Saturday 24 September 2022 12:44:49 Vinod Koul wrote: > > > On 21-09-22, 10:05, Pali Rohár wrote: > > > > On Wednesday 21 September 2022 05:03:01 Shinichiro Kawasaki wrote: > > > > > On Sep 20, 2022 / 14:11, Pali Rohár wrote: > > > > > > Turris MOX board with older ARM Trusted Firmware version v1.5 is not able > > > > > > to detect any USB 3.0 device connected to USB-A port on Mox-A module after > > > > > > commit 0a6fc70d76bd ("phy: marvell: phy-mvebu-a3700-comphy: Remove broken > > > > > > reset support"). On the other hand USB 2.0 devices connected to the same > > > > > > USB-A port are working fine. > > > > > > > > > > > > It looks as if the older firmware configures COMPHY registers for USB 3.0 > > > > > > somehow incompatibly for kernel driver. Experiments show that resetting > > > > > > COMPHY registers via setting SFT_RST auto-clearing bit in COMPHY_SFT_RESET > > > > > > register fixes this issue. > > > > > > > > > > > > Reset the COMPHY in mvebu_a3700_comphy_usb3_power_on() function as a first > > > > > > step after selecting COMPHY lane and USB 3.0 function. With this change > > > > > > Turris MOX board can successfully detect USB 3.0 devices again. > > > > > > > > > > > > Before the above mentioned commit this reset was implemented in PHY reset > > > > > > method, so this is the reason why there was no issue with older firmware > > > > > > version then. > > > > > > > > > > > > Fixes: 0a6fc70d76bd ("phy: marvell: phy-mvebu-a3700-comphy: Remove broken reset support") > > > > > > Reported-by: Marek Behún <kabel@kernel.org> > > > > > > Signed-off-by: Pali Rohár <pali@kernel.org> > > > > > > --- > > > > > > Shinichiro, could you please check that all USB functionality still > > > > > > works correctly on your board? > > > > > > --- > > > > > > > > > > Sure. TL;DR, this patch works ok for my espressobin v7 board. > > > > > > > > > > Tested-by: Shin'ichiro Kawasaki <shinichiro.kawasaki@wdc.com> > > > > > > > > > > I prepared base kernel v5.19.10 applying the commit 0a6fc70d76bd. Regardless > > > > > whether this fix patch for Turrix MOX board is applied or not, two USB ports on > > > > > my esprssobin v7 board worked as expected. I confirmed it by using USB thumb > > > > > drive. The drive was detected and its partition was mounted successfully using > > > > > either of the two USB ports. > > > > > > > > Thank you for testing! Anyway, please check that USB 3.0 device is > > > > working fine. Because as I wrote in commit message, on Turris Mox was > > > > USB 2.0 device working fine, but USB 3.0 not. And maybe check in system > > > > > > update the log now? > > > > What do you want to update? > > Vinod, could you describe a bit more what is needed to update? Because > this patch fixes regression - USB 3.0 support on Turris Mox board. > > > > > (lsusb) that USB 3.0 device was really detected as USB 3.0 because USB > > > > 3.0 devices have supported also fallback USB 2.0/1.x legacy mode. > > > > > > > > > I also confirmed SATA port is ok (my SSD card was detected without error > > > > > message) and three network ports works ok ("Link is Up" message on network cable > > > > > connection). I did same confirmations with the latest firmware (TF-A and U-boot) > > > > > and old firmware (with version date in 2017). All looks good for me. > > > > > > > > > > -- > > > > > Shin'ichiro Kawasaki > > > > > > -- > > > ~Vinod -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] phy: marvell: phy-mvebu-a3700-comphy: Reset COMPHY registers before USB 3.0 power on 2022-09-30 23:45 ` Pali Rohár 2022-10-09 12:07 ` Pali Rohár @ 2022-10-10 5:19 ` Vinod Koul 2022-10-17 5:39 ` Vinod Koul 1 sibling, 1 reply; 11+ messages in thread From: Vinod Koul @ 2022-10-10 5:19 UTC (permalink / raw) To: Pali Rohár Cc: linux-phy@lists.infradead.org, linux-kernel@vger.kernel.org On 01-10-22, 01:45, Pali Rohár wrote: > On Saturday 24 September 2022 10:31:27 Pali Rohár wrote: > > On Saturday 24 September 2022 12:44:49 Vinod Koul wrote: > > > On 21-09-22, 10:05, Pali Rohár wrote: > > > > On Wednesday 21 September 2022 05:03:01 Shinichiro Kawasaki wrote: > > > > > On Sep 20, 2022 / 14:11, Pali Rohár wrote: > > > > > > Turris MOX board with older ARM Trusted Firmware version v1.5 is not able > > > > > > to detect any USB 3.0 device connected to USB-A port on Mox-A module after > > > > > > commit 0a6fc70d76bd ("phy: marvell: phy-mvebu-a3700-comphy: Remove broken > > > > > > reset support"). On the other hand USB 2.0 devices connected to the same > > > > > > USB-A port are working fine. > > > > > > > > > > > > It looks as if the older firmware configures COMPHY registers for USB 3.0 > > > > > > somehow incompatibly for kernel driver. Experiments show that resetting > > > > > > COMPHY registers via setting SFT_RST auto-clearing bit in COMPHY_SFT_RESET > > > > > > register fixes this issue. > > > > > > > > > > > > Reset the COMPHY in mvebu_a3700_comphy_usb3_power_on() function as a first > > > > > > step after selecting COMPHY lane and USB 3.0 function. With this change > > > > > > Turris MOX board can successfully detect USB 3.0 devices again. > > > > > > > > > > > > Before the above mentioned commit this reset was implemented in PHY reset > > > > > > method, so this is the reason why there was no issue with older firmware > > > > > > version then. > > > > > > > > > > > > Fixes: 0a6fc70d76bd ("phy: marvell: phy-mvebu-a3700-comphy: Remove broken reset support") > > > > > > Reported-by: Marek Behún <kabel@kernel.org> > > > > > > Signed-off-by: Pali Rohár <pali@kernel.org> > > > > > > --- > > > > > > Shinichiro, could you please check that all USB functionality still > > > > > > works correctly on your board? > > > > > > --- > > > > > > > > > > Sure. TL;DR, this patch works ok for my espressobin v7 board. > > > > > > > > > > Tested-by: Shin'ichiro Kawasaki <shinichiro.kawasaki@wdc.com> > > > > > > > > > > I prepared base kernel v5.19.10 applying the commit 0a6fc70d76bd. Regardless > > > > > whether this fix patch for Turrix MOX board is applied or not, two USB ports on > > > > > my esprssobin v7 board worked as expected. I confirmed it by using USB thumb > > > > > drive. The drive was detected and its partition was mounted successfully using > > > > > either of the two USB ports. > > > > > > > > Thank you for testing! Anyway, please check that USB 3.0 device is > > > > working fine. Because as I wrote in commit message, on Turris Mox was > > > > USB 2.0 device working fine, but USB 3.0 not. And maybe check in system > > > > > > update the log now? > > > > What do you want to update? > > Vinod, could you describe a bit more what is needed to update? Because > this patch fixes regression - USB 3.0 support on Turris Mox board. Sorry to have missed this... Somehow I misunderstood that the USB 3.0 was not working and log needs update... I will apply this once merge window closes -- ~Vinod -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [PATCH] phy: marvell: phy-mvebu-a3700-comphy: Reset COMPHY registers before USB 3.0 power on 2022-10-10 5:19 ` Vinod Koul @ 2022-10-17 5:39 ` Vinod Koul 0 siblings, 0 replies; 11+ messages in thread From: Vinod Koul @ 2022-10-17 5:39 UTC (permalink / raw) To: Pali Rohár Cc: linux-phy@lists.infradead.org, linux-kernel@vger.kernel.org On 10-10-22, 10:49, Vinod Koul wrote: > On 01-10-22, 01:45, Pali Rohár wrote: > > On Saturday 24 September 2022 10:31:27 Pali Rohár wrote: > > > > Vinod, could you describe a bit more what is needed to update? Because > > this patch fixes regression - USB 3.0 support on Turris Mox board. > > Sorry to have missed this... > > Somehow I misunderstood that the USB 3.0 was not working and log needs > update... I will apply this once merge window closes Applied now, thanks -- ~Vinod -- linux-phy mailing list linux-phy@lists.infradead.org https://lists.infradead.org/mailman/listinfo/linux-phy ^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2022-10-17 5:40 UTC | newest] Thread overview: 11+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2022-09-20 12:11 [PATCH] phy: marvell: phy-mvebu-a3700-comphy: Reset COMPHY registers before USB 3.0 power on Pali Rohár 2022-09-21 5:03 ` Shinichiro Kawasaki 2022-09-21 8:05 ` Pali Rohár 2022-09-21 12:44 ` Shinichiro Kawasaki 2022-09-21 12:57 ` Pali Rohár 2022-09-24 7:14 ` Vinod Koul 2022-09-24 8:31 ` Pali Rohár 2022-09-30 23:45 ` Pali Rohár 2022-10-09 12:07 ` Pali Rohár 2022-10-10 5:19 ` Vinod Koul 2022-10-17 5:39 ` 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).