RE: usb: udc-core: Dual gadget issue in v3.1

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,
> > > > Hi,
> > > >> On Thu, Oct 13, 2011 at 12:50:55PM +0530, Gupta, Ajay Kumar
> wrote:
> > > >>> We are facing an issue in AM335x based custom board which has
> > > >>> two
> > > musb
> > > >>> port.
> > > >>>
> > > >>> a) musb0  ID pin is floating and have micro-B plug receptacle
> > > >>> connector. [DEVICE ONLY]
> > > >>> b) musb1  ID pin is grounded and have standard-A plug receptacle
> > > >>> connector. [HOST ONLY]
> > > >>>
> > > >>> We are using udc-core in linux v3.1-rc8 kernel. This kernel only
> > > >>> provides option for selecting gadget driver for first instance
> > > >>> only
> > > as
> > > >>> builtin.
> > > >>
> > > >> why don't you mark all gadget drivers as modules ? I do that all
> > > >> the
> > > >> time:
> > > >
> > > > This wouldn't help if we want to use musb1 (host only) port during
> > > bootup so that root file system on a pen drive connected to it can
> > > be mounted.
> > >
> > > I don't think it hurts that use case as the host driver is enabled
> > > by the platform data without other sections of the kernel having it
> > > hard- coded to a port.
> >
> > My comment was w.r.t current musb driver which needs gadget module to
> > be Inserted and why we can't have gadget as modules (as suggested by
> > Felipe
> > above) for host only ports in such use case.
> 
> you misunderstood me. I said that host-only ports, should not need
> anything. See the switch below.

As explained my comments was w.r.t current musb driver for which you
Suggested to use all gadget as module.

Ideally there should not be any need for gadget module for host only
ports.

I can see below two types of issue currently.

A) Limitation  in musb driver which requires gadget driver to be available
Even for host only ports.

B) There is no option in menuconfig to select two gadget modules for two
OTG ports in built-in mode.

If A) above is solved then B) would not be needed for boards which has
first port as device only and *second* port as host only. If a board
has first port host only and second port as device only then fix A)
alone will not help.

We need to have both A) and B) fixed for boards which have both musb port
as OTG capable. (means they have micro-AB receptacle)

> 
> > If we have modified musb driver where host only port can be
> > initialized then there is no discussion needed for gadget module or
> > builtin for such ports.
> 
> isn't this what I suggested before ??

Misunderstanding and so clarified above.
> 
> > > >> You can add runtime checks based on platform_data. Something
> like:
> > > >>
> > > >> switch (pdata->mode) {
> > > >> case MUSB_HOST:
> > > >>    start_host();
> > > >>    break;
> > > >> case MUSB_PERIPHERAL:
> > > >>    start_gadget();
> > > >>    break;
> > > >> case MUSB_OTG:
> > > >>    start_gadget()
> > > >>    start_host();
> > > >>    break;
> > > >> default:
> > > >>    error();
> > > >> }
> > > >>
> > > >> which means that for a port which is host-only, it won't require
> > > >> a gadget driver and for a port which is gadget-only, it won't
> > > >> start
> > > host
> > > >> stack.
> > > >
> > > > If so then how about the menuconfig option for gadget driver for
> > > > such
> > > host only port? Shouldn't the gadget driver option be unavailable
> > > for such ports?
> 
> you can't change menuconfig for a particular port on a controller.

Clarified above.

Ajay
> 
> --
> balbi
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux