Hi, On Tue, Nov 03, 2009 at 11:28:04PM +0100, ext Bill Gatliff wrote: > I'm back! :) This time, it's because my Beagleboard-like platform > hangs hard during boot if I call usb_musb_init(). > > There are more differences between my platform and Beagleboard in this > area, namely that I'm using a different USB transceiver and I'm on hs0. > But why would the platform hang hard during boot? > > Here are what I think are the relevant parts of my config: > > CONFIG_SND_USB=y > # CONFIG_SND_USB_AUDIO is not set > # CONFIG_SND_USB_CAIAQ is not set > CONFIG_USB_SUPPORT=y > CONFIG_USB_ARCH_HAS_HCD=y > CONFIG_USB_ARCH_HAS_OHCI=y > CONFIG_USB_ARCH_HAS_EHCI=y > CONFIG_USB=y > CONFIG_USB_DEBUG=y > CONFIG_USB_ANNOUNCE_NEW_DEVICES=y > CONFIG_USB_EHCI_HCD=y > # CONFIG_USB_EHCI_ROOT_HUB_TT is not set > # CONFIG_USB_EHCI_TT_NEWSCHED is not set > # CONFIG_USB_OXU210HP_HCD is not set > # CONFIG_USB_ISP116X_HCD is not set > # CONFIG_USB_ISP1760_HCD is not set > # CONFIG_USB_ISP1362_HCD is not set > CONFIG_USB_OHCI_HCD=y > # CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set > # CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not set > CONFIG_USB_OHCI_LITTLE_ENDIAN=y > CONFIG_USB_MUSB_HDRC=y > CONFIG_USB_MUSB_SOC=y > # OMAP 343x high speed USB support > CONFIG_USB_MUSB_HOST=y > # CONFIG_USB_MUSB_PERIPHERAL is not set > # CONFIG_USB_MUSB_OTG is not set > CONFIG_USB_MUSB_HDRC_HCD=y > # CONFIG_MUSB_PIO_ONLY is not set > CONFIG_USB_INVENTRA_DMA=y > CONFIG_USB_MUSB_DEBUG=y > CONFIG_NOP_USB_XCEIV=y > > I also created some new mux entries that I need: > > omap_cfg_reg(R21_3430_USB0HS_PHY_CLK); > omap_cfg_reg(R23_3430_USB0HS_PHY_STP); > omap_cfg_reg(P23_3430_USB0HS_PHY_DIR); > omap_cfg_reg(R22_3430_USB0HS_PHY_NXT); > omap_cfg_reg(T24_3430_USB0HS_PHY_D0); > omap_cfg_reg(T23_3430_USB0HS_PHY_D1); > omap_cfg_reg(U24_3430_USB0HS_PHY_D2); > omap_cfg_reg(U23_3430_USB0HS_PHY_D3); > omap_cfg_reg(W24_3430_USB0HS_PHY_D4); > omap_cfg_reg(V23_3430_USB0HS_PHY_D5); > omap_cfg_reg(W23_3430_USB0HS_PHY_D6); > omap_cfg_reg(T22_3430_USB0HS_PHY_D7); > > I'm even doing this, which I'm not sure is necessary: > > ick = clk_get(NULL, "ick"); > if (ick) clk_enable(ick); > ... > usb_musb_init(); > ... > > > Any ideas? Thanks!! test with omap-debug branch, enable CONFIG_LL_DEBUG and see what's going on. I'm guessing you didn't enable any transceiver driver and you're getting an oops. -- balbi -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html