1. 11 12月, 2010 3 次提交
  2. 01 12月, 2010 1 次提交
    • C
      USB: pxa: Add USB client support for Marvell PXA9xx/PXA168 chips · e7cddda4
      cxie4 提交于
      This patch add USB client support Marvell PXA9xx/PXA168 chips. The USB
      controller in PXA9xx/PXA168 is a High-Speed OTG controller. The available
      endpoints is different between PXA9xx and PXA168.
      
      NOTE:
      It is the first version of Marvell PXA9xx/PXA168 USB controller driver.
      The support for OTG mode will be added in later patch.
      PXA9xx and PXA168 has integrated UTMI PHY in the chips. The initialization
      for the PHY is a little different between PXA9xx and PXA168.
      Signed-off-by: NChao Xie <chao.xie@marvell.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      e7cddda4
  3. 17 11月, 2010 1 次提交
  4. 23 10月, 2010 2 次提交
  5. 11 8月, 2010 2 次提交
  6. 21 5月, 2010 4 次提交
  7. 03 3月, 2010 1 次提交
  8. 12 12月, 2009 2 次提交
  9. 20 8月, 2009 1 次提交
  10. 16 6月, 2009 4 次提交
    • X
      USB: Add Intel Langwell USB Device Controller driver · 5be19a9d
      Xiaochen Shen 提交于
      Intel Langwell USB Device Controller is a High-Speed USB OTG device
      controller in Intel Moorestown platform. It can work in OTG device mode
      with Intel Langwell USB OTG transceiver driver as well as device-only
      mode. The number of programmable endpoints is different through
      controller revision.
      
      NOTE:
      This patch is the first version Intel Langwell USB OTG device controller
      driver. The bug fixing is on going for some hardware and software
      issues.  Intel Langwell USB OTG transceiver driver and EHCI driver
      patches will be submitted later.
      
      Supported features:
       - USB OTG protocol support with Intel Langwell USB OTG transceiver
         driver (turn on CONFIG_USB_LANGWELL_OTG)
       - Support control, bulk, interrupt and isochronous endpoints
         (isochronous not tested)
       - PCI D0/D3 power management support
       - Link Power Management (LPM) support
      
      Tested gadget drivers:
       - g_file_storage
       - g_ether
       - g_zero
      
      The passed tests:
       - g_file_storage: USBCV Chapter 9 tests
       - g_file_storage: USBCV MSC tests
       - g_file_storage: from/to host files copying
       - g_ether: ping, ftp and scp files from/to host
       - Hotplug, with and without hubs
      
      Known issues:
       - g_ether: failed part of USBCV chap9 tests
       - LPM support not fully tested
      
      TODO:
       - g_ether: pass all USBCV chap9 tests
       - g_zero: pass usbtest tests
       - Stress tests on different gadget drivers
       - On-chip private SRAM caching support
      Signed-off-by: NXiaochen Shen <xiaochen.shen@intel.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      5be19a9d
    • B
      USB: gadget: add USB Audio Gadget driver · c6994e6f
      Bryan Wu 提交于
      Funtions added:
       - setup all the USB audio class device descriptors
       - handle class specific setup request
       - receive data from USB host by ISO transfer
       - play audio data by ALSA sound card
       - open and setup playback PCM interface
       - set default playback PCM parameters
       - provide playback functions for USB audio driver
       - provide PCM parameters set/get functions
      
      Test on:
       - Host: Ubuntu 8.10, kernel 2.6.27
       - Gadget: EZKIT-BF548 with ASoC AD1980 codec
      
      Todo:
       - add real Mute control code
       - add real Volume control code
       - maybe find another way to replace dynamic buffer handling
         with static buffer allocation
       - test on Windows system
       - provide control interface to handle mute/volume control
       - provide capture interface in the future
       - test on BF527, other USB device controler and other audio codec
      Signed-off-by: NBryan Wu <cooloney@kernel.org>
      Signed-off-by: NMike Frysinger <vapier@gentoo.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      c6994e6f
    • B
      USB: Gadget driver for Samsung HS/OtG block · 5b7d70c6
      Ben Dooks 提交于
      Driver support for the new high-speed/OtG block that is
      in the newer line of Samsung SoC devices such as the
      S3C64XX series.
      
      This driver does not currntly have DMA support enabled due
      to issues with buffer alignment which need to be sorted out.
      Signed-off-by: NBen Dooks <ben@simtec.co.uk>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      5b7d70c6
    • G
      USB: gadget: Add i.MX3x support to the fsl_usb2_udc driver · 54e4026b
      Guennadi Liakhovetski 提交于
      This patch adds support for i.MX3x (only tested with i.MX31 so far) ARM
      SoCs to the fsl_usb2_udc driver. It also moves PHY configuration before
      controller reset, because otherwise an ULPI PHY doesn't get a reset and
      doesn't function after a reboot. The problem with longer control transfers
      is still not fixed. The patch renames the fsl_usb2_udc.c file to
      fsl_udc_core.c to preserve the same module name for user-space
      backwards compatibility.
      Signed-off-by: NGuennadi Liakhovetski <lg@denx.de>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      54e4026b
  11. 08 1月, 2009 2 次提交
  12. 18 10月, 2008 1 次提交
  13. 17 10月, 2008 7 次提交
  14. 22 7月, 2008 9 次提交
    • D
      usb gadget: new "CDC Composite" gadget driver · 19e20680
      David Brownell 提交于
      This is a simple example of a composite gadget, combining two
      Communications Class Device (CDC) functions:  ECM and ACM.
      
      This provides a clear example of how the composite gadget framework
      is intended to work.  It's surprising that MS-Windows (or at least,
      XP and previous) won't "just work" with something this simple...
      
      One /proc/bus/usb/devices listing looks like:
      
        T:  Bus=03 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 46 Spd=480 MxCh= 0
        D:  Ver= 2.00 Cls=02(comm.) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
        P:  Vendor=0525 ProdID=a4aa Rev= 3.01
        S:  Manufacturer=Linux 2.6.26-rc6-pnut with net2280
        S:  Product=CDC Composite Gadget
        C:* #Ifs= 4 Cfg#= 1 Atr=c0 MxPwr=  2mA
        I:* If#= 0 Alt= 0 #EPs= 1 Cls=02(comm.) Sub=06 Prot=00 Driver=cdc_ether
        E:  Ad=83(I) Atr=03(Int.) MxPS=  16 Ivl=32ms
        I:  If#= 1 Alt= 0 #EPs= 0 Cls=0a(data ) Sub=00 Prot=00 Driver=cdc_ether
        I:* If#= 1 Alt= 1 #EPs= 2 Cls=0a(data ) Sub=00 Prot=00 Driver=cdc_ether
        E:  Ad=81(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
        E:  Ad=02(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
        I:* If#= 2 Alt= 0 #EPs= 1 Cls=02(comm.) Sub=02 Prot=01 Driver=cdc_acm
        E:  Ad=86(I) Atr=03(Int.) MxPS=   8 Ivl=32ms
        I:* If#= 3 Alt= 0 #EPs= 2 Cls=0a(data ) Sub=00 Prot=00 Driver=cdc_acm
        E:  Ad=84(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
        E:  Ad=05(O) Atr=02(Bulk) MxPS= 512 Ivl=0ms
      
      Not all USB peripheral controller hardware can support this driver.
      All the highspeed-capable peripheral controllers with drivers now in
      the mainline kernel seem to support this, as does omap_udc.  But
      many full speed controllers don't have enough endpoints, or (as with
      the PXA controllers) don't support altsettings.
      
      Lightly tested.
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      19e20680
    • D
      usb ethernet gadget: split RNDIS function · 45fe3b8e
      David Brownell 提交于
      This is a RNDIS function driver, extracted from the all-in-one
      Ethernet gadget driver.
      
      Lightly tested ... there seems to be a pre-existing problem when
      talking to Windows XP SP2, not quite sure what's up with that yet.
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      45fe3b8e
    • D
      usb ethernet gadget: split CDC Ethernet function · da741b8c
      David Brownell 提交于
      This is a "CDC Ethernet" (ECM) function driver, extracted from the
      all-in-one Ethernet gadget driver.
      
      This is a good example of how to implement interface altsettings.
      In fact it's currently the only such example in the gadget stack,
      pending addition of OBEX support.
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      da741b8c
    • D
      usb ethernet gadget: split CDC Subset function · 8a40819e
      David Brownell 提交于
      This is a simple "CDC Subset" (and MCCI "SAFE") function driver, extracted
      from the all-in-one Ethernet gadget driver.
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      8a40819e
    • D
      usb ethernet gadget: split out network core · 2b3d942c
      David Brownell 提交于
      Abstract the peripheral side Ethernet-over-USB link layer code from
      the all-in-one Ethernet gadget driver into a component that can be
      called by various functions, so the various flavors can be split
      apart and selectively reused.
      
      A notable difference from the approach taken with the serial link
      layer code (beyond talking to NET not TTY) is that because of the
      initialization requirements, this only supports one network link.
      (And one set of Ethernet link addresses.)
      
      That is, each configuration may have only one instance of a network
      function.  This doesn't change behavior; the current code has that
      same restriction.  If you want multiple logical links, that can
      easily be done using network layer tools.
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      2b3d942c
    • D
      usb gadget serial: split out generic serial function · 61d8baea
      David Brownell 提交于
      Split out the generic serial support into a "function driver".  This
      closely mimics the ACM support, but with a MUCH simpler control model.
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      61d8baea
    • D
      usb gadget serial: split out CDC ACM function · 4d5a73dc
      David Brownell 提交于
      Split out CDC ACM parts of "gadget serial" to a "function driver".
      Some key structural differences from the previous ACM support, shared
      with with the generic serial function (next patch):
      
       - As a function driver, it can be combined with other functions.
         One gadget configuration could offer both serial and network
         links, as an example.
      
       - One serial port can be exposed in multiple configurations;
         the /dev/ttyGS0 node could be exposed regardless of which
         config the host selected.
      
       - One configuration can expose multiple serial ports, such as
         ttyGS0, ttyGS1, ttyGS2, and ttyGS3.
      
      This code should be a lot easier to understand than the previous
      all-in-one-big-file version of the driver.
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      4d5a73dc
    • D
      usb gadget zero: use composite gadget framework · 097db1d0
      David Brownell 提交于
      Update Gadget Zero to use the more modular versions of the loopback
      and source/sink configuration drivers which build on the new gadget
      framework code.
      
      The core code is a LOT simpler, and it should be much easier now to
      understand how the parts fit together.  The conversion is an overall
      source shrink in terms of this gadget, since it uses more midlayer
      support.  However, it's an overall increase in object size because
      there's less sharing between the two configurations (improves code
      clarity) and because the midlayer is a bit more functional than this
      driver actually needs.
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      097db1d0
    • D
      usb gadget: use new serial core · a7707adf
      David Brownell 提交于
      Teach "gadget serial" to use the new abstracted (and bugfixed) TTY glue,
      and remove all the orignal tangled-up code.  Update the documentation
      accordingly.  This is a net object code shrink and cleanup; it should
      make it a lot easier to see how the TTY glue should accomodate updates
      to the TTY layer, be bugfixed, etc.
      
      Notable behavior changes include:  it can now support getty even when
      there's no USB connection; it fits properly into the mdev/udev world;
      and RX handling is better (throttling works, and low latency).
      
      Configurations with scripts setting up the /dev/ttygserial device node
      (with "experimental" major number) may want to change that to be a
      symlink pointing to the /dev/ttyGS0 file, as a migration aid; else,
      just switch entirely over to mdev/udev.
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      a7707adf