1. 09 7月, 2012 1 次提交
  2. 01 6月, 2012 1 次提交
    • M
      net/mlx4_core: Fix number of EQs used in ICM initialisation · 3fc929e2
      Marcel Apfelbaum 提交于
      In SRIOV mode, the number of EQs used when computing the total ICM size
      was incorrect.
      
      To fix this, we do the following:
      1. We add a new structure to mlx4_dev, mlx4_phys_caps, to contain physical HCA
         capabilities.  The PPF uses the phys capabilities when it computes things
         like ICM size.
      
         The dev_caps structure will then contain the paravirtualized values, making
         bookkeeping much easier in SRIOV mode. We add a structure rather than a
         single parameter because there will be other fields in the phys_caps.
      
         The first field we add to the mlx4_phys_caps structure is num_phys_eqs.
      
      2. In INIT_HCA, when running in SRIOV mode, the "log_num_eqs" parameter
         passed to the FW is the number of EQs per VF/PF; each function (PF or VF)
         has this number of EQs available.
      
         However, the total number of EQs which must be allowed for in the ICM is
         (1 << log_num_eqs) * (#VFs + #PFs).  Rather than compute this quantity,
         we allocate ICM space for 1024 EQs (which is the device maximum
         number of EQs, and which is the value we place in the mlx4_phys_caps structure).
      
         For INIT_HCA, however, we use the per-function number of EQs as described
         above.
      Signed-off-by: NMarcel Apfelbaum <marcela@dev.mellanox.co.il>
      Signed-off-by: NJack Morgenstein <jackm@dev.mellanox.co.il>
      Reviewed-by: NOr Gerlitz <ogerlitz@mellanox.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      3fc929e2
  3. 09 5月, 2012 2 次提交
  4. 05 4月, 2012 2 次提交
    • A
      net/mlx4_core: set port QoS attributes · e5395e92
      Amir Vadai 提交于
      Adding QoS firmware commands:
      - mlx4_en_SET_PORT_PRIO2TC - set UP <=> TC
      - mlx4_en_SET_PORT_SCHEDULER - set promised BW, max BW and PG number
      Signed-off-by: NAmir Vadai <amirv@mellanox.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      e5395e92
    • A
      net/mlx4_en: Force user priority by QP attribute · 0e98b523
      Amir Vadai 提交于
      Instead of relying on HW to change schedule queue by UP, schedule
      queue is fixed for a tx_ring, and UP in WQE is ignored in this aspect.  This
      resolves two issues with untagged traffic:
      1. untagged traffic has no UP in packet which is needed for QoS. The change
         above allows setting the schedule queue (and by that the UP) of such a stream.
      2. BlueFlame uses the same field used by vlan tag. So forcing UP from QPC
         allows using BF for untagged but prioritized traffic.
      
      In old firmware that force UP is not supported, untagged traffic will not subject to
      QoS.
      
      Because UP is set by QP, need to always have a tx ring per UP, even if pfcrx
      module paramter is false.
      Signed-off-by: NAmir Vadai <amirv@mellanox.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      0e98b523
  5. 16 3月, 2012 1 次提交
    • P
      device.h: audit and cleanup users in main include dir · 313162d0
      Paul Gortmaker 提交于
      The <linux/device.h> header includes a lot of stuff, and
      it in turn gets a lot of use just for the basic "struct device"
      which appears so often.
      
      Clean up the users as follows:
      
      1) For those headers only needing "struct device" as a pointer
      in fcn args, replace the include with exactly that.
      
      2) For headers not really using anything from device.h, simply
      delete the include altogether.
      
      3) For headers relying on getting device.h implicitly before
      being included themselves, now explicitly include device.h
      
      4) For files in which doing #1 or #2 uncovers an implicit
      dependency on some other header, fix by explicitly adding
      the required header(s).
      
      Any C files that were implicitly relying on device.h to be
      present have already been dealt with in advance.
      
      Total removals from #1 and #2: 51.  Total additions coming
      from #3: 9.  Total other implicit dependencies from #4: 7.
      
      As of 3.3-rc1, there were 110, so a net removal of 42 gives
      about a 38% reduction in device.h presence in include/*
      Signed-off-by: NPaul Gortmaker <paul.gortmaker@windriver.com>
      313162d0
  6. 13 3月, 2012 2 次提交
  7. 07 3月, 2012 2 次提交
  8. 27 2月, 2012 1 次提交
  9. 26 2月, 2012 1 次提交
  10. 23 1月, 2012 1 次提交
  11. 20 12月, 2011 2 次提交
  12. 14 12月, 2011 7 次提交
  13. 28 11月, 2011 3 次提交
  14. 29 10月, 2011 1 次提交
  15. 19 10月, 2011 1 次提交
  16. 14 10月, 2011 3 次提交
  17. 27 7月, 2011 1 次提交
  18. 19 7月, 2011 5 次提交
  19. 24 3月, 2011 3 次提交