On Thu, Apr 13, 2006 at 09:18:03PM +0200, David Brownell wrote:
> On Thursday 13 April 2006 1:32 am, Jan Veldeman wrote:
>
> > The structure I'll be using is 1 platform driver which controls the
> > hardware and shared pieces, with on top of that a host and gadget
> > driver.
>
> And one puzzle would be the Kconfig ... that's a lot of code to get
> working right (do the host side on 2.6.recent!), so I suggest you
> have an explicit "Driver Mode" choice saying whether the board serves
> in host role, peripheral role, or as an OTG device.
I'll be using a recent 2.6 to do the development on.
As the board can be both host and peripheral at the same time, I was
thinking of doing it this way:
* have 1 "core" driver with separate host and gadget modules
(all tristate in Kconfig)
* have the platform_data specify which ports are host/peripheral/otg
(this platform data belongs to the core driver)
* the host and gadget modules can then ask the core driver which
port(s) it may use
>
> A three-component structure seems essential; the core should manage
> fifos and DMA (and eventually OTG role management, in conjunction
> with usbcore), and two c67300_{host,gadget}.c modules to handle the
> host and peripheral side APIs. It might work well to have different
> developers working in parallel on the host and peripheral sides, for
> all the non-core-code.
do you also have a suggestion for directory layout?
I don't think the "core" module belongs to the usb/core/,
but it should also not be placed under usb/host or usb/gadget.
I see it either as:
usb/
<some_name_to_be_invented>/c67x00_core.c
host/c67x00_host.c
gadget/c67x00_gadget.c
or everything in a separate directory:
usb/
control/ # or another name ;-)
c67x00/
c67x00_core.c
c67x00_host.c
c67x00_gadget.c
Best regards,
Jan
-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
_______________________________________________
[email protected]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel