While trying to make H4 USB work I had the following issues, attached are patches to fix those: - Fix the H4 board config for the wiring of the ISP1301 transceiver. The platform config had 4 wire configuration but the driver has the 3 wire mode hard-coded. It's also possible to set the ISP1301 to 4 wire mode, I wonder which one is more ideal? - In the OMAP OHCI driver use 24xx specific clocks when running on 24xx. Rename variables for usb_dc/usb_lb and usb_hhc to the more generic usb_ick and usb_fck. Platforms other than OMAP1 and 24xx are not supported by the driver at the moment. - For OMAP OHCI SYSCON_2[UHOST_EN] needs to be set, otherwise we get an external abort at OHCI init time. - Make the OMAP USB root hub power budget a platform specific option. Setting this to 0 will keep the current behaviour. There are boards not providing enough power for host mode, but still needing host mode functionality. This requires a special hub providing VBUS both on the downstream and upstream facing ports. For these .power_budget=-1 can be set meaning unlimited or no power budget control. Maybe a warning about the need for such a special hub would be nice? - ISP1301 driver updated according to the new I2C framework. - Update omap_h4_2420_defcofig to enable OTG, OHCI, Gadget driver. Use the onboard USB OTG plug instead of the download plug. With these and the specail self powered hub, I have a working OTG, at least I can connect in both host and gadget modes and can ping through usb0/eth1. --Imre