1. 17 6月, 2011 1 次提交
  2. 11 4月, 2011 1 次提交
  3. 30 3月, 2011 1 次提交
    • A
      net/usb: Ethernet quirks for the LG-VL600 4G modem · 7a635ea9
      Andrzej Zaborowski 提交于
      This adds a driver for the CDC Ethernet part of this modem.  The
      device's ID is blacklisted in cdc_ether.c and is white-listed in
      this new driver because of the quirks needed to make it useful.
      The modem's firmware exposes a CDC ACM port for modem control and a
      CDC Ethernet port for network data.  The descriptors look fine but
      both ports actually are some sort of multiplexers requiring non-
      standard headers added/removed from every packet or they get
      ignored.  All information is based on a usb traffic log from a
      Windows machine.
      
      On the Verizon 4G network I've seen speeds up to 1.1MB/s so far with
      this driver, a speed-o-meter site reports 16.2Mbps/10.5Mbps.
      Userspace scripts are required to talk to the CDC ACM port.
      Signed-off-by: NAndrzej Zaborowski <balrogg@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      7a635ea9
  4. 07 12月, 2010 1 次提交
    • A
      USB CDC NCM host driver · 900d495a
      Alexey Orishko 提交于
      The patch provides USB CDC NCM host driver support in the Linux Kernel.
      
      Changes:
      drivers/net/usb/cdc_ncm.c:
      - initial submission of the CDC NCM host driver;
      - verified on Intel 32/64 bit, Intel Atom, ST-Ericsson U8500 (ARM)
      - throughput measured over 100 Mbits duplex;
      - driver supports 16-bit NTB format only, but it is more than enough for
        transfers up to 64K;
      - driver can handle up to 32 datagrams in received NTB;
      - timer is used to collect several packets in Tx direction
      
      drivers/net/usb/Kconfig:
      - a new entry to compile CDC NCM host driver
      drivers/net/usb/Makefile:
      - a new entry to compile CDC NCM host driver
      Signed-off-by: NAlexey Orishko <alexey.orishko@stericsson.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      900d495a
  5. 09 9月, 2010 1 次提交
    • O
      introduce cx82310_eth: Conexant CX82310-based ADSL router USB ethernet driver · cc28a20e
      Ondrej Zary 提交于
      This patch introduces cx82310_eth driver - driver for USB ethernet port of
      ADSL routers based on Conexant CX82310 chips. Such routers usually have
      ethernet port(s) too which are bridged together with the USB ethernet port,
      allowing the USB-connected machine to communicate to the network (and also
      internet through the ADSL, of course).
      
      This is my first driver, so please check thoroughly. As there's no protocol
      documentation, it was done with usbsnoop dumps from Windows driver, some
      parts (the commands) inspired by cxacru driver and also other usbnet drivers.
      The driver passed my testing - some real work and also pings sized from 0 to
      65507 B.
      
      The only problem I found is the ifconfig error counter. When I return 0 (or 1
      but empty skb) from rx_fixup(), usbnet increases the error counter although
      it's not an error condition (because packets can cross URB boundaries). Maybe
      the usbnet should be fixed to allow rx_fixup() to return empty skbs (or some
      other value, e.g. 2)?
      
      The USB ID of my device is 0x0572:0xcb01 which conflicts with some ADSL modems
      using cxacru driver (they probably use the same chipset but simpler
      firmware). The modems seem to use bDeviceClass 0 and iProduct "ADSL USB
      MODEM", my router uses bDeviceClass 255 and iProduct "USB NET CARD". The
      driver matches only devices with class 255 and checks for the iProduct string
      during init. I already posted a patch for the cxacru driver to ignore these
      devices.
      Signed-off-by: NOndrej Zary <linux@rainbow-software.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      cc28a20e
  6. 01 5月, 2010 1 次提交
  7. 28 4月, 2010 1 次提交
    • E
      net/usb: add sierra_net.c driver · eb4fd8cd
      Elina Pasheva 提交于
      Re-submitted based on comments from netdev community.
      Summary of the changes:
      1. Improved error handling.
      2. Added the missing timeout arguments to usb_control_msg().
      
      The following is a new Linux driver which exposes certain models of Sierra
      Wireless modems to the operating system as Network Interface Cards (NICs).
      
      This driver requires a version of the sierra.c driver which supports
      blacklisting to work properly. The blacklist in sierra.c rejects the interfaces
      claimed by sierra_net.c. Likewise, the sierra_net.c driver only accepts
      (i.e. whitelists) the interface(s) used for USB-to-WWAN traffic.
      The version of sierra.c which supports blacklisting is
      available from the sierra wireless knowledge base page for older kernels. It is
      also available in Linux kernel starting from version 2.6.31.
      
      This driver works with all Sierra Wireless devices configured with PID=68A3
      like USB305, USB306 provided the corresponding firmware version is I2.0
      (for USB305) or M3.0 (for USB306) and later.
      This driver will not work with earlier firmware versions than the ones shown
      above. In this case the driver will issue an error message indicating
      incompatibility and will not serve the device's USB-to-WWAN interface.
      
      Sierra_net.c sits atop a pre-existing Linux driver called usbnet.c.
      A series of hook functions are provided in sierra_net.c which are called by
      usbnet.c in response to a particular condition such as receipt or transmission
      of a data packet. As such, usbnet.c does most of the work of making
      a modem appear to the system as a network device and for properly exchanging
      traffic between the USB subsystem and the Network card interface.
      Sierra_net.c is concerned with managing the data exchanged between the
      USB-to-WWAN interface and the upper layers of the operating system.
      Signed-off-by: NElina Pasheva <epasheva@sierrawireless.com>
      Signed-off-by: NRory Filer <rfiler@sierrawireless.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      eb4fd8cd
  8. 22 4月, 2010 1 次提交
  9. 17 3月, 2010 1 次提交
  10. 04 11月, 2009 1 次提交
  11. 22 7月, 2009 1 次提交
  12. 19 6月, 2009 1 次提交
  13. 05 5月, 2009 1 次提交
    • O
      usbnet: CDC EEM support (v5) · 9f722c09
      Omar Laazimani 提交于
      This introduces a CDC Ethernet Emulation Model (EEM) host side
      driver to support USB EEM devices.
      
      EEM is different from the Ethernet Control Model (ECM) currently
      supported by the "CDC Ethernet" driver.  One key difference is
      that it doesn't require of USB interface alternate settings to
      manage interface state; some maldesigned hardware can't handle
      that part of USB.  It also avoids a separate USB interface for
      control and status updates.
      
      [ dbrownell@users.sourceforge.net: fix skb leaks, add rx packet
      checks, improve fault handling, EEM conformance updates, cleanup ]
      Signed-off-by: NOmar Laazimani <omar.oberthur@gmail.com>
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      9f722c09
  14. 21 4月, 2009 1 次提交
  15. 09 10月, 2008 1 次提交
  16. 14 8月, 2008 1 次提交
  17. 12 6月, 2008 1 次提交
    • G
      HSO: add option hso driver · 72dc1c09
      Greg Kroah-Hartman 提交于
      This driver is for a number of different Option devices.  Originally
      written by Option and Andrew Bird, but cleaned up massivly for
      acceptance into mainline by me and others.
      
      Many thanks to the following for their help in cleaning up the driver by
      providing feedback and patches to it:
      	- Paulius Zaleckas <paulius.zaleckas@teltonika.lt>
      	- Oliver Neukum <oliver@neukum.org>
      	- Alan Cox <alan@lxorguk.ukuu.org.uk>
      	- Javier Marcet <javier@krausbeck.org>
      
      Cc: Andrew Bird <ajb@spheresystems.co.uk>
      Cc: Javier Marcet <javier@krausbeck.org>
      Cc: Filip Aben <f.aben@option.com>
      Cc: Paulius Zaleckas <paulius.zaleckas@teltonika.lt>
      Cc: Oliver Neukum <oliver@neukum.org>
      Acked-by: NAlan Cox <alan@lxorguk.ukuu.org.uk>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
      72dc1c09
  18. 29 3月, 2008 1 次提交
  19. 07 11月, 2007 1 次提交
    • A
      [NET]: Let USB_USBNET always select MII. · 4aa92cd9
      Adrian Bunk 提交于
      All this USB_USBNET_MII trickery is simply not worth it considering how
      few code it saves.
      
      As a side effect, this also fixes the following compile error reported
      by Toralf Frster:
      
      <--  snip  -->
      
      ...
        LD      .tmp_vmlinux1
      drivers/built-in.o: In function `usbnet_set_settings':
      (.text+0xf1876): undefined reference to `mii_ethtool_sset'
      drivers/built-in.o: In function `usbnet_get_settings':
      (.text+0xf1836): undefined reference to `mii_ethtool_gset'
      drivers/built-in.o: In function `usbnet_get_link':
      (.text+0xf18d6): undefined reference to `mii_link_ok'
      drivers/built-in.o: In function `usbnet_nway_reset':
      (.text+0xf18f6): undefined reference to `mii_nway_restart'
      make: *** [.tmp_vmlinux1] Error 1
      
      <--  snip  -->
      Signed-off-by: NAdrian Bunk <bunk@kernel.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      4aa92cd9
  20. 20 10月, 2007 1 次提交
  21. 10 6月, 2007 1 次提交
    • S
      net: fix typo in drivers/net/usb/Kconfig · c0811987
      Sam Ravnborg 提交于
      Replace invisible character with a space.
      
      The diff looks like this on my terminal:
      -        <A0>Choose this option if you're using a host-to-host cable
      -        <A0>with one of these chips.
      +         Choose this option if you're using a host-to-host cable
      +         with one of these chips.
      
      Reported by: Massimo Maiurana <maiurana@gmail.com>
      Signed-off-by: NSam Ravnborg <sam@ravnborg.org>
      Cc: Massimo Maiurana <maiurana@gmail.com>
      Signed-off-by: NJeff Garzik <jeff@garzik.org>
      c0811987
  22. 10 5月, 2007 1 次提交
  23. 24 2月, 2007 1 次提交
  24. 17 2月, 2007 3 次提交
  25. 08 2月, 2007 1 次提交
    • O
      rndis_host learns ActiveSync basics · ad55d71a
      Ole Andre Vadla Ravnas 提交于
      Windows Mobile 5 based devices described as supporting "ActiveSync":
      
       - Speak RNDIS but lack the CDC and union descriptors.  This patch
         updates the cdc ethernet code to fake ACM descriptors we need.
      
       - Require RNDIS_MSG_QUERY messages to include a buffer of the size the
         response should generate.  This patch updates the rndis host code to
         pass this will-be-ignored data.
      
      The resulting RNDIS host code has been reported to work with several
      WM5 based devices.
      
      (Note that a fancier patch is available at synce.sf.net.)
      
      
      Some bugfixes, affecting not just ActiveSync:
          (a)	when cleaning up after RNDS init fails, scrub the second interface
      	just like cdc_ether does, so disconnect won't oops.
          (b)	handle peripherals that use the pad-to-end-of-packet option; some
      	devices can't talk to us if that option doesn't work.
          (c)	when choosing configurations, don't forget about an RNDIS config
      	just because the RNDIS driver is dynamically linked.
      
      Cleanup, streamlining, bugfixes, Kconfig, and matching hub driver update.
      Also for paranoia's sake, refuse to talk to something that looks like a
      real modem instead of RNDIS.
      Signed-off-by: NOle Andre Vadla Ravnaas <oleavr@gmail.com>
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      
      ad55d71a
  26. 04 11月, 2006 1 次提交
    • D
      USB: use MII hooks only if CONFIG_MII is enabled · 18ee91fa
      David Brownell 提交于
      Fix mcs7830 patch
      
      The recent mcs7830 update to make the MII support sharable goofed various
      pre-existing configurations in two ways:
      
        - it made the usbnet infrastructure reference MII symbols even
          when they're not needed in the kernel being built
      
        - it didn't enable MII along with the mcs7830 minidriver
      
      This patch fixes these two problems.
      
      However, there does seem to be a Kconfig reverse dependency bug in that MII
      gets wrongly enabled in some cases (like USBNET=y and USBNET_MII=n); I think
      I've noticed that same problem in other situations too.  So the result can
      mean kernels being bloated by stuff that's needlessly enabled ... better
      than wrongly being disabled, but contributing to bloat.
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      18ee91fa
  27. 18 10月, 2006 1 次提交
    • A
      USB: driver for mcs7830 (aka DeLOCK) USB ethernet adapter · 2a36d708
      Arnd Bergmann 提交于
      This driver adds support for the DeLOCK USB ethernet adapter
      and potentially others based on the MosChip MCS7830 chip.
      
      It is based on the usbnet and asix drivers as well as the
      original device driver provided by MosChip, which in turn
      was based on the usbnet driver.
      
      It has been tested successfully on an OHCI, but interestingly
      there seems to be a problem with the mcs7830 when connected to
      the ICH6/EHCI in my thinkpad: it keeps receiving lots of
      broken packets in the RX interrupt. The problem goes away when
      I'm using an active USB hub, so I assume it's not related to
      the device driver, but rather to the hardware.
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      
      2a36d708
  28. 06 6月, 2006 1 次提交
  29. 29 10月, 2005 1 次提交
  30. 09 9月, 2005 9 次提交
    • D
      [PATCH] USB: usbnet (9/9) module for pl2301/2302 cables · 090ffa9d
      David Brownell 提交于
      This wraps up the conversion of the "usbnet" driver structure, by
      moving the Prolific PL-2201/2302 minidriver to a module of its own.
      It also includes some minor cleanups to the remaining "usbnet" file,
      notably removing that long changelog at the top.
      
      Minor historical note:  Linux 2.2 first called the driver for
      this hardware "plusb".
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      090ffa9d
    • D
      [PATCH] USB: usbnet (8/9) module for RNDIS devices · 64e04910
      David Brownell 提交于
      This adds host-side RNDIS support to the "usbnet" driver, so Linux can talk
      to various devices (often based on WinCE) that otherwise only Windows could
      talk to.
      
      Tested with little-endian Linux talking to a Linux-USB Ethernet/RNDIS based
      peripheral.  This also includes updates from Eddie C. Dost <ecd@brainaid.de>
      for big-endian SPARC Linux talking to a Nokia 9500 Communicator.
      
      It's still marked as EXPERIMENTAL because this code is so young.  This
      ought to let Linux to work with various cable modems that previously
      would have been "Windows Only".
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      64e04910
    • D
      [PATCH] USB: usbnet (7/9) module for CDC Ethernet · 4324fd49
      David Brownell 提交于
      Makes the CDC Ethernet support live in a separate driver module.
      This module is a bit special since it exports utility functions
      that are reused by the the Zaurus and RNDIS drivers, but it's
      not "core" like usbnet itself.
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      4324fd49
    • D
      [PATCH] USB: usbnet (6/9) module for Zaurii and compatibles · 0aa599c5
      David Brownell 提交于
      This moves usbnet support for Zaurus and compatibles into its own module.
      Other than exporting a couple of helper functions, this just involved
      shuffling some code and updating the comments.
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      0aa599c5
    • D
      [PATCH] USB: usbnet (5/9) module for genesys gl620a cables · 47ee3051
      David Brownell 提交于
      This moves the GeneSys GL620USB-A support into its own driver file.
      It also fixes a "return wrong skb" glitch in the rx unbatching, as
      recently reported, and adds some missing byteswaps in the special
      "genelink" headers (so it might now work on big-endian Linux).
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      47ee3051
    • D
      [PATCH] USB: usbnet (4/9) module for net1080 cables · 904813cd
      David Brownell 提交于
      As with the "cdc_subset" and "asix" drivers, this just moves the net1080
      support into its one driver module.  In this case there's a small bit of
      extra cleanup involved, moving some funky framing logic into the tx_fixup()
      routine (resolving a long overdue FIXME).
      
      Minor historical note:  "usbnet" started out as "net1080", then got
      generalized to make it easier for other network drivers to reuse the
      urb queueing and fault management code here.
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      904813cd
    • D
      [PATCH] USB: usbnet (3/9) module for ASIX Ethernet adapters · 2e55cc72
      David Brownell 提交于
      This patch moves the ASIX AX8817x driver into its own file, just using
      the "usbnet" infrastructure as a utility library.
      
       - As with "cdc_subset" this involved minor Kconfig/kbuild tweaks,
         moving code from one file to another, and exporting a few functions.
      
       - This includes updates from Jamie Painter to add (and use) a new hook
         to handle the different maximum transfer sizes for rx and tx sides.
      
       - Also from Jamie, some bugfixes:
          * MDIO byteorder (to address some PPC media negotiation problems);
          * Force alignment at key spots when using ax88772 framing (on some
            embedded hardware, the network stack will break otherwise);
          * Address some link reset problems.
      
      It also makes this driver use the standard (5 seconds vs half second)
      control timeouts used elsewhere in USB; and wraps a few lines before
      the 80th column (which previously needed it).
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      2e55cc72
    • D
      [PATCH] USB: usbnet (2/9) module for simple network links · 38bde1d4
      David Brownell 提交于
      This patch creates the first of several separate "minidriver" modules
      for "usbnet".  This one handles only the very simplest hardware, which
      can be handled almost entirely by the "usbnet" core.
      
          - Move device-specific bits into new "cdc_subset.c" driver,
            shrinking "usbnet" by a bunch;
      
          - Export the functions needed to support this minidriver
            (with EXPORT_SYMBOL_GPL);
      
          - Update Kconfig and kbuild accordingly.
      
      This one handles about a dozen different device types, with the most
      notable ones being Gumstix and most Linux-based PDAs (except Zaurus
      running that ancient code from Sharp).
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      38bde1d4
    • D
      [PATCH] USB: usbnet (1/9) clean up framing · f29fc259
      David Brownell 提交于
      This starts to prepare the core of "usbnet" to know less about various
      framing protocols that map Ethernet packets onto USB, so "minidrivers"
      can be modules that just plug into the core.
      
        - Remove some framing-specific code that cluttered the core:
      
            * net->hard_header_len records how much space to preallocate;
              now drivers that add their own framing (Net1080, GeneLink,
      	Zaurus, and RNDIS) will have smoother TX paths.  Even for
      	the drivers (Zaurus, Net1080) that need trailers.
      
            * defines new dev->hard_mtu, using this "hardware" limit to
              check changes to the link's settable "software" mtu.
      
            * now net->hard_header_len and dev->hard_mtu are set up in the
              driver bind() routines, if needed.
      
        - Transaction ID is no longer specific to the Net1080 framing;
          RNDIS needs one too.
      
        - Creates a new "usbnet.h" header with declarations that are shared
          between the core and what will be separate modules.
      
        - Plus a couple other minor tweaks, like recognizing -ESHUTDOWN
          means the keventd work should just shut itself down asap.
      
      The core code is only about 1/3 of this large file.  Splitting out the
      minidrivers into separate modules (e.g. ones for ASIX adapters,
      Zaurii and similar, CDC Ethernet, etc), in later patches, will
      improve maintainability and shrink typical runtime footprints.
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      f29fc259