Hello Sricharan, On 08/04/13 09:05, Sricharan R wrote: > On Thursday 04 April 2013 09:21 PM, Lubomir Popov wrote: >> V2 fixes line wrap issue of the patch itself. >> >> This fix is needed (but not sufficient) for USB EHCI operation. >> >> Signed-off-by: Lubomir Popov <lpo...@mm-sol.com> >> >> --- >> arch/arm/cpu/armv7/omap5/hw_data.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/arch/arm/cpu/armv7/omap5/hw_data.c >> b/arch/arm/cpu/armv7/omap5/hw_data.c >> index ced274e..e5e41fd 100644 >> --- a/arch/arm/cpu/armv7/omap5/hw_data.c >> +++ b/arch/arm/cpu/armv7/omap5/hw_data.c >> @@ -403,6 +403,7 @@ void enable_basic_uboot_clocks(void) >> }; >> >> u32 const clk_modules_hw_auto_essential[] = { >> + (*prcm)->cm_l3init_hsusbtll_clkctrl, >> 0 >> }; >> >> @@ -411,7 +412,6 @@ void enable_basic_uboot_clocks(void) >> (*prcm)->cm_l4per_i2c2_clkctrl, >> (*prcm)->cm_l4per_i2c3_clkctrl, >> (*prcm)->cm_l4per_i2c4_clkctrl, >> - (*prcm)->cm_l3init_hsusbtll_clkctrl, >> (*prcm)->cm_l3init_hsusbhost_clkctrl, >> (*prcm)->cm_l3init_fsusb_clkctrl, >> 0 > > No, how is this helping you. Are you using EHCI at SPL ? > Those usb clocks are anyways getting enabled at u-boot. > > Regards, > Sricharan >
Why SPL? This is in the enable_basic_uboot_clocks() function. The problem seems to be _when_ are they enabled. This fix (moving cm_l3init_hsusbtll_clkctrl from the clk_modules_explicit_en_essential[] array to clk_modules_hw_auto_essential[]) is something confirmed empirically (apart from the fact that it is so for the OMAP4, which gave me the hint why USB was not working). The following dump is for the SOM5 EVB (http://patchwork.ozlabs.org/patch/232739/) with all needed patches applied (this one, as well as http://patchwork.ozlabs.org/patch/232742/). Functional clocks are enabled/disabled in the board file. The boot script just sets a MAC address for the USB Ethernet controller to env. U-Boot SPL 2013.04-rc1-00400-g7f594d9 (Apr 02 2013 - 14:55:24) OMAP5430 ES1.0 OMAP SD/MMC: 0 reading u-boot.img reading u-boot.img U-Boot 2013.04-rc1-00400-g7f594d9 (Apr 02 2013 - 14:55:24) CPU : OMAP5430 ES1.0 Board: MM Solutions SOM5 EVB I2C: ready DRAM: 2 GiB MMC: OMAP SD/MMC: 0, OMAP SD/MMC: 1 Using default environment In: serial Out: serial Err: serial Net: No ethernet found. Hit any key to stop autoboot: 0 mmc0 is current device reading boot.scr 109 bytes read in 3 ms (35.2 KiB/s) Running bootscript from mmc0 ... ## Executing script at 82000000 SOM5_EVB # SOM5_EVB # usb start (Re)start USB... USB0: USB EHCI 1.00 scanning bus 0 for devices... 6 USB Device(s) found scanning usb for storage devices... 3 Storage Device(s) found scanning usb for ethernet devices... 1 Ethernet Device(s) found SOM5_EVB # usb tree USB device tree: 1 Hub (480 Mb/s, 0mA) | u-boot EHCI Host Controller | +-2 Mass Storage (480 Mb/s, 200mA) | FSC MEMORYBIRD USB2 C157040817120315AA | +-3 Hub (480 Mb/s, 2mA) | | | +-4 Mass Storage (480 Mb/s, 96mA) | | Generic Ultra Fast Media Reader 000000264001 | | | +-5 Mass Storage (480 Mb/s, 100mA) | Generic Mass Storage C88BB2CE | +-6 Vendor specific (480 Mb/s, 500mA) SOM5_EVB # Now, for the experiment, I just moved cm_l3init_hsusbtll_clkctrl back to clk_modules_explicit_en_essential[] and built again. As you can see, the result is a Data Abort exception: U-Boot SPL 2013.04-rc2-00020-g6b29a25-dirty (Apr 08 2013 - 11:14:14) OMAP5430 ES1.0 OMAP SD/MMC: 0 reading u-boot.img reading u-boot.img U-Boot 2013.04-rc2-00020-g6b29a25-dirty (Apr 08 2013 - 11:14:14) CPU : OMAP5430 ES1.0 Board: MM Solutions SOM5 EVB I2C: ready DRAM: 2 GiB MMC: OMAP SD/MMC: 0, OMAP SD/MMC: 1 Using default environment In: serial Out: serial Err: serial Net: No ethernet found. Hit any key to stop autoboot: 0 mmc0 is current device reading boot.scr 109 bytes read in 3 ms (35.2 KiB/s) Running bootscript from mmc0 ... ## Executing script at 82000000 SOM5_EVB # SOM5_EVB # usb start (Re)start USB... USB0: data abort MAYBE you should read doc/README.arm-unaligned-accesses pc : [<fef8f32c>] lr : [<fef738b4>] sp : feef2d50 ip : 00000034 fp : feef2dc4 r10: 00000000 r9 : fefbc0c4 r8 : feef2f40 r7 : 00000680 r6 : fefbc0c0 r5 : 000027da r4 : 4a062000 r3 : 00000000 r2 : 000027da r1 : 000027da r0 : 000027da Flags: nZcv IRQs off FIQs off Mode SVC_32 Resetting CPU ... resetting ... U-Boot SPL 2013.04-rc2-00020-g6b29a25-dirty (Apr 08 2013 - 11:14:14) OMAP5430 ES1.0 OMAP SD/MMC: 0 reading u-boot.img reading u-boot.img ... Best regards, Lubomir _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot