1. Mar 21, 2014
    • David S. Miller's avatar
      Merge branch 'mlx4-next' · 45ba5973
      David S. Miller authored
      Or Gerlitz says:
      
      ====================
      mlx4: Add support for single port VFs
      
      The mlx4 Firmware && driver expose both ports of the device through one PCI function.
      
      This can be non-optimal under virtualization schemes where the admin
      would like the VF to expose one interface to the VM, etc.
      
      This series from Matan Barak adds support for single ported VFs.
      
      Since all the VF interaction with the firmware passes through the PF
       driver, we can emulate to the VF they have one port, and further create
      a set of the VFs which act on port1 of the device and another set which
      acts on port2.
      
      Series done against net-next commit 3ab428a4
      
       "netfilter: Add missing
      vmalloc.h include to nft_hash.c"
      
      Roland, we send this through netdev, but if you have comments, will love
      to hear them.
      ====================
      
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      45ba5973
    • Matan Barak's avatar
      net/mlx4: Adapt num_vfs/probed_vf params for single port VF · dd41cc3b
      Matan Barak authored
      
      
      A new syntax is added for the module parameters num_vfs and probe_vf.
      
        num_vfs=p1,p2,p1+p2
        probe_bf=p1,p2,p1+p2
      
      Where p1(2) is the number of VFs on / probed VFs for physical
      port1(2) and p1+p2 is the number of dual port VFs.
      
      Single port VFs are currently supported only when the link type
      for both ports of the device is Ethernet.
      
      Signed-off-by: default avatarMatan Barak <matanb@mellanox.com>
      Signed-off-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      dd41cc3b
    • Matan Barak's avatar
      net/mlx4: Adapt code for N-Port VF · 449fc488
      Matan Barak authored
      
      
      Adds support for N-Port VFs, this includes:
      1. Adding support in the wrapped FW command
      	In wrapped commands, we need to verify and convert
      	the slave's port into the real physical port.
      	Furthermore, when sending the response back to the slave,
      	a reverse conversion should be made.
      2. Adjusting sqpn for QP1 para-virtualization
      	The slave assumes that sqpn is used for QP1 communication.
      	If the slave is assigned to a port != (first port), we need
      	to adjust the sqpn that will direct its QP1 packets into the
      	correct endpoint.
      3. Adjusting gid[5] to modify the port for raw ethernet
      	In B0 steering, gid[5] contains the port. It needs
      	to be adjusted into the physical port.
      4. Adjusting number of ports in the query / ports caps in the FW commands
      	When a slave queries the hardware, it needs to view only
      	the physical ports it's assigned to.
      5. Adjusting the sched_qp according to the port number
      	The QP port is encoded in the sched_qp, thus in modify_qp we need
      	to encode the correct port in sched_qp.
      
      Signed-off-by: default avatarMatan Barak <matanb@mellanox.com>
      Signed-off-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      449fc488
    • Matan Barak's avatar
      net/mlx4: Add utils for N-Port VFs · f74462ac
      Matan Barak authored
      
      
      This patch adds the following utils:
      1. Convert slave_id -> VF
      2. Get the active ports by slave_id
      3. Convert slave's port to real port
      4. Get the slave's port from real port
      5. Get all slaves that uses the i'th real port
      6. Get all slaves that uses the i'th real port exclusively
      
      Signed-off-by: default avatarMatan Barak <matanb@mellanox.com>
      Signed-off-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      f74462ac
    • Matan Barak's avatar
      net/mlx4: Add data structures to support N-Ports per VF · 1ab95d37
      Matan Barak authored
      
      
      Adds the required data structures to support VFs with N (1 or 2)
      ports instead of always using the number of physical ports.
      
      Signed-off-by: default avatarMatan Barak <matanb@mellanox.com>
      Signed-off-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      1ab95d37
    • Matan Barak's avatar
      IB/mlx4_ib: Adapt code to use caps.num_ports instead of a constant · 82373701
      Matan Barak authored
      
      
      Some code in the mlx4 IB driver stack assumed MLX4_MAX_PORTS ports.
      
      Instead, we should only loop until the number of actual ports in i
      the device, which is stored in dev->caps.num_ports.
      
      Signed-off-by: default avatarMatan Barak <matanb@mellanox.com>
      Signed-off-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      82373701
    • Fabio Estevam's avatar
      smsc911x: Change clock warning message to debug level · 8798998c
      Fabio Estevam authored
      
      
      Since passing the clock is not mandatory, change the warning message to debug,
      so that we avoid getting the following clock failure message on every boot:
      
      smsc911x: Driver version 2008-10-21
      smsc911x smsc911x (unregistered net_device): couldn't get clock -2
      libphy: smsc911x-mdio: probed
      
      Signed-off-by: default avatarFabio Estevam <fabio.estevam@freescale.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      8798998c
    • Daniel Baluta's avatar
    • David S. Miller's avatar
      Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next · c60c8337
      David S. Miller authored
      
      
      Jeff Kirsher says:
      
      ====================
      Intel Wired LAN Driver Updates
      
      This series contains updates to e100, igb, igbvf, ixgbe and ixgbevf.
      
      Stefan adds a igb patch to enable the ability strip VLAN header information
      for packets bound for a VM on i350 hardware.
      
      Joe Perches provides patches for e100, igb, igbvf, ixgbe and ixgbevf to
      convert the use of __constant_<foo> to just <foo> to align with the rest
      of the kernel.
      
      Don provides two fixes for ixgbe, first resolves a link issue with DA
      cables where we were not always freeing the firmware/software semaphore
      after grabbing it.  Second stops caching whether the management firmware
      was enabled, however since this is not static, we really need to verify
      with each check.
      
      Jacob provides six fixes/cleanups for ixgbe, most notably, correct
      the stop_mac_link_on d3() to check the Core Clock Disable bit before
      stopping link and to fully check to see if manage firmware is running or
      could be enabled before bringing down the link.  Fix flow control
      auto-negation for KR/KX/K4 interfaces, since setting up MAC link, the
      cached autoc value and current autoc value were being incorrectly used to
      determine whether link reset is required.
      
      Emil provides a fix for ixgbe where there was a chance for aggressive
      start_ndo_zmit() callers to sneak packets between enabling the Tx queues
      and the link coming up.  To resolve this, move the call to enable Tx
      queues to after the link is established.
      ====================
      
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      c60c8337
  2. Mar 20, 2014