1. 28 Nov, 2018 37 commits
  2. 27 Nov, 2018 3 commits
    • David S. Miller's avatar
      Merge branch 'aquantia-usb' · 77f06aac
      David S. Miller authored
      Igor Russkikh says:
      
      ====================
      Add support for Aquantia AQtion USB to 5/2.5GbE devices
      
      This patchset introduces support for new multigig ethernet to USB dongle,
      developed jointly by Aquantia (Phy) and ASIX (USB MAC).
      
      The driver has similar structure with other ASIX MAC drivers (AX88179), but
      with a number of important differences:
      - Driver supports both direct Phy and custom firmware interface for Phy
        programming. This is due to different firmware modules available with
        this product.
      - Driver handles new 2.5G/5G link speed configuration and reporting.
      - Device support all speeds from 100M up to 5G.
      - Device supports MTU up to 16K.
      
      Device supports various standard networking features, like
      checksum offloads, vlan tagging/filtering, TSO.
      
      The code of this driver is based on original ASIX sources and was extended
      by Aquantia for 5G multigig support.
      
      Patchset v2 includes following changes:
      - Function variables declarions fixed to reverse xmass tree
      - Improve patch layout structure
      - Remove unnecessary curly braces in switch/case statements
      - Use 'packed' attribute for HW structures only
      - Use eth_mac_addr function in set_mac_addr callback
      - Remove unnecessary 'memset' calls.
      - Read MAC address from EEPROM function has now better name
      - Use driver_priv field to store context. It avoids ugly cast.
      - Set max_mtu field. Remove check for MTU size
      - Rewrite read/write functions. Add helpers for read/write 16/32 bit values
      - Use mask and shifts instead of bitfields to support BE platforms.
      - Use stack allocated buffer for configuring mcast filters
      - Use AUTONEG_ENABLE when go to suspend state
      - Pad out wol_cfg field from context structure. Use stack allocated instead
      - Remove driver version
      - Check field 'duplex' in set_link_ksetting callback as well
      - Use already created defines in usb matching macro
      - Rename phy_ops struct to phy_cfg
      - Use ether_addr_copy for copying mac address
      - Add fall-through comment in switch/case for avoid checkpatch warning
      - Remove match for CDC ether device
      - Add ASIX's HW id-s to match this driver
      - Add all HW id-s with which driver can work to blacklist of cdc_ether driver
      
      Patchset v3 includes following changes:
      - Use linkmode_copy instead of bitmap_copy
      - Remove Direct PHY access code since production HW will not have this
          mode anymore
      - Fix line over 80 symbols and alignments in cdc_ether patch
      - Add match for ECM configuration
          On start our HW reports both ECM and vendor configs.
          Linux prefers to use ECM driver and chooses active configuration
          which is for ecm driver (not for vendor specific).
          We need to match this configuration and forcibly switch configuration
          to vendor specific.
      
      Patchset v4 includes following changes:
      - Set gso_max_size.
      - Optimize accessing to descriptors
      - Use SKB_TRUESIZE macro.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      77f06aac
    • Dmitry Bezrukov's avatar
      net: usb: aqc111: Extend cdc_ether blacklist · d596df3a
      Dmitry Bezrukov authored
      Added Aquantia and ASIX device IDs to prevent loading cdc_ether for
      these devices. Our firmware reports CDC configuration simultaneously
      with vendor specific.
      Signed-off-by: default avatarDmitry Bezrukov <dmitry.bezrukov@aquantia.com>
      Signed-off-by: default avatarIgor Russkikh <igor.russkikh@aquantia.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      d596df3a
    • Dmitry Bezrukov's avatar
      net: usb: aqc111: Add ASIX's HW ids · fa61ce4d
      Dmitry Bezrukov authored
      It enables driver for ASIX products which are also based on
      aqc111/112U chips.
      Signed-off-by: default avatarDmitry Bezrukov <dmitry.bezrukov@aquantia.com>
      Signed-off-by: default avatarIgor Russkikh <igor.russkikh@aquantia.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      fa61ce4d