1. 03 6月, 2014 1 次提交
    • A
      enic: Update driver to use __dev_uc/mc_sync/unsync calls · f009618a
      Alexander Duyck 提交于
      This change updates the enic driver to make use of __dev_uc_sync and
      __dev_mc_sync calls.  Previously the driver was doing its own list
      management by storing the mc_addr and uc_addr list in a 32 address array.
      With this change the sync data is stored in the netdev_addr_list structures
      and instead we just track how many addresses we have written to the device.
      When we encounter 32 we stop and print a message as occurred previously with
      the old approach.
      
      Other than the core change the only other bit needed was to propagate the
      constant attribute with the MAC address as there were several spots where
      is twas only passed as a u8 * instead of a const u8 *.
      
      This patch is meant to maintain the original functionality without the use
      of the mc_addr and uc_addr arrays.
      Signed-off-by: NAlexander Duyck <alexander.h.duyck@intel.com>
      Acked-by: NGovindarajulu Varadarajan <_govind@gmx.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      f009618a
  2. 22 5月, 2014 1 次提交
    • S
      enic: Add support for adaptive interrupt coalescing · 7c2ce6e6
      Sujith Sankar 提交于
      This patch adds support for adaptive interrupt coalescing.
      
      For small pkts with low pkt rate, we can decrease the coalescing interrupt
      dynamically which decreases the latency. This however increases the cpu
      utilization. Based on testing with different coal intr and pkt rate we came up
      with a table(mod_table) with rx_rate and coalescing interrupt value where we
      get low latency without significant increase in cpu. mod_table table stores
      the coalescing timer percentage value for different throughputs.
      
      Function enic_calc_int_moderation() calculates the desired coalescing intr timer
      value. This function is called in driver rx napi_poll. The actual value is set
      by enic_set_int_moderation() which is called when napi_poll is complete. i.e
      when we unmask the rx intr.
      
      Adaptive coal intr is support only when driver is using msix intr. Because
      intr is not shared.
      
      Struct mod_range is used to store only the default adaptive coalescing intr
      value.
      
      Adaptive coal intr calue is calculated by
      
      timer = range_start + ((rx_coal->range_end - range_start) *
      		       mod_table[index].range_percent / 100);
      
      rx_coal->range_end is the rx-usecs-high value set using ethtool.
      range_start is rx-usecs-low, set using ethtool, if rx_small_pkt_bytes_cnt is
      greater than 2 * rx_large_pkt_bytes_cnt. i.e small pkts are dominant. Else its
      rx-usecs-low + 3.
      
      Cc: Christian Benvenuti <benve@cisco.com>
      Cc: Neel Patel <neepatel@cisco.com>
      Signed-off-by: NSujith Sankar <ssujith@cisco.com>
      Signed-off-by: NGovindarajulu Varadarajan <_govind@gmx.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      7c2ce6e6
  3. 04 4月, 2014 1 次提交
  4. 06 9月, 2013 2 次提交
  5. 21 8月, 2013 3 次提交
  6. 25 7月, 2013 1 次提交
  7. 08 3月, 2012 1 次提交
  8. 02 3月, 2012 1 次提交
  9. 20 2月, 2012 3 次提交
  10. 13 2月, 2012 2 次提交
  11. 05 2月, 2012 2 次提交
  12. 19 1月, 2012 1 次提交
  13. 27 9月, 2011 3 次提交
  14. 11 8月, 2011 1 次提交
    • J
      enic: Move the Cisco driver · a6a5580c
      Jeff Kirsher 提交于
      Move the Cisco driver into drivers/net/ethernet/cisco/ and make the
      necessary Kconfig and Makefile changes.
      
      CC: Christian Benvenuti <benve@cisco.com>
      CC: Vasanthy Kolluri <vkolluri@cisco.com>
      CC: Roopa Prabhu <roprabhu@cisco.com>
      CC: David Wang <dwang2@cisco.com>
      Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
      a6a5580c
  15. 22 7月, 2011 1 次提交
  16. 01 7月, 2011 1 次提交
  17. 10 6月, 2011 3 次提交
  18. 07 6月, 2011 1 次提交
  19. 08 4月, 2011 1 次提交
  20. 31 3月, 2011 1 次提交
    • R
      enic: Add support for PORT_REQUEST_PREASSOCIATE_RR · b3abfbd2
      Roopa Prabhu 提交于
      Current enic code only supports ASSOCIATE and DISASSOCIATE port profile
      operations. This patch adds enic support for port profile
      PORT_REQUEST_PREASSOCIATE_RR operation. The VIC adapter (8021qbh) is capable
      of handling port profile requests done in two steps namely PREASSOCIATE_RR
      and ASSOCIATE today. The motivation to support PREASSOCIATE_RR comes mainly
      from its use as an optimization during VM migration ie, to do resource
      reservation on destination host before resources on source host are released.
      
      PREASSOCIATE_RR is a VDP operation and according to the latest at IEEE,
      8021qbh will also need to support VDP commands.
      
      In addition to handling the new PORT_REQUEST_PREASSOCIATE_RR operation
      this patch also does the below:
      - Introduces handlers for PORT_REQUEST operations
      - Moves most of the port profile handling code to new files enic_pp.[ch]
      - Uses new fw devcmds for port profile operations
      Signed-off-by: NRoopa Prabhu <roprabhu@cisco.com>
      Signed-off-by: NDavid Wang <dwang2@cisco.com>
      Signed-off-by: NChristian Benvenuti <benve@cisco.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      b3abfbd2
  21. 15 3月, 2011 1 次提交
  22. 01 3月, 2011 1 次提交
  23. 18 2月, 2011 3 次提交
  24. 08 2月, 2011 4 次提交