On Thu, Nov 24, 2011 at 11:10:55AM +0100, Heiko Schocher wrote: > Hello Felipe, > > Felipe Balbi wrote: > > On Tue, Nov 15, 2011 at 10:04:01PM +0300, Sergei Shtylyov wrote: > >> Hello. > >> > >> On 11/15/2011 12:07 AM, Felipe Balbi wrote: > >> > >>>>> commit 622859634a663c5e55d0e2a2cdbb55ac058d97b3 > >>>>> Author: Felipe Balbi<balbi@xxxxxx> > >>>>> Date: Wed Jun 22 17:28:09 2011 +0300 > >>>>> usb: musb: drop a gigantic amount of ifdeferry > >>>>> dropped a lot of ifdefs, also the USB_MUSB_HOST, USB_MUSB_PERIPHERAL > >>>>> and USB_MUSB_OTG defines, which are used in arch/arm/mach-davinci/usb.c > >>>>> Drop them in arch/arm/mach-davinci/usb.c and set otg as mode. > >>>>> Signed-off-by: Heiko Schocher<hs@xxxxxxx> > >>>>> Cc: Felipe Balbi<balbi@xxxxxx> > >>>>> Cc: Sergei Shtylyov<sshtylyov@xxxxxxxxxxxxx> > >>>>> Cc: linux-usb@xxxxxxxxxxxxxxx > >>>>> Cc: Wolfgang Denk<wd@xxxxxxx> > >>>>> --- > >>>>> patch checked with checkpatch, no errors/warnigs > >> [...] > >> > >>>>> diff --git a/arch/arm/mach-davinci/usb.c b/arch/arm/mach-davinci/usb.c > >>>>> index 23d2b6d..6f72b6a 100644 > >>>>> --- a/arch/arm/mach-davinci/usb.c > >>>>> +++ b/arch/arm/mach-davinci/usb.c > >>>>> @@ -42,14 +42,7 @@ static struct musb_hdrc_config musb_config = { > >>>>> }; > >>>>> > >>>>> static struct musb_hdrc_platform_data usb_data = { > >>>>> -#if defined(CONFIG_USB_MUSB_OTG) > >>>>> - /* OTG requires a Mini-AB connector */ > >>>>> .mode = MUSB_OTG, > >>>>> -#elif defined(CONFIG_USB_MUSB_PERIPHERAL) > >>>>> - .mode = MUSB_PERIPHERAL, > >>>>> -#elif defined(CONFIG_USB_MUSB_HOST) > >>>>> - .mode = MUSB_HOST, > >>>>> -#endif > >>>>> .clock = "usb", > >>>>> .config =&musb_config, > >>>>> }; > >>>> This is not a correct patch. DM644x EVM board for example doesn't > >>>> have OTG connector, only host, so we need more subtle logic here. > >>>> Maybe I'll come up with something when I'm back from vacations next > >>>> week... > >>> it doesn't have the connector, but the underlying HW is OTG-capable. We > >>> could hack a host cable to unground ID-pin > >> The ID pin is just not the part of the connector I think -- it's > >> normal 4-signal A-type receptacle, not mini- or micro- one. > >> > >>> and have peripheral side working for instance. > >> Then what's the point of the '.mode' field at all -- if we could > >> hack the hardware anyway? > > > > no point whatsoever, do you want to send a patch removing that ? > > It is used in drivers/usb/musb/musb_core.c musb_init_controller(), so > we could not remove it ... we need to setup up it with the right value, > as my patch http://permalink.gmane.org/gmane.linux.usb.general/54512 > did ... > > BTW: I am trying to get a solution for my problem, mentioned here: > > http://permalink.gmane.org/gmane.linux.usb.general/54505 > (timing issue in da8xx_musb_interrupt()) > > but I still have no real idea ... it can be removed from there too. If we're always building the driver as OTG, what's the point in having that ? If the controller is always OTG-capable, what's the point in having that ? -- balbi
Attachment:
signature.asc
Description: Digital signature