Hi,
On 2018-06-01 16:08, Mats Karrman wrote:
Hi Peter,
On 2018-06-01 03:30, Peter Chen wrote:
After bisecting usb-next starting from tag 'v4.16' to current head I found
that the commit:
commit 4e88d4c083016454f179686529ae65d70b933b58
Author: Martin Blumenstingl <martin.blumenstingl@xxxxxxxxxxxxxx>
Date: Sat Mar 3 22:43:03 2018 +0100
usb: add a flag to skip PHY initialization to struct usb_hcd
causes a regression for me on my SolidRun Hummingboard (NXP i.MX6 DL
SoC with chipidea controller).
Example:
-- Cold boot of system.
-- Plug in USB memory stick --> Attached OK.
-- Mount disk --> OK, "ls" works
-- Unmount disk --> OK
-- Unplug USB stick --> Nothing happens. "udevadm monitor" see no events.
-- Plug in/unplug stick again --> Still nothing.
-- Plug in stick and try mounting --> Somehow causes both detach and attach
of the stick (mounting fails but mounting again now works).
-- All tested USB devices are working in a similar way. I.e first attach
after boot works and then trouble starts.
-- Tested using default device tree from kernel tree
(arch/arm/boot/dts/imx6dl-hummingboard.dts).
Please ask if you think I can help in any way to track down the issue.
Hi Mats,
I have tested the latest usb-next tree, the hot plug works at my imx6sx-sdb board.
Would you please check the value of hcd->skip_phy_initialization at the end of function host_start?
hcd->skip_phy_initialization=1
BR // Mats
And this is what the "decompiled" device tree entry for the USB controller and phy look like:
usb@2184200 {
compatible = "fsl,imx6q-usb", "fsl,imx27-usb";
reg = <0x2184200 0x200>;
interrupts = <0x0 0x28 0x4>;
clocks = <0x4 0xa2>;
fsl,usbphy = <0x2c>;
fsl,usbmisc = <0x29 0x1>;
dr_mode = "host";
ahb-burst-config = <0x0>;
tx-burst-size-dword = <0x10>;
rx-burst-size-dword = <0x10>;
status = "okay";
disable-over-current;
vbus-supply = <0x2d>;
};
usbphy@20ca000 {
compatible = "fsl,imx6q-usbphy", "fsl,imx23-usbphy";
reg = <0x20ca000 0x1000>;
interrupts = <0x0 0x2d 0x4>;
clocks = <0x4 0xb7>;
fsl,anatop = <0x2>;
phandle = <0x2c>;
};
So, using deprecated? "fsl,usbphy" instead of "phys", in case that matters.
// Mats
��.n��������+%������w��{.n�����{���)��jg��������ݢj����G�������j:+v���w�m������w�������h�����٥