I've spend the day tracking down a weird behavior on a Beagleboard with
2.6.29-rc2-omap1.
If you select the mode for the musb to operate in OnTheGo mode
(CONFIG_USB_MUSB_OTG), and if you compile the gadget drivers as modules,
the the USB port will NOT be brought up at system boot, even if it has a
USB mini-A cable plugged in (and thus should be in host mode, not gadget
mode).
If you then modprobe an appropriate gadget driver, then the interface will
be brought up in host mode.
If you DON'T modprobe a gadget driver, AND you attempt to force the port
to host mode by
echo host > /sys/devices/platform/musb_hdrc/mode
Then we get a kernel page fault trying to change modes, even though we are
changing to host mode, which should be valid.
It seems to me that either the port should be brought up in host mode if
no gadget drivers are loaded, and an attempt to switch to gadget mode
should fail if no driver is loaded, OR there should be a config options to
set what the default gadget driver is in the absence of one being loaded
by the system.