sfc: Add support for Solarflare 7000 series 40G network adapters
Most of the necessary code already went into 3.12, so this is a small change. svn path=/dists/sid/linux/; revision=21846
This commit is contained in:
parent
ec483632c6
commit
83eeb618bc
|
@ -6,6 +6,8 @@ linux (3.16.2-4) UNRELEASED; urgency=medium
|
|||
- fix corruption introduced by balance_leaf refactor (regression in 3.16)
|
||||
(Closes: #761457)
|
||||
- Fix use after free in journal teardown
|
||||
* sfc: Adding PCI ID for Solarflare 7000 series 40G network adapter.
|
||||
* sfc: Add 40G link capability decoding
|
||||
|
||||
[ Ian Campbell ]
|
||||
* [armhf] Enable support for Exynos5 systems. (Closes: #759291)
|
||||
|
|
|
@ -0,0 +1,56 @@
|
|||
From ac331e948346f2706cd82b2d259800621b9db04f Mon Sep 17 00:00:00 2001
|
||||
From: Edward Cree <ecree@solarflare.com>
|
||||
Date: Mon, 14 Jul 2014 08:39:07 +0100
|
||||
Subject: [PATCH 2/2] sfc: Add 40G link capability decoding
|
||||
|
||||
Needed to select 40G mode on a 10G/40G capable card.
|
||||
|
||||
Signed-off-by: Shradha Shah <sshah@solarflare.com>
|
||||
Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
---
|
||||
drivers/net/ethernet/sfc/mcdi_port.c | 11 +++++++++++
|
||||
1 file changed, 11 insertions(+)
|
||||
|
||||
diff --git a/drivers/net/ethernet/sfc/mcdi_port.c b/drivers/net/ethernet/sfc/mcdi_port.c
|
||||
index e5fc4e1..fb19b70 100644
|
||||
--- a/drivers/net/ethernet/sfc/mcdi_port.c
|
||||
+++ b/drivers/net/ethernet/sfc/mcdi_port.c
|
||||
@@ -183,6 +183,8 @@ static u32 mcdi_to_ethtool_cap(u32 media, u32 cap)
|
||||
result |= SUPPORTED_1000baseKX_Full;
|
||||
if (cap & (1 << MC_CMD_PHY_CAP_10000FDX_LBN))
|
||||
result |= SUPPORTED_10000baseKX4_Full;
|
||||
+ if (cap & (1 << MC_CMD_PHY_CAP_40000FDX_LBN))
|
||||
+ result |= SUPPORTED_40000baseKR4_Full;
|
||||
break;
|
||||
|
||||
case MC_CMD_MEDIA_XFP:
|
||||
@@ -190,6 +192,12 @@ static u32 mcdi_to_ethtool_cap(u32 media, u32 cap)
|
||||
result |= SUPPORTED_FIBRE;
|
||||
break;
|
||||
|
||||
+ case MC_CMD_MEDIA_QSFP_PLUS:
|
||||
+ result |= SUPPORTED_FIBRE;
|
||||
+ if (cap & (1 << MC_CMD_PHY_CAP_40000FDX_LBN))
|
||||
+ result |= SUPPORTED_40000baseCR4_Full;
|
||||
+ break;
|
||||
+
|
||||
case MC_CMD_MEDIA_BASE_T:
|
||||
result |= SUPPORTED_TP;
|
||||
if (cap & (1 << MC_CMD_PHY_CAP_10HDX_LBN))
|
||||
@@ -237,6 +245,8 @@ static u32 ethtool_to_mcdi_cap(u32 cap)
|
||||
result |= (1 << MC_CMD_PHY_CAP_1000FDX_LBN);
|
||||
if (cap & (SUPPORTED_10000baseT_Full | SUPPORTED_10000baseKX4_Full))
|
||||
result |= (1 << MC_CMD_PHY_CAP_10000FDX_LBN);
|
||||
+ if (cap & (SUPPORTED_40000baseCR4_Full | SUPPORTED_40000baseKR4_Full))
|
||||
+ result |= (1 << MC_CMD_PHY_CAP_40000FDX_LBN);
|
||||
if (cap & SUPPORTED_Pause)
|
||||
result |= (1 << MC_CMD_PHY_CAP_PAUSE_LBN);
|
||||
if (cap & SUPPORTED_Asym_Pause)
|
||||
@@ -285,6 +295,7 @@ static u32 mcdi_to_ethtool_media(u32 media)
|
||||
|
||||
case MC_CMD_MEDIA_XFP:
|
||||
case MC_CMD_MEDIA_SFP_PLUS:
|
||||
+ case MC_CMD_MEDIA_QSFP_PLUS:
|
||||
return PORT_FIBRE;
|
||||
|
||||
case MC_CMD_MEDIA_BASE_T:
|
25
debian/patches/features/all/sfc-Adding-PCI-ID-for-Solarflare-7000-series-40G-net.patch
vendored
Normal file
25
debian/patches/features/all/sfc-Adding-PCI-ID-for-Solarflare-7000-series-40G-net.patch
vendored
Normal file
|
@ -0,0 +1,25 @@
|
|||
From 3b06a00e65fbb5c526371143beaaa2221d39d577 Mon Sep 17 00:00:00 2001
|
||||
From: Mateusz Wrzesinski <mwrzesinski@solarflare.com>
|
||||
Date: Mon, 14 Jul 2014 08:38:49 +0100
|
||||
Subject: [PATCH 1/2] sfc: Adding PCI ID for Solarflare 7000 series 40G network
|
||||
adapter.
|
||||
|
||||
Signed-off-by: Shradha Shah <sshah@solarflare.com>
|
||||
Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
---
|
||||
drivers/net/ethernet/sfc/efx.c | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/drivers/net/ethernet/sfc/efx.c b/drivers/net/ethernet/sfc/efx.c
|
||||
index 1e27404..2d86224 100644
|
||||
--- a/drivers/net/ethernet/sfc/efx.c
|
||||
+++ b/drivers/net/ethernet/sfc/efx.c
|
||||
@@ -2607,6 +2607,8 @@ static DEFINE_PCI_DEVICE_TABLE(efx_pci_table) = {
|
||||
.driver_data = (unsigned long) &siena_a0_nic_type},
|
||||
{PCI_DEVICE(PCI_VENDOR_ID_SOLARFLARE, 0x0903), /* SFC9120 PF */
|
||||
.driver_data = (unsigned long) &efx_hunt_a0_nic_type},
|
||||
+ {PCI_DEVICE(PCI_VENDOR_ID_SOLARFLARE, 0x0923), /* SFC9140 PF */
|
||||
+ .driver_data = (unsigned long) &efx_hunt_a0_nic_type},
|
||||
{0} /* end of list */
|
||||
};
|
||||
|
|
@ -127,3 +127,5 @@ bugfix/all/reiserfs-Fix-use-after-free-in-journal-teardown.patch
|
|||
features/all/efi-autoload-efivars.patch
|
||||
features/all/virtio-scsi-Implement-change_queue_depth-for-virtscs.patch
|
||||
debian/revert-staging-sm7xxfb-remove-driver.patch
|
||||
features/all/sfc-Adding-PCI-ID-for-Solarflare-7000-series-40G-net.patch
|
||||
features/all/sfc-Add-40G-link-capability-decoding.patch
|
||||
|
|
Loading…
Reference in New Issue