1. 27 1月, 2012 3 次提交
    • B
      sfc: Remove efx_nic_type::push_multicast_hash operation · 30b81cda
      Ben Hutchings 提交于
      Both implementations of efx_nic_type::reconfigure_mac operation
      push the multicast hash filter to the hardware.  It is therefore
      redundant to call efx_nic_type::push_multicast_hash as well.
      
      efx_mcdi_mac_reconfigure() also uses this operation, but the
      implementation for Siena just uses MCDI anyway.  Merge that into
      efx_mcdi_mac_reconfigure().
      Signed-off-by: NBen Hutchings <bhutchings@solarflare.com>
      30b81cda
    • B
      sfc: Merge efx_mcdi_mac_check_fault() and efx_mcdi_get_mac_faults() · 1daf4170
      Ben Hutchings 提交于
      The latter is only called by the former, which is a very short
      wrapper.  Further, gcc 4.5 may currently wrongly warn that the
      'faults' variable may be used uninitialised.
      Signed-off-by: NBen Hutchings <bhutchings@solarflare.com>
      1daf4170
    • B
      sfc: Merge efx_mac_operations into efx_nic_type · 710b208d
      Ben Hutchings 提交于
      No NICs need to switch efx_mac_operations at run-time, and the MAC
      operations are fairly closely bound to NIC types.
      
      Move efx_mac_operations::reconfigure to efx_nic_type::reconfigure_mac
      and efx_mac_operations::check_fault fo efx_nic_type::check_mac_fault.
      Change callers to call through efx->type or directly if the NIC type
      is known.
      
      Remove efx_mac_operations::update_stats.  The implementations for
      Falcon used to fetch MAC statistics synchronously and this was used by
      efx_register_netdev() to clear statistics after running self-tests.
      However, it now only converts statistics that have already been
      fetched (and that only for Falcon), and the call from
      efx_register_netdev() has no effect.
      Signed-off-by: NBen Hutchings <bhutchings@solarflare.com>
      710b208d
  2. 10 1月, 2012 1 次提交
  3. 06 1月, 2012 1 次提交
  4. 11 8月, 2011 1 次提交
  5. 15 4月, 2011 1 次提交
  6. 01 3月, 2011 1 次提交
  7. 25 6月, 2010 1 次提交
  8. 29 4月, 2010 1 次提交
  9. 30 11月, 2009 1 次提交
    • B
      sfc: Add support for SFC9000 family (1) · afd4aea0
      Ben Hutchings 提交于
      This adds support for the SFC9000 family of 10G Ethernet controllers
      and LAN-on-motherboard chips, starting with the SFL9021 'Siena' and
      SFC9020 'Bethpage'.
      
      The SFC9000 family is based on the SFC4000 'Falcon' architecture, but
      with some significant changes:
      
      - Two ports are associated with two independent PCI functions
        (except SFC9010)
      - Integrated 10GBASE-T PHY(s) (SFL9021/9022)
      - MAC, PHY and board peripherals are managed by firmware
        - Driver does not require board-specific code
        - Firmware supports wake-on-LAN and lights-out management through NC-SI
      - IPv6 checksum offload and RSS
      - Filtering by MAC address and VLAN (not included in this code)
      - PCI SR-IOV (not included in this code)
      
      Credit for this code is largely due to my colleagues at Solarflare:
      
         Guido Barzini
         Steve Hodgson
         Kieran Mansley
         Matthew Slattery
         Neil Turton
      Signed-off-by: NBen Hutchings <bhutchings@solarflare.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      afd4aea0