Hi Greg,
        Would "device" be better than "controller"? I would find that less
confusing (and would help the tab completion issue that Oliver mentioned).

                                                        regards,

                                                        Stephen.

On Tue, 2 Apr 2002, Greg KH wrote:

> Hi all,
> 
> Ok, here's a first cut at a directory restructure for the drivers/usb
> directory.  Please let me know if you like it or not (if no one
> responds, I'll assume you like it :)
> 
> drivers/usb will have the following subdirectories:
>       class/          all USB class drivers
>       controller/     all USB device controller drivers
>       core/           the USB core code (both for devices and hosts)
>       fs/             usbfs code
>       host/           all USB host controller drivers
>       misc/           all USB drivers not found anywhere else
>       net/            all USB network drivers
>       scanner/        all USB scanner drivers
>       serial/         all USB serial drivers
>       storage/        all USB storage drivers
>       video/          all USB video drivers
> 
> This scheme should handle all of the existing code, and allow the new
> usb device code to be integrated easily.  Yes, the specific usb device
> and host drivers for a specific type are contained in the same
> subdirectory, but that makes sense.  The Config.in and Makefile will
> sort everything out based on the configuration choices a user has made.
> 
> And yes, you can have subdirectories within the above directories if you
> wish (like video/pwc/ and video/ov511/ come to mind.)  Also, as common
> types of drivers end up in misc/, they can be moved to their own
> subdirectory if wanted (like the scanner drivers just did.)  It's also
> easy to pick up all of a specific type of driver and move them to a
> different place in the main tree (like moving the drivers/usb/net/
> directory to drivers/net/) if people want to in the future.
> 
> Here's how I would move all of the existing 2.5 code base into this
> directory structure (Config.help, Config.in, and Makefiles will probably
> need to be added to a few of the different subdirectories):
> 
> ----
> [greg@desk usb]$ ls *
> Config.help  Config.in  Makefile  usb-skeleton.c
> 
> class:
> acm.c    audio.h      hid-core.c   hiddev.c  hid-input.c  usbkbd.c
> audio.c  bluetooth.c  hid-debug.h  hid.h     printer.c    usbmouse.c
> 
> controller:
> 
> core:
> hcd.c  hcd.h  hub.c  hub.h  usb.c  usb-debug.c
> 
> fs:
> devices.c  devio.c  drivers.c  inode.c
> 
> host:
> Config.help  ehci-hcd.c  ehci-sched.c  ohci-hcd.c  uhci.c        usb-ohci.h
> Config.in    ehci-hub.c  Makefile      ohci-hub.c  uhci-debug.h  usb-uhci.c
> ehci-dbg.c   ehci-mem.c  ohci-dbg.c    ohci-mem.c  uhci.h        usb-uhci-debug.h
> ehci.h       ehci-q.c    ohci.h        ohci-q.c    usb-ohci.c    usb-uhci.h
> 
> misc:
> auerswald.c    dabusb.h   emi26.c     rio500.c      tiglusb.h
> dabfirmware.h  dc2xx.c    emi26_fw.h  rio500_usb.h  uss720.c
> dabusb.c       dsbr100.c  mdc800.c    tiglusb.c     wacom.c
> 
> net:
> catc.c      CDCEther.h  kawethfw.h  pegasus.h  usbnet.c
> CDCEther.c  kaweth.c    pegasus.c   rtl8150.c
> 
> scanner:
> hpusbscsi.c  hpusbscsi.h  microtek.c  microtek.h  scanner.c  scanner.h
> 
> serial:
> belkin_sa.c        io_fw_down2.h        keyspan_usa19w_fw.h      omninet.c
> belkin_sa.h        io_fw_down.h         keyspan_usa26msg.h       pl2303.c
> Config.help        io_ionsp.h           keyspan_usa28_fw.h       pl2303.h
> Config.in          io_tables.h          keyspan_usa28msg.h       safe_serial.c
> cyberjack.c        io_usbvend.h         keyspan_usa28xa_fw.h     usbserial.c
> digi_acceleport.c  ipaq.c               keyspan_usa28xb_fw.h     usb-serial.h
> empeg.c            ipaq.h               keyspan_usa28x_fw.h      visor.c
> ezusb_convert.pl   ir-usb.c             keyspan_usa49msg.h       visor.h
> ftdi_sio.c         keyspan.c            keyspan_usa49w_fw.h      whiteheat.c
> ftdi_sio.h         keyspan.h            kl5kusb105.c             whiteheat_fw.h
> io_16654.h         keyspan_pda.c        kl5kusb105.h             whiteheat.h
> io_edgeport.c      keyspan_pda_fw.h     Makefile                 xircom_pgs_fw.h
> io_edgeport.h      keyspan_pda.S        Makefile-keyspan_pda_fw  xircom_pgs.S
> io_fw_boot2.h      keyspan_usa18x_fw.h  mct_u232.c
> io_fw_boot.h       keyspan_usa19_fw.h   mct_u232.h
> 
> storage:
> datafab.c  dpcm.h          isd200.c    protocol.c  sddr09.h         unusual_devs.h
> datafab.h  freecom.c       isd200.h    protocol.h  shuttle_usbat.c  usb.c
> debug.c    freecom.h       jumpshot.c  scsiglue.c  shuttle_usbat.h  usb.h
> debug.h    initializers.c  jumpshot.h  scsiglue.h  transport.c
> dpcm.c     initializers.h  Makefile    sddr09.c    transport.h
> 
> video:
> ibmcam.c    pwc-ctrl.c   pwc_kiara.h  pwc-uncompress.c  stv680.c    usbvideo.h
> konicawc.c  pwc.h        pwc-misc.c   pwc-uncompress.h  stv680.h    vicam.c
> ov511.c     pwc-if.c     pwc_nala.h   se401.c           ultracam.c  vicam.h
> ov511.h     pwc-ioctl.h  pwc_timon.h  se401.h           usbvideo.c  vicamurbs.h
> ----
> 
> So, how does this look?
> 
> greg k-h
> 
> _______________________________________________
> [EMAIL PROTECTED]
> To unsubscribe, use the last form field at:
> https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
> 

-- 
 /------------------------------------+-------------------------\
|Stephen J. Gowdy                     | SLAC, MailStop 34,       |
|http://www.slac.stanford.edu/~gowdy/ | 2575 Sand Hill Road,     |
|http://calendar.yahoo.com/gowdy      | Menlo Park CA 94025, USA |
|EMail: [EMAIL PROTECTED]       | Tel: +1 650 926 3144     |
 \------------------------------------+-------------------------/



_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to