* [net-next 0/8][pull request] Intel Wired LAN Driver Updates
@ 2011-11-16 12:51 Jeff Kirsher
2011-11-16 23:12 ` David Miller
0 siblings, 1 reply; 31+ messages in thread
From: Jeff Kirsher @ 2011-11-16 12:51 UTC (permalink / raw)
To: davem; +Cc: Jeff Kirsher, netdev, gospo, sassmann
The following series contains updates to e1000, e1000e, igb, igbvf,
ixgbe and ixgbevf. There is one fix for LED blink logic for ixgbe,
the remaining patches are conversions of printk's to pr_<level>.
The following are changes since commit 229a66e3bec97563aa92e25dfe0bc60b0d468619:
IPv6: Removing unnecessary NULL checks.
and are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/next-organize master
Emil Tantilov (1):
ixgbe: fix LED blink logic to check for link
Jeff Kirsher (4):
e1000e: Convert printks to pr_<level>
igbvf: Convert printks to pr_<level>
ixgbevf: Convert printks to pr_<level>
igb: Convert printks to pr_<level>
Jesse Brandeburg (1):
e1000e: convert to real ndo_set_rx_mode
Joe Perches (2):
igb: Convert bare printk to pr_notice
intel: Convert <FOO>_LENGTH_OF_ADDRESS to ETH_ALEN
drivers/net/ethernet/intel/e1000/e1000_hw.h | 1 -
drivers/net/ethernet/intel/e1000e/netdev.c | 388 ++++++++++++---------
drivers/net/ethernet/intel/igb/e1000_82575.c | 5 +-
drivers/net/ethernet/intel/igb/igb_main.c | 165 +++++-----
drivers/net/ethernet/intel/igbvf/netdev.c | 14 +-
drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c | 2 +-
drivers/net/ethernet/intel/ixgbe/ixgbe_type.h | 8 +-
drivers/net/ethernet/intel/ixgbe/ixgbe_x540.c | 18 +-
drivers/net/ethernet/intel/ixgbevf/defines.h | 1 -
drivers/net/ethernet/intel/ixgbevf/ethtool.c | 6 +-
drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c | 27 +-
drivers/net/ethernet/intel/ixgbevf/vf.c | 4 +-
12 files changed, 340 insertions(+), 299 deletions(-)
--
1.7.6.4
^ permalink raw reply [flat|nested] 31+ messages in thread
* Re: [net-next 0/8][pull request] Intel Wired LAN Driver Updates
2011-11-16 12:51 Jeff Kirsher
@ 2011-11-16 23:12 ` David Miller
2011-11-16 23:21 ` Jeff Kirsher
0 siblings, 1 reply; 31+ messages in thread
From: David Miller @ 2011-11-16 23:12 UTC (permalink / raw)
To: jeffrey.t.kirsher; +Cc: netdev, gospo, sassmann
From: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Date: Wed, 16 Nov 2011 04:51:24 -0800
> The following are changes since commit 229a66e3bec97563aa92e25dfe0bc60b0d468619:
> IPv6: Removing unnecessary NULL checks.
> and are available in the git repository at:
> git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/next-organize master
This tree doesn't exist.
^ permalink raw reply [flat|nested] 31+ messages in thread
* Re: [net-next 0/8][pull request] Intel Wired LAN Driver Updates
2011-11-16 23:12 ` David Miller
@ 2011-11-16 23:21 ` Jeff Kirsher
2011-11-16 23:32 ` David Miller
0 siblings, 1 reply; 31+ messages in thread
From: Jeff Kirsher @ 2011-11-16 23:21 UTC (permalink / raw)
To: David Miller
Cc: netdev@vger.kernel.org, gospo@redhat.com, sassmann@redhat.com
[-- Attachment #1: Type: text/plain, Size: 566 bytes --]
On Wed, 2011-11-16 at 15:12 -0800, David Miller wrote:
> From: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
> Date: Wed, 16 Nov 2011 04:51:24 -0800
>
> > The following are changes since commit 229a66e3bec97563aa92e25dfe0bc60b0d468619:
> > IPv6: Removing unnecessary NULL checks.
> > and are available in the git repository at:
> > git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/next-organize master
>
> This tree doesn't exist.
That was supposed to be
git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next master
sorry Dave.
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply [flat|nested] 31+ messages in thread
* Re: [net-next 0/8][pull request] Intel Wired LAN Driver Updates
2011-11-16 23:21 ` Jeff Kirsher
@ 2011-11-16 23:32 ` David Miller
0 siblings, 0 replies; 31+ messages in thread
From: David Miller @ 2011-11-16 23:32 UTC (permalink / raw)
To: jeffrey.t.kirsher; +Cc: netdev, gospo, sassmann
From: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Date: Wed, 16 Nov 2011 15:21:22 -0800
> On Wed, 2011-11-16 at 15:12 -0800, David Miller wrote:
>> From: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
>> Date: Wed, 16 Nov 2011 04:51:24 -0800
>>
>> > The following are changes since commit 229a66e3bec97563aa92e25dfe0bc60b0d468619:
>> > IPv6: Removing unnecessary NULL checks.
>> > and are available in the git repository at:
>> > git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/next-organize master
>>
>> This tree doesn't exist.
>
> That was supposed to be
>
> git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next master
That works better, pulled, thanks!
^ permalink raw reply [flat|nested] 31+ messages in thread
* [net-next 0/8][pull request] Intel Wired LAN Driver Updates
@ 2012-05-01 8:51 Jeff Kirsher
0 siblings, 0 replies; 31+ messages in thread
From: Jeff Kirsher @ 2012-05-01 8:51 UTC (permalink / raw)
To: davem; +Cc: Jeff Kirsher, netdev, gospo, sassmann, bhutchings
This series of patches contains updates for e1000e and ixgbe.
Special note that this series contains the v2 of the ixgbe
thermal data patches (patches 4-6), which have been revised based on
feedback from the community (Ben Hutchings).
The following are changes since commit 80bcb4238dd858d8ae460b62aac2f4165db58c3c:
atl1c: remove PHY polling from atl1c_change_mtu
and are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next master
Bruce Allan (3):
e1000e: workaround EEPROM configuration change on 82579
e1000e: PHY initialization flow changes for 82577/8/9
e1000e: fix .ndo_set_rx_mode for 82579
Don Skidmore (3):
ixgbe: add support functions to access thermal data
ixgbe: add hwmon interface to export thermal data
ixgbe: add syfs interface for to export read only driver information
Greg Rose (2):
ixgbe: Deny MACVLAN requests from VFs with admin set MAC
ixgbe: Reset max_vfs to zero when user request is out of range
drivers/net/ethernet/intel/Kconfig | 8 +
drivers/net/ethernet/intel/e1000e/80003es2lan.c | 1 +
drivers/net/ethernet/intel/e1000e/82571.c | 4 +-
drivers/net/ethernet/intel/e1000e/e1000.h | 2 +-
drivers/net/ethernet/intel/e1000e/hw.h | 6 +
drivers/net/ethernet/intel/e1000e/ich8lan.c | 339 +++++++++----
drivers/net/ethernet/intel/e1000e/mac.c | 10 +-
drivers/net/ethernet/intel/e1000e/netdev.c | 12 +-
drivers/net/ethernet/intel/ixgbe/Makefile | 2 +-
drivers/net/ethernet/intel/ixgbe/ixgbe.h | 26 +
drivers/net/ethernet/intel/ixgbe/ixgbe_82598.c | 2 +
drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c | 2 +
drivers/net/ethernet/intel/ixgbe/ixgbe_common.c | 169 +++++++
drivers/net/ethernet/intel/ixgbe/ixgbe_common.h | 13 +
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 13 +-
drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c | 6 +
drivers/net/ethernet/intel/ixgbe/ixgbe_sysfs.c | 583 +++++++++++++++++++++++
drivers/net/ethernet/intel/ixgbe/ixgbe_type.h | 40 ++
drivers/net/ethernet/intel/ixgbe/ixgbe_x540.c | 2 +
19 files changed, 1120 insertions(+), 120 deletions(-)
create mode 100644 drivers/net/ethernet/intel/ixgbe/ixgbe_sysfs.c
--
1.7.7.6
^ permalink raw reply [flat|nested] 31+ messages in thread
* [net-next 0/8][pull request] Intel Wired LAN Driver Updates
@ 2012-05-04 10:35 Jeff Kirsher
2012-05-04 15:49 ` David Miller
0 siblings, 1 reply; 31+ messages in thread
From: Jeff Kirsher @ 2012-05-04 10:35 UTC (permalink / raw)
To: davem; +Cc: Jeff Kirsher, netdev, gospo, sassmann
This series of patches contains updates for e1000e and ixgbe.
The e1000e updates the version number and adds support for i217
silicon. The ixgbe patches are cleanups/re-organizations to
the driver.
The following are changes since commit f19250883fe09dd2b6b5f818d84874837948c546:
net/niu: remove one superfluous dma mask check
and are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next master
Alexander Duyck (6):
ixgbe: Track instances of buffer available but no DMA resources
present
ixgbe: Reorder the ring to q_vector mapping to improve performance
ixgbe: Make ixgbe_fc_autoneg return void and always set current_mode
ixgbe: Use __free_pages instead of put_page to release pages
ixgbe: Reorder link flow control functions in ixgbe_common.c
ixgbe: Update link flow control to correctly handle multiple packet
buffer DCB
Bruce Allan (1):
e1000e: initial support for i217
Matthew Vick (1):
e1000e: Update driver version number
drivers/net/ethernet/intel/e1000e/defines.h | 8 +
drivers/net/ethernet/intel/e1000e/e1000.h | 2 +
drivers/net/ethernet/intel/e1000e/ethtool.c | 17 +-
drivers/net/ethernet/intel/e1000e/hw.h | 9 +
drivers/net/ethernet/intel/e1000e/ich8lan.c | 370 +++++++++++-
drivers/net/ethernet/intel/e1000e/netdev.c | 19 +-
drivers/net/ethernet/intel/e1000e/phy.c | 3 +
drivers/net/ethernet/intel/ixgbe/ixgbe_82598.c | 65 +-
drivers/net/ethernet/intel/ixgbe/ixgbe_common.c | 631 +++++++++-----------
drivers/net/ethernet/intel/ixgbe/ixgbe_common.h | 4 +-
drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_82599.c | 13 +-
drivers/net/ethernet/intel/ixgbe/ixgbe_lib.c | 35 +-
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 27 +-
drivers/net/ethernet/intel/ixgbe/ixgbe_type.h | 5 +-
14 files changed, 751 insertions(+), 457 deletions(-)
--
1.7.7.6
^ permalink raw reply [flat|nested] 31+ messages in thread
* Re: [net-next 0/8][pull request] Intel Wired LAN Driver Updates
2012-05-04 10:35 Jeff Kirsher
@ 2012-05-04 15:49 ` David Miller
0 siblings, 0 replies; 31+ messages in thread
From: David Miller @ 2012-05-04 15:49 UTC (permalink / raw)
To: jeffrey.t.kirsher; +Cc: netdev, gospo, sassmann
From: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Date: Fri, 4 May 2012 03:35:08 -0700
> This series of patches contains updates for e1000e and ixgbe.
> The e1000e updates the version number and adds support for i217
> silicon. The ixgbe patches are cleanups/re-organizations to
> the driver.
>
> The following are changes since commit f19250883fe09dd2b6b5f818d84874837948c546:
> net/niu: remove one superfluous dma mask check
> and are available in the git repository at:
> git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next master
Pulled, thanks Jeff.
^ permalink raw reply [flat|nested] 31+ messages in thread
* [net-next 0/8][pull request] Intel Wired LAN Driver Updates
@ 2012-07-17 10:09 Jeff Kirsher
2012-07-17 10:22 ` David Miller
0 siblings, 1 reply; 31+ messages in thread
From: Jeff Kirsher @ 2012-07-17 10:09 UTC (permalink / raw)
To: davem; +Cc: Jeff Kirsher, netdev, gospo, sassmann
This series contains updates to ixgbevf.
The following are changes since commit 282f23c6ee343126156dd41218b22ece96d747e3:
tcp: implement RFC 5961 3.2
and are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next master
Alexander Duyck (8):
ixgbevf: Drop all dead or unnecessary code
ixgbevf: Drop netdev_registered value since that is already stored in
netdev
ixgbevf: Make use of NETIF_F_RXCSUM instead of keeping our own flag
ixgbevf: Drop use of eitr_low and eitr_high for hard coded values
ixgbevf: Cleanup accounting for space needed at start of xmit_frame
ixgbevf: Update q_vector to contain ring pointers instead of bitmaps
ixgbevf: Move Tx clean-up into NAPI context
ixgbevf: Use igb style interrupt masks instead of ixgbe style
drivers/net/ethernet/intel/ixgbevf/defines.h | 27 +-
drivers/net/ethernet/intel/ixgbevf/ethtool.c | 13 +-
drivers/net/ethernet/intel/ixgbevf/ixgbevf.h | 99 +--
drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c | 820 ++++++---------------
4 files changed, 276 insertions(+), 683 deletions(-)
--
1.7.10.4
^ permalink raw reply [flat|nested] 31+ messages in thread
* Re: [net-next 0/8][pull request] Intel Wired LAN Driver Updates
2012-07-17 10:09 Jeff Kirsher
@ 2012-07-17 10:22 ` David Miller
0 siblings, 0 replies; 31+ messages in thread
From: David Miller @ 2012-07-17 10:22 UTC (permalink / raw)
To: jeffrey.t.kirsher; +Cc: netdev, gospo, sassmann
From: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Date: Tue, 17 Jul 2012 03:09:11 -0700
> This series contains updates to ixgbevf.
>
> The following are changes since commit 282f23c6ee343126156dd41218b22ece96d747e3:
> tcp: implement RFC 5961 3.2
> and are available in the git repository at:
> git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next master
>
> Alexander Duyck (8):
> ixgbevf: Drop all dead or unnecessary code
> ixgbevf: Drop netdev_registered value since that is already stored in
> netdev
> ixgbevf: Make use of NETIF_F_RXCSUM instead of keeping our own flag
> ixgbevf: Drop use of eitr_low and eitr_high for hard coded values
> ixgbevf: Cleanup accounting for space needed at start of xmit_frame
> ixgbevf: Update q_vector to contain ring pointers instead of bitmaps
> ixgbevf: Move Tx clean-up into NAPI context
> ixgbevf: Use igb style interrupt masks instead of ixgbe style
Pulled, thanks Jeff.
^ permalink raw reply [flat|nested] 31+ messages in thread
* [net-next 0/8][pull request] Intel Wired LAN Driver Updates
@ 2012-08-31 5:16 Jeff Kirsher
2012-08-31 20:03 ` David Miller
0 siblings, 1 reply; 31+ messages in thread
From: Jeff Kirsher @ 2012-08-31 5:16 UTC (permalink / raw)
To: davem; +Cc: Jeff Kirsher, netdev, gospo, sassmann
This series contains updates to e1000e and ixgbevf.
The following are changes since commit 761743ebc92df72053e736fce953a5d2e90099d5:
net/fsl_pq_mdio: add support for the Fman 1G MDIO controller
and are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next master
Alexander Duyck (2):
ixgbevf: Add suspend and resume support to the VF
ixgbevf: Cleanup handling of configuration for jumbo frames
Bruce Allan (6):
e1000e: use correct type for read of 32-bit register
e1000e: cleanup strict checkpatch MEMORY_BARRIER checks
e1000e: cleanup strict checkpatch check
e1000e: cleanup - remove inapplicable comment
e1000e: cleanup - remove unnecessary variable
e1000e: update driver version number
drivers/net/ethernet/intel/e1000e/82571.c | 4 +-
drivers/net/ethernet/intel/e1000e/ethtool.c | 3 +-
drivers/net/ethernet/intel/e1000e/netdev.c | 19 ++-
drivers/net/ethernet/intel/ixgbevf/ixgbevf.h | 4 +-
drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c | 160 +++++++++++++++++-----
drivers/net/ethernet/intel/ixgbevf/vf.c | 14 ++
drivers/net/ethernet/intel/ixgbevf/vf.h | 1 +
7 files changed, 164 insertions(+), 41 deletions(-)
--
1.7.11.4
^ permalink raw reply [flat|nested] 31+ messages in thread
* Re: [net-next 0/8][pull request] Intel Wired LAN Driver Updates
2012-08-31 5:16 Jeff Kirsher
@ 2012-08-31 20:03 ` David Miller
0 siblings, 0 replies; 31+ messages in thread
From: David Miller @ 2012-08-31 20:03 UTC (permalink / raw)
To: jeffrey.t.kirsher; +Cc: netdev, gospo, sassmann
From: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Date: Thu, 30 Aug 2012 22:16:06 -0700
> This series contains updates to e1000e and ixgbevf.
>
> The following are changes since commit 761743ebc92df72053e736fce953a5d2e90099d5:
> net/fsl_pq_mdio: add support for the Fman 1G MDIO controller
> and are available in the git repository at:
> git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next master
Pulled, thanks Jeff.
^ permalink raw reply [flat|nested] 31+ messages in thread
* [net-next 0/8][pull request] Intel Wired LAN Driver Updates
@ 2012-09-17 4:15 Jeff Kirsher
2012-09-17 4:56 ` David Miller
0 siblings, 1 reply; 31+ messages in thread
From: Jeff Kirsher @ 2012-09-17 4:15 UTC (permalink / raw)
To: davem; +Cc: Jeff Kirsher, netdev, gospo, sassmann
This series contains updates to e1000 and ixgbe. Most notably is
the added debugfs support in ixgbe.
The following are changes since commit 7f2e6a5d8608d0353b017a0fe15502307593734e:
drivers/isdn/gigaset/common.c: Remove useless kfree
and are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next master
Alexander Duyck (2):
ixgbe: Fix ordering of things so that PF correctly configures its
VLANs
ixgbe: Fix VF rate limiting to correctly account for more queues per
VF
Catherine Sullivan (3):
ixgbe: add debugfs support
ixgbe: added netdev_ops file to debugfs
ixgbe: added reg_ops file to debugfs
Emil Tantilov (1):
ixgbe: fix reporting of spoofed packets
Mark Rustad (1):
ixgbe: Improve statistics accuracy for DDP traffic
Otto Estuardo Solares Cabrera (1):
e1000: add byte queue limits
drivers/net/ethernet/intel/e1000/e1000_main.c | 10 +
drivers/net/ethernet/intel/ixgbe/Makefile | 2 +-
drivers/net/ethernet/intel/ixgbe/ixgbe.h | 10 +-
drivers/net/ethernet/intel/ixgbe/ixgbe_debugfs.c | 300 +++++++++++++++++++++++
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 60 +++--
drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c | 105 ++++----
6 files changed, 423 insertions(+), 64 deletions(-)
create mode 100644 drivers/net/ethernet/intel/ixgbe/ixgbe_debugfs.c
--
1.7.11.4
^ permalink raw reply [flat|nested] 31+ messages in thread
* Re: [net-next 0/8][pull request] Intel Wired LAN Driver Updates
2012-09-17 4:15 Jeff Kirsher
@ 2012-09-17 4:56 ` David Miller
2012-09-17 8:15 ` Jeff Kirsher
0 siblings, 1 reply; 31+ messages in thread
From: David Miller @ 2012-09-17 4:56 UTC (permalink / raw)
To: jeffrey.t.kirsher; +Cc: netdev, gospo, sassmann
From: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Date: Sun, 16 Sep 2012 21:15:34 -0700
> git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next master
Sigh...
You changed this tree.
It originally had the IGB PTP changes, which you asked me to
reconsider.
So I went to pull them in and now it had these new changes in
it, which I accidently pushed out to net-next instead of the
IGB stuff.
Never do this. If you wanted me to consider to sets of
changes seperatedly, put them in seperate branches for me
to pull from.
^ permalink raw reply [flat|nested] 31+ messages in thread
* Re: [net-next 0/8][pull request] Intel Wired LAN Driver Updates
2012-09-17 4:56 ` David Miller
@ 2012-09-17 8:15 ` Jeff Kirsher
0 siblings, 0 replies; 31+ messages in thread
From: Jeff Kirsher @ 2012-09-17 8:15 UTC (permalink / raw)
To: David Miller; +Cc: netdev, gospo, sassmann
[-- Attachment #1: Type: text/plain, Size: 922 bytes --]
On Mon, 2012-09-17 at 00:56 -0400, David Miller wrote:
>
> From: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
> Date: Sun, 16 Sep 2012 21:15:34 -0700
>
> > git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next
> master
>
> Sigh...
>
> You changed this tree.
>
> It originally had the IGB PTP changes, which you asked me to
> reconsider.
>
> So I went to pull them in and now it had these new changes in
> it, which I accidently pushed out to net-next instead of the
> IGB stuff.
>
> Never do this. If you wanted me to consider to sets of
> changes seperatedly, put them in seperate branches for me
> to pull from.
Sorry, I had not heard anything after several days, and since there had
been a number of changes to the tree since I last sent out the push
message I was going to re-sbumbit them against an updated tree.
I will put together a branch with the igb patches now.
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply [flat|nested] 31+ messages in thread
* [net-next 0/8][pull request] Intel Wired LAN Driver Updates
@ 2012-10-23 10:24 Jeff Kirsher
2012-10-23 17:28 ` David Miller
0 siblings, 1 reply; 31+ messages in thread
From: Jeff Kirsher @ 2012-10-23 10:24 UTC (permalink / raw)
To: davem; +Cc: Jeff Kirsher, netdev, gospo, sassmann
This series contains updates to e1000e, igb, ixgbevf and MAINTAINERS.
The following are changes since commit 598e74f32c6dd4b3dd0ed382c889be07a7c6cbc0:
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next
and are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next master
Carolyn Wyborny (2):
igb: Update get cable length function for i210/i211
igb: Update version
Greg Rose (2):
ixgbevf: Check for error on dma_map_single call
ixgbevf: Update version string
Jesse Brandeburg (1):
maintainers: update with official intel support link, new maintainer
John Fastabend (2):
ixgbevf: make netif_napi_add and netif_napi_del symmetric
ixgbevf: fix softirq-safe to unsafe splat on internal mbx_lock
Tushar Dave (1):
e1000e: Minimum packet size must be 17 bytes
MAINTAINERS | 2 +
drivers/net/ethernet/intel/e1000e/netdev.c | 11 +++++
drivers/net/ethernet/intel/igb/e1000_phy.c | 20 ++++++++
drivers/net/ethernet/intel/igb/igb_main.c | 2 +-
drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c | 59 ++++++++++++-----------
5 files changed, 64 insertions(+), 30 deletions(-)
--
1.7.11.7
^ permalink raw reply [flat|nested] 31+ messages in thread
* Re: [net-next 0/8][pull request] Intel Wired LAN Driver Updates
2012-10-23 10:24 Jeff Kirsher
@ 2012-10-23 17:28 ` David Miller
0 siblings, 0 replies; 31+ messages in thread
From: David Miller @ 2012-10-23 17:28 UTC (permalink / raw)
To: jeffrey.t.kirsher; +Cc: netdev, gospo, sassmann
From: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Date: Tue, 23 Oct 2012 03:24:39 -0700
> This series contains updates to e1000e, igb, ixgbevf and MAINTAINERS.
>
> The following are changes since commit 598e74f32c6dd4b3dd0ed382c889be07a7c6cbc0:
> Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next
> and are available in the git repository at:
> git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next master
Pulled, thanks Jeff.
^ permalink raw reply [flat|nested] 31+ messages in thread
* [net-next 0/8][pull request] Intel Wired LAN Driver Updates
@ 2013-04-26 4:57 Jeff Kirsher
2013-04-26 4:57 ` [net-next 1/8] e1000e: fix numeric overflow in phc settime method Jeff Kirsher
` (8 more replies)
0 siblings, 9 replies; 31+ messages in thread
From: Jeff Kirsher @ 2013-04-26 4:57 UTC (permalink / raw)
To: davem; +Cc: Jeff Kirsher, netdev, gospo, sassmann, bhutchings, stable
This series contains updates to e1000e, igb and ixgbe.
There are 2 patches in this series which could be applied to net,
but since Linus is so very close to releasing 3.9, I do not think
it prudent to try and push these into net at this time. I have CC'd
stable on these patches so that they can queue them up as soon as
3.9 gets released.
The 2 patches are:
e1000e: fix numeric overflow in phc settime method
ixgbe: fix EICR write in ixgbe_msix_other
Richard provides a fix for e1000e by using a helper function from time.h
to resolve a unintended overflow in the PTP settime function.
Bruce provides a fix to wait for NAPI to be done with the current context
after disabling interrupts and then disable NAPI when the interface
is going down. This fixes a possible "unable to handle kernel paging
request" panic in net-next.
Andi Kleen provides a patch for igb to use mdelay instead of udelay
when we needed 100000us.
Jacob provides a fix for ixgbe to simply mask the lower 16bits off so that
ixgbe_msix_other does not write them in the EICR, which causes them to
remain high and be properly handled by the clean_rings interrupt routine
as normal.
Emil cleans up the logic in ixgbe_setup_loopback_test() to only access
registers applicable to the MAC type. In addition, removes majority
of the AUTOC register reads by using a cached value instead to avoid
writing corrupted values to AUTOC due to bad FW. Emil also add support
for disabling link during boot time. Lastly, he provides a patch which
adds the MAC type to the version in ethtool_regs which will make it
easier to check the MAC type when dumping registers with ethtool.
There is a separate ethtool tool patch which is dependent upon Emil's
last patch of the series to add the MAC type to the version in
ethtool_regs, which will be sent separately.
The following are changes since commit 3a4e0d6a95b2b6f7b22eb7c7361a0fc4289478eb:
openvswitch: Use parallel_ops genl.
and are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next master
Andi Kleen (1):
igb: limit udelay for phy changes to 10000us
Bruce Allan (1):
e1000e: panic caused by Rx traffic arriving while interface going
down
Emil Tantilov (4):
ixgbe: fix register access during ethtool loopback test
ixgbe: cache AUTOC reads
ixgbe: add support for disabling link at boot time on 82599
ixgbe: add mac type to the version in ethtool_regs
Jacob Keller (1):
ixgbe: fix EICR write in ixgbe_msix_other
Richard Cochran (1):
e1000e: fix numeric overflow in phc settime method
drivers/net/ethernet/intel/e1000e/netdev.c | 7 ++-
drivers/net/ethernet/intel/e1000e/ptp.c | 3 +-
drivers/net/ethernet/intel/igb/e1000_phy.c | 6 +--
drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c | 61 +++++++++++++++++-------
drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c | 29 ++++++-----
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 10 ++++
drivers/net/ethernet/intel/ixgbe/ixgbe_type.h | 2 +
7 files changed, 80 insertions(+), 38 deletions(-)
--
1.7.11.7
^ permalink raw reply [flat|nested] 31+ messages in thread
* [net-next 1/8] e1000e: fix numeric overflow in phc settime method
2013-04-26 4:57 [net-next 0/8][pull request] Intel Wired LAN Driver Updates Jeff Kirsher
@ 2013-04-26 4:57 ` Jeff Kirsher
2013-04-26 4:57 ` [net-next 2/8] e1000e: panic caused by Rx traffic arriving while interface going down Jeff Kirsher
` (7 subsequent siblings)
8 siblings, 0 replies; 31+ messages in thread
From: Jeff Kirsher @ 2013-04-26 4:57 UTC (permalink / raw)
To: davem; +Cc: Richard Cochran, netdev, gospo, sassmann, stable, Jeff Kirsher
From: Richard Cochran <richardcochran@gmail.com>
The PTP Hardware Clock settime function in the e1000e driver
computes nanoseconds from a struct timespec. The code converts the
seconds field .tv_sec by multiplying it with NSEC_PER_SEC. However,
both operands are of type long, resulting in an unintended overflow.
The patch fixes the issue by using the helper function from time.h.
CC: stable <stable@vger.kernel.org>
Signed-off-by: Richard Cochran <richardcochran@gmail.com>
Tested-by: Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
---
drivers/net/ethernet/intel/e1000e/ptp.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/drivers/net/ethernet/intel/e1000e/ptp.c b/drivers/net/ethernet/intel/e1000e/ptp.c
index b477fa5..065f8c8 100644
--- a/drivers/net/ethernet/intel/e1000e/ptp.c
+++ b/drivers/net/ethernet/intel/e1000e/ptp.c
@@ -145,8 +145,7 @@ static int e1000e_phc_settime(struct ptp_clock_info *ptp,
unsigned long flags;
u64 ns;
- ns = ts->tv_sec * NSEC_PER_SEC;
- ns += ts->tv_nsec;
+ ns = timespec_to_ns(ts);
/* reset the timecounter */
spin_lock_irqsave(&adapter->systim_lock, flags);
--
1.7.11.7
^ permalink raw reply related [flat|nested] 31+ messages in thread
* [net-next 2/8] e1000e: panic caused by Rx traffic arriving while interface going down
2013-04-26 4:57 [net-next 0/8][pull request] Intel Wired LAN Driver Updates Jeff Kirsher
2013-04-26 4:57 ` [net-next 1/8] e1000e: fix numeric overflow in phc settime method Jeff Kirsher
@ 2013-04-26 4:57 ` Jeff Kirsher
2013-04-26 4:57 ` [net-next 3/8] igb: limit udelay for phy changes to 10000us Jeff Kirsher
` (6 subsequent siblings)
8 siblings, 0 replies; 31+ messages in thread
From: Jeff Kirsher @ 2013-04-26 4:57 UTC (permalink / raw)
To: davem; +Cc: Bruce Allan, netdev, gospo, sassmann, Jeff Kirsher
From: Bruce Allan <bruce.w.allan@intel.com>
An "unable to handle kernel paging request" panic can occur when receiving
traffic while the interface is going down. Wait for NAPI to be done with
current context after disabling interrupts and then disable NAPI.
See https://bugzilla.vyatta.com/show_bug.cgi?id=8837.
Reported-by: Stephen Hemminger <stephen@networkplumber.org>
Signed-off-by: Bruce Allan <bruce.w.allan@intel.com>
Tested-by: Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
---
drivers/net/ethernet/intel/e1000e/netdev.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/drivers/net/ethernet/intel/e1000e/netdev.c b/drivers/net/ethernet/intel/e1000e/netdev.c
index da7f2fa..a27e3bc 100644
--- a/drivers/net/ethernet/intel/e1000e/netdev.c
+++ b/drivers/net/ethernet/intel/e1000e/netdev.c
@@ -4016,6 +4016,8 @@ void e1000e_down(struct e1000_adapter *adapter)
e1000_irq_disable(adapter);
+ napi_synchronize(&adapter->napi);
+
del_timer_sync(&adapter->watchdog_timer);
del_timer_sync(&adapter->phy_info_timer);
@@ -4372,12 +4374,13 @@ static int e1000_close(struct net_device *netdev)
pm_runtime_get_sync(&pdev->dev);
- napi_disable(&adapter->napi);
-
if (!test_bit(__E1000_DOWN, &adapter->state)) {
e1000e_down(adapter);
e1000_free_irq(adapter);
}
+
+ napi_disable(&adapter->napi);
+
e1000_power_down_phy(adapter);
e1000e_free_tx_resources(adapter->tx_ring);
--
1.7.11.7
^ permalink raw reply related [flat|nested] 31+ messages in thread
* [net-next 3/8] igb: limit udelay for phy changes to 10000us
2013-04-26 4:57 [net-next 0/8][pull request] Intel Wired LAN Driver Updates Jeff Kirsher
2013-04-26 4:57 ` [net-next 1/8] e1000e: fix numeric overflow in phc settime method Jeff Kirsher
2013-04-26 4:57 ` [net-next 2/8] e1000e: panic caused by Rx traffic arriving while interface going down Jeff Kirsher
@ 2013-04-26 4:57 ` Jeff Kirsher
2013-04-26 4:57 ` [net-next 4/8] ixgbe: fix EICR write in ixgbe_msix_other Jeff Kirsher
` (5 subsequent siblings)
8 siblings, 0 replies; 31+ messages in thread
From: Jeff Kirsher @ 2013-04-26 4:57 UTC (permalink / raw)
To: davem; +Cc: Andi Kleen, netdev, gospo, sassmann, Jeff Kirsher
From: Andi Kleen <ak@linux.intel.com>
If you really want 100000us you should really use mdelay or so.
Found by the LTO kernel build
Signed-off-by: Andi Kleen <ak@linux.intel.com>
Tested-by: Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
---
drivers/net/ethernet/intel/igb/e1000_phy.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/net/ethernet/intel/igb/e1000_phy.c b/drivers/net/ethernet/intel/igb/e1000_phy.c
index fd46add..115b0da 100644
--- a/drivers/net/ethernet/intel/igb/e1000_phy.c
+++ b/drivers/net/ethernet/intel/igb/e1000_phy.c
@@ -1130,7 +1130,7 @@ s32 igb_phy_force_speed_duplex_igp(struct e1000_hw *hw)
if (phy->autoneg_wait_to_complete) {
hw_dbg("Waiting for forced speed/duplex link on IGP phy.\n");
- ret_val = igb_phy_has_link(hw, PHY_FORCE_LIMIT, 100000, &link);
+ ret_val = igb_phy_has_link(hw, PHY_FORCE_LIMIT, 10000, &link);
if (ret_val)
goto out;
@@ -1138,7 +1138,7 @@ s32 igb_phy_force_speed_duplex_igp(struct e1000_hw *hw)
hw_dbg("Link taking longer than expected.\n");
/* Try once more */
- ret_val = igb_phy_has_link(hw, PHY_FORCE_LIMIT, 100000, &link);
+ ret_val = igb_phy_has_link(hw, PHY_FORCE_LIMIT, 10000, &link);
if (ret_val)
goto out;
}
@@ -1590,7 +1590,7 @@ s32 igb_phy_has_link(struct e1000_hw *hw, u32 iterations,
* it across the board.
*/
ret_val = hw->phy.ops.read_reg(hw, PHY_STATUS, &phy_status);
- if (ret_val) {
+ if (ret_val && usec_interval > 0) {
/* If the first read fails, another entity may have
* ownership of the resources, wait and try again to
* see if they have relinquished the resources yet.
--
1.7.11.7
^ permalink raw reply related [flat|nested] 31+ messages in thread
* [net-next 4/8] ixgbe: fix EICR write in ixgbe_msix_other
2013-04-26 4:57 [net-next 0/8][pull request] Intel Wired LAN Driver Updates Jeff Kirsher
` (2 preceding siblings ...)
2013-04-26 4:57 ` [net-next 3/8] igb: limit udelay for phy changes to 10000us Jeff Kirsher
@ 2013-04-26 4:57 ` Jeff Kirsher
2013-04-26 4:57 ` [net-next 5/8] ixgbe: fix register access during ethtool loopback test Jeff Kirsher
` (4 subsequent siblings)
8 siblings, 0 replies; 31+ messages in thread
From: Jeff Kirsher @ 2013-04-26 4:57 UTC (permalink / raw)
To: davem; +Cc: Jacob Keller, netdev, gospo, sassmann, stable, Jeff Kirsher
From: Jacob Keller <jacob.e.keller@intel.com>
Previously, the ixgbe_msix_other was writing the full 32bits of the set
interrupts, instead of only the ones which the ixgbe_msix_other is
handling. This resulted in a loss of performance when the X540's PPS feature is
enabled due to sometimes clearing queue interrupts which resulted in the driver
not getting the interrupt for cleaning the q_vector rings often enough. The fix
is to simply mask the lower 16bits off so that this handler does not write them
in the EICR, which causes them to remain high and be properly handled by the
clean_rings interrupt routine as normal.
Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>
Cc: stable <stable@vger.kernel.org>
Tested-by: Phil Schmitt <phillip.j.schmitt@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
---
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
index 88f6737..d30fbdd 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
@@ -2454,6 +2454,16 @@ static irqreturn_t ixgbe_msix_other(int irq, void *data)
* with the write to EICR.
*/
eicr = IXGBE_READ_REG(hw, IXGBE_EICS);
+
+ /* The lower 16bits of the EICR register are for the queue interrupts
+ * which should be masked here in order to not accidently clear them if
+ * the bits are high when ixgbe_msix_other is called. There is a race
+ * condition otherwise which results in possible performance loss
+ * especially if the ixgbe_msix_other interrupt is triggering
+ * consistently (as it would when PPS is turned on for the X540 device)
+ */
+ eicr &= 0xFFFF0000;
+
IXGBE_WRITE_REG(hw, IXGBE_EICR, eicr);
if (eicr & IXGBE_EICR_LSC)
--
1.7.11.7
^ permalink raw reply related [flat|nested] 31+ messages in thread
* [net-next 5/8] ixgbe: fix register access during ethtool loopback test
2013-04-26 4:57 [net-next 0/8][pull request] Intel Wired LAN Driver Updates Jeff Kirsher
` (3 preceding siblings ...)
2013-04-26 4:57 ` [net-next 4/8] ixgbe: fix EICR write in ixgbe_msix_other Jeff Kirsher
@ 2013-04-26 4:57 ` Jeff Kirsher
2013-04-26 4:57 ` [net-next 6/8] ixgbe: cache AUTOC reads Jeff Kirsher
` (3 subsequent siblings)
8 siblings, 0 replies; 31+ messages in thread
From: Jeff Kirsher @ 2013-04-26 4:57 UTC (permalink / raw)
To: davem; +Cc: Emil Tantilov, netdev, gospo, sassmann, Jeff Kirsher
From: Emil Tantilov <emil.s.tantilov@intel.com>
This patch cleans up the logic in ixgbe_setup_loopback_test() to only access
registers applicable to the MAC type. AUTOC is only valid on MACs older than
X540. MACC is used for X540.
In addition it removes a read of AUTOC and uses the stored value to force the
link up.
Signed-off-by: Emil Tantilov <emil.s.tantilov@intel.com>
Tested-by: Phil Schmitt <phillip.j.schmitt@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
---
drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c | 26 +++++++++++++-----------
1 file changed, 14 insertions(+), 12 deletions(-)
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c
index bbe00bc..509d3ae 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c
@@ -1609,16 +1609,9 @@ static int ixgbe_setup_loopback_test(struct ixgbe_adapter *adapter)
struct ixgbe_hw *hw = &adapter->hw;
u32 reg_data;
- /* X540 needs to set the MACC.FLU bit to force link up */
- if (adapter->hw.mac.type == ixgbe_mac_X540) {
- reg_data = IXGBE_READ_REG(hw, IXGBE_MACC);
- reg_data |= IXGBE_MACC_FLU;
- IXGBE_WRITE_REG(hw, IXGBE_MACC, reg_data);
- }
- /* right now we only support MAC loopback in the driver */
- reg_data = IXGBE_READ_REG(hw, IXGBE_HLREG0);
/* Setup MAC loopback */
+ reg_data = IXGBE_READ_REG(hw, IXGBE_HLREG0);
reg_data |= IXGBE_HLREG0_LPBK;
IXGBE_WRITE_REG(hw, IXGBE_HLREG0, reg_data);
@@ -1626,10 +1619,19 @@ static int ixgbe_setup_loopback_test(struct ixgbe_adapter *adapter)
reg_data |= IXGBE_FCTRL_BAM | IXGBE_FCTRL_SBP | IXGBE_FCTRL_MPE;
IXGBE_WRITE_REG(hw, IXGBE_FCTRL, reg_data);
- reg_data = IXGBE_READ_REG(hw, IXGBE_AUTOC);
- reg_data &= ~IXGBE_AUTOC_LMS_MASK;
- reg_data |= IXGBE_AUTOC_LMS_10G_LINK_NO_AN | IXGBE_AUTOC_FLU;
- IXGBE_WRITE_REG(hw, IXGBE_AUTOC, reg_data);
+ /* X540 needs to set the MACC.FLU bit to force link up */
+ if (adapter->hw.mac.type == ixgbe_mac_X540) {
+ reg_data = IXGBE_READ_REG(hw, IXGBE_MACC);
+ reg_data |= IXGBE_MACC_FLU;
+ IXGBE_WRITE_REG(hw, IXGBE_MACC, reg_data);
+ } else {
+ if (hw->mac.orig_autoc) {
+ reg_data = hw->mac.orig_autoc | IXGBE_AUTOC_FLU;
+ IXGBE_WRITE_REG(hw, IXGBE_AUTOC, reg_data);
+ } else {
+ return 10;
+ }
+ }
IXGBE_WRITE_FLUSH(hw);
usleep_range(10000, 20000);
--
1.7.11.7
^ permalink raw reply related [flat|nested] 31+ messages in thread
* [net-next 6/8] ixgbe: cache AUTOC reads
2013-04-26 4:57 [net-next 0/8][pull request] Intel Wired LAN Driver Updates Jeff Kirsher
` (4 preceding siblings ...)
2013-04-26 4:57 ` [net-next 5/8] ixgbe: fix register access during ethtool loopback test Jeff Kirsher
@ 2013-04-26 4:57 ` Jeff Kirsher
2013-04-26 4:57 ` [net-next 7/8] ixgbe: add support for disabling link at boot time on 82599 Jeff Kirsher
` (2 subsequent siblings)
8 siblings, 0 replies; 31+ messages in thread
From: Jeff Kirsher @ 2013-04-26 4:57 UTC (permalink / raw)
To: davem; +Cc: Emil Tantilov, netdev, gospo, sassmann, Jeff Kirsher
From: Emil Tantilov <emil.s.tantilov@intel.com>
This patch removes majority of the AUTOC register reads by using a cached
value instead.
The reason for this change is to avoid writing corrupted values to AUTOC
due to bad FW.
Signed-off-by: Emil Tantilov <emil.s.tantilov@intel.com>
Tested-by: Phil Schmitt <phillip.j.schmitt@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
---
drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c | 40 +++++++++++++++-----------
drivers/net/ethernet/intel/ixgbe/ixgbe_type.h | 1 +
2 files changed, 25 insertions(+), 16 deletions(-)
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c
index 3f79242..c4c5e87 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c
@@ -167,9 +167,9 @@ static s32 ixgbe_setup_sfp_modules_82599(struct ixgbe_hw *hw)
}
/* Restart DSP and set SFI mode */
- IXGBE_WRITE_REG(hw, IXGBE_AUTOC, (IXGBE_READ_REG(hw,
- IXGBE_AUTOC) | IXGBE_AUTOC_LMS_10G_SERIAL));
-
+ IXGBE_WRITE_REG(hw, IXGBE_AUTOC, ((hw->mac.orig_autoc) |
+ IXGBE_AUTOC_LMS_10G_SERIAL));
+ hw->mac.cached_autoc = IXGBE_READ_REG(hw, IXGBE_AUTOC);
ret_val = ixgbe_reset_pipeline_82599(hw);
if (got_lock) {
@@ -803,12 +803,9 @@ static s32 ixgbe_setup_mac_link_82599(struct ixgbe_hw *hw,
bool autoneg_wait_to_complete)
{
s32 status = 0;
- u32 autoc = IXGBE_READ_REG(hw, IXGBE_AUTOC);
+ u32 autoc, pma_pmd_1g, link_mode, start_autoc;
u32 autoc2 = IXGBE_READ_REG(hw, IXGBE_AUTOC2);
- u32 start_autoc = autoc;
u32 orig_autoc = 0;
- u32 link_mode = autoc & IXGBE_AUTOC_LMS_MASK;
- u32 pma_pmd_1g = autoc & IXGBE_AUTOC_1G_PMA_PMD_MASK;
u32 pma_pmd_10g_serial = autoc2 & IXGBE_AUTOC2_10G_SERIAL_PMA_PMD_MASK;
u32 links_reg;
u32 i;
@@ -831,9 +828,14 @@ static s32 ixgbe_setup_mac_link_82599(struct ixgbe_hw *hw,
/* Use stored value (EEPROM defaults) of AUTOC to find KR/KX4 support*/
if (hw->mac.orig_link_settings_stored)
- orig_autoc = hw->mac.orig_autoc;
+ autoc = hw->mac.orig_autoc;
else
- orig_autoc = autoc;
+ autoc = IXGBE_READ_REG(hw, IXGBE_AUTOC);
+
+ orig_autoc = autoc;
+ start_autoc = hw->mac.cached_autoc;
+ link_mode = autoc & IXGBE_AUTOC_LMS_MASK;
+ pma_pmd_1g = autoc & IXGBE_AUTOC_1G_PMA_PMD_MASK;
if (link_mode == IXGBE_AUTOC_LMS_KX4_KX_KR ||
link_mode == IXGBE_AUTOC_LMS_KX4_KX_KR_1G_AN ||
@@ -887,6 +889,7 @@ static s32 ixgbe_setup_mac_link_82599(struct ixgbe_hw *hw,
/* Restart link */
IXGBE_WRITE_REG(hw, IXGBE_AUTOC, autoc);
+ hw->mac.cached_autoc = autoc;
ixgbe_reset_pipeline_82599(hw);
if (got_lock)
@@ -958,7 +961,7 @@ static s32 ixgbe_reset_hw_82599(struct ixgbe_hw *hw)
{
ixgbe_link_speed link_speed;
s32 status;
- u32 ctrl, i, autoc, autoc2;
+ u32 ctrl, i, autoc2;
u32 curr_lms;
bool link_up = false;
@@ -991,8 +994,12 @@ static s32 ixgbe_reset_hw_82599(struct ixgbe_hw *hw)
if (hw->phy.reset_disable == false && hw->phy.ops.reset != NULL)
hw->phy.ops.reset(hw);
- /* remember AUTOC LMS from before we reset */
- curr_lms = IXGBE_READ_REG(hw, IXGBE_AUTOC) & IXGBE_AUTOC_LMS_MASK;
+ /* remember AUTOC from before we reset */
+ if (hw->mac.cached_autoc)
+ curr_lms = hw->mac.cached_autoc & IXGBE_AUTOC_LMS_MASK;
+ else
+ curr_lms = IXGBE_READ_REG(hw, IXGBE_AUTOC) &
+ IXGBE_AUTOC_LMS_MASK;
mac_reset_top:
/*
@@ -1042,10 +1049,10 @@ mac_reset_top:
* stored off yet. Otherwise restore the stored original
* values since the reset operation sets back to defaults.
*/
- autoc = IXGBE_READ_REG(hw, IXGBE_AUTOC);
+ hw->mac.cached_autoc = IXGBE_READ_REG(hw, IXGBE_AUTOC);
autoc2 = IXGBE_READ_REG(hw, IXGBE_AUTOC2);
if (hw->mac.orig_link_settings_stored == false) {
- hw->mac.orig_autoc = autoc;
+ hw->mac.orig_autoc = hw->mac.cached_autoc;
hw->mac.orig_autoc2 = autoc2;
hw->mac.orig_link_settings_stored = true;
} else {
@@ -1062,7 +1069,7 @@ mac_reset_top:
(hw->mac.orig_autoc & ~IXGBE_AUTOC_LMS_MASK) |
curr_lms;
- if (autoc != hw->mac.orig_autoc) {
+ if (hw->mac.cached_autoc != hw->mac.orig_autoc) {
/* Need SW/FW semaphore around AUTOC writes if LESM is
* on, likewise reset_pipeline requires us to hold
* this lock as it also writes to AUTOC.
@@ -1078,6 +1085,7 @@ mac_reset_top:
}
IXGBE_WRITE_REG(hw, IXGBE_AUTOC, hw->mac.orig_autoc);
+ hw->mac.cached_autoc = hw->mac.orig_autoc;
ixgbe_reset_pipeline_82599(hw);
if (got_lock)
@@ -2181,7 +2189,7 @@ s32 ixgbe_reset_pipeline_82599(struct ixgbe_hw *hw)
s32 i, autoc_reg, ret_val;
s32 anlp1_reg = 0;
- autoc_reg = IXGBE_READ_REG(hw, IXGBE_AUTOC);
+ autoc_reg = hw->mac.cached_autoc;
autoc_reg |= IXGBE_AUTOC_AN_RESTART;
/* Write AUTOC register with toggled LMS[2] bit and Restart_AN */
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_type.h b/drivers/net/ethernet/intel/ixgbe/ixgbe_type.h
index 6d70665..7480f7b 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_type.h
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_type.h
@@ -2928,6 +2928,7 @@ struct ixgbe_mac_info {
u32 max_tx_queues;
u32 max_rx_queues;
u32 orig_autoc;
+ u32 cached_autoc;
u32 orig_autoc2;
bool orig_link_settings_stored;
bool autotry_restart;
--
1.7.11.7
^ permalink raw reply related [flat|nested] 31+ messages in thread
* [net-next 7/8] ixgbe: add support for disabling link at boot time on 82599
2013-04-26 4:57 [net-next 0/8][pull request] Intel Wired LAN Driver Updates Jeff Kirsher
` (5 preceding siblings ...)
2013-04-26 4:57 ` [net-next 6/8] ixgbe: cache AUTOC reads Jeff Kirsher
@ 2013-04-26 4:57 ` Jeff Kirsher
2013-04-26 4:57 ` [net-next 8/8] ixgbe: add mac type to the version in ethtool_regs Jeff Kirsher
2013-04-27 3:34 ` [net-next 0/8][pull request] Intel Wired LAN Driver Updates David Miller
8 siblings, 0 replies; 31+ messages in thread
From: Jeff Kirsher @ 2013-04-26 4:57 UTC (permalink / raw)
To: davem; +Cc: Emil Tantilov, netdev, gospo, sassmann, Jeff Kirsher
From: Emil Tantilov <emil.s.tantilov@intel.com>
This patch adds support for disabling link during boot time. This
feature was requested by customers and is configurable through the EEPROM.
Signed-off-by: Emil Tantilov <emil.s.tantilov@intel.com>
Tested-by: Phil Schmitt <phillip.j.schmitt@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
---
drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c | 21 +++++++++++++++++++--
drivers/net/ethernet/intel/ixgbe/ixgbe_type.h | 1 +
2 files changed, 20 insertions(+), 2 deletions(-)
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c
index c4c5e87..0b82d38 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_82599.c
@@ -1051,6 +1051,14 @@ mac_reset_top:
*/
hw->mac.cached_autoc = IXGBE_READ_REG(hw, IXGBE_AUTOC);
autoc2 = IXGBE_READ_REG(hw, IXGBE_AUTOC2);
+
+ /* Enable link if disabled in NVM */
+ if (autoc2 & IXGBE_AUTOC2_LINK_DISABLE_MASK) {
+ autoc2 &= ~IXGBE_AUTOC2_LINK_DISABLE_MASK;
+ IXGBE_WRITE_REG(hw, IXGBE_AUTOC2, autoc2);
+ IXGBE_WRITE_FLUSH(hw);
+ }
+
if (hw->mac.orig_link_settings_stored == false) {
hw->mac.orig_autoc = hw->mac.cached_autoc;
hw->mac.orig_autoc2 = autoc2;
@@ -2186,8 +2194,17 @@ static s32 ixgbe_read_eeprom_82599(struct ixgbe_hw *hw,
**/
s32 ixgbe_reset_pipeline_82599(struct ixgbe_hw *hw)
{
- s32 i, autoc_reg, ret_val;
- s32 anlp1_reg = 0;
+ s32 ret_val;
+ u32 anlp1_reg = 0;
+ u32 i, autoc_reg, autoc2_reg;
+
+ /* Enable link if disabled in NVM */
+ autoc2_reg = IXGBE_READ_REG(hw, IXGBE_AUTOC2);
+ if (autoc2_reg & IXGBE_AUTOC2_LINK_DISABLE_MASK) {
+ autoc2_reg &= ~IXGBE_AUTOC2_LINK_DISABLE_MASK;
+ IXGBE_WRITE_REG(hw, IXGBE_AUTOC2, autoc2_reg);
+ IXGBE_WRITE_FLUSH(hw);
+ }
autoc_reg = hw->mac.cached_autoc;
autoc_reg |= IXGBE_AUTOC_AN_RESTART;
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_type.h b/drivers/net/ethernet/intel/ixgbe/ixgbe_type.h
index 7480f7b..70c6aa3 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_type.h
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_type.h
@@ -1593,6 +1593,7 @@ enum {
#define IXGBE_AUTOC2_10G_KR (0x0 << IXGBE_AUTOC2_10G_SERIAL_PMA_PMD_SHIFT)
#define IXGBE_AUTOC2_10G_XFI (0x1 << IXGBE_AUTOC2_10G_SERIAL_PMA_PMD_SHIFT)
#define IXGBE_AUTOC2_10G_SFI (0x2 << IXGBE_AUTOC2_10G_SERIAL_PMA_PMD_SHIFT)
+#define IXGBE_AUTOC2_LINK_DISABLE_MASK 0x70000000
#define IXGBE_MACC_FLU 0x00000001
#define IXGBE_MACC_FSV_10G 0x00030000
--
1.7.11.7
^ permalink raw reply related [flat|nested] 31+ messages in thread
* [net-next 8/8] ixgbe: add mac type to the version in ethtool_regs
2013-04-26 4:57 [net-next 0/8][pull request] Intel Wired LAN Driver Updates Jeff Kirsher
` (6 preceding siblings ...)
2013-04-26 4:57 ` [net-next 7/8] ixgbe: add support for disabling link at boot time on 82599 Jeff Kirsher
@ 2013-04-26 4:57 ` Jeff Kirsher
2013-04-27 3:34 ` [net-next 0/8][pull request] Intel Wired LAN Driver Updates David Miller
8 siblings, 0 replies; 31+ messages in thread
From: Jeff Kirsher @ 2013-04-26 4:57 UTC (permalink / raw)
To: davem; +Cc: Emil Tantilov, netdev, gospo, sassmann, bhutchings, Jeff Kirsher
From: Emil Tantilov <emil.s.tantilov@intel.com>
This patch adds the mac type to the version in ethtool_regs.
This will make it easier to check the mac type when dumping registers with
ethtool. The drawback of this is that older versions of ethtool will only
be able to dump in hex format for 82599 and above when used with the updated
driver.
Signed-off-by: Emil Tantilov <emil.s.tantilov@intel.com>
Tested-by: Phil Schmitt <phillip.j.schmitt@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
---
drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c
index 509d3ae..d375472 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c
@@ -440,7 +440,8 @@ static void ixgbe_get_regs(struct net_device *netdev,
memset(p, 0, IXGBE_REGS_LEN * sizeof(u32));
- regs->version = (1 << 24) | hw->revision_id << 16 | hw->device_id;
+ regs->version = hw->mac.type << 24 | hw->revision_id << 16 |
+ hw->device_id;
/* General Registers */
regs_buff[0] = IXGBE_READ_REG(hw, IXGBE_CTRL);
--
1.7.11.7
^ permalink raw reply related [flat|nested] 31+ messages in thread
* Re: [net-next 0/8][pull request] Intel Wired LAN Driver Updates
2013-04-26 4:57 [net-next 0/8][pull request] Intel Wired LAN Driver Updates Jeff Kirsher
` (7 preceding siblings ...)
2013-04-26 4:57 ` [net-next 8/8] ixgbe: add mac type to the version in ethtool_regs Jeff Kirsher
@ 2013-04-27 3:34 ` David Miller
8 siblings, 0 replies; 31+ messages in thread
From: David Miller @ 2013-04-27 3:34 UTC (permalink / raw)
To: jeffrey.t.kirsher; +Cc: netdev, gospo, sassmann, bhutchings, stable
From: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Date: Thu, 25 Apr 2013 21:57:03 -0700
> This series contains updates to e1000e, igb and ixgbe.
...
> git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next master
Pulled, thanks Jeff.
^ permalink raw reply [flat|nested] 31+ messages in thread
* [net-next 0/8][pull request] Intel Wired LAN Driver Updates
@ 2013-06-14 3:55 Jeff Kirsher
0 siblings, 0 replies; 31+ messages in thread
From: Jeff Kirsher @ 2013-06-14 3:55 UTC (permalink / raw)
To: davem; +Cc: Jeff Kirsher, netdev, gospo, sassmann
This series implements the new i40e driver for Intel's upcoming
Intel(R) Ethernet Controller XL710 Family of devices.
Jesse tried to break the patches up to ease review and still be
bisectable, as the last patch adds the driver to the kernel compile
with CONFIG_I40E.
This driver is for a brand new bit of silicon that has a different
design than other Intel Ethernet silicon, and therefore needed a new
driver.
The hardware has quite a bit of capability and this driver is only
meant to provide basic functionality at first. Future patches will
continue to add functionality and bug fixes.
This initial release is very early in the product cycle with the intent
of getting initial support into the kernel before users have the
hardware available to purchase. A software development manual is not
ready yet but will be available when the hardware ships.
This driver *does* use some code (as our previous drivers do) that is
meant to be shared to different OS drivers. One of the following
patches has the majority of this code in it, and is clearly called out
in the commit message.
An associated i40evf driver will follow in the future.
List of tools we ran in preparation:
sparse clean
make W=1, W=2 clean
checkpatch (almost) clean
- total: 1 errors, 5 warnings, 30444 lines checked
- NOTE: Ignored message types: LONG_LINE
- 5 warnings/1 error are bogus
- long lines that remain are #defines best on one line
codespell clean
smatch (almost) clean with a couple minor warnings
coccicheck clean
namespacecheck clean
allmodconfig clean
ppc64 build clean (unable to test yet)
This driver is a team effort, thank you to Joseph Gasparakis,
Shannon Nelson, Anjali Singhai-Jain, Mitch Williams, Neerav
Parikh, Vasu Dev, Yi Zou, and PJ Waskiewicz.
TODO (known issues)
get_stats64
BQL implementation
use 40000_* defines from kernel
some possible indentation issues on function parameters
The following are changes since commit 948e306d7d645af80ea331b60495710fe4fe12bb:
net/mlx4: Add VF link state support
and are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next master
Jesse Brandeburg (8):
i40e: main driver core
i40e: transmit, receive, and napi
i40e: driver ethtool core
i40e: driver core headers
i40e: implement virtual device interface
i40e: init code and hardware support
i40e: sysfs and debugfs interfaces
i40e: include i40e in kernel proper
Documentation/networking/00-INDEX | 2 +
Documentation/networking/i40e.txt | 115 +
MAINTAINERS | 3 +-
drivers/net/ethernet/intel/Kconfig | 18 +
drivers/net/ethernet/intel/Makefile | 1 +
drivers/net/ethernet/intel/i40e/Kbuild | 45 +
drivers/net/ethernet/intel/i40e/i40e.h | 526 ++
drivers/net/ethernet/intel/i40e/i40e_adminq.c | 935 +++
drivers/net/ethernet/intel/i40e/i40e_adminq.h | 112 +
drivers/net/ethernet/intel/i40e/i40e_adminq_cmd.h | 1929 ++++++
drivers/net/ethernet/intel/i40e/i40e_alloc.h | 59 +
drivers/net/ethernet/intel/i40e/i40e_common.c | 1947 ++++++
drivers/net/ethernet/intel/i40e/i40e_debugfs.c | 2205 ++++++
drivers/net/ethernet/intel/i40e/i40e_diag.c | 133 +
drivers/net/ethernet/intel/i40e/i40e_diag.h | 55 +
drivers/net/ethernet/intel/i40e/i40e_ethtool.c | 1198 ++++
drivers/net/ethernet/intel/i40e/i40e_hmc.c | 370 +
drivers/net/ethernet/intel/i40e/i40e_hmc.h | 246 +
drivers/net/ethernet/intel/i40e/i40e_lan_hmc.c | 1004 +++
drivers/net/ethernet/intel/i40e/i40e_lan_hmc.h | 170 +
drivers/net/ethernet/intel/i40e/i40e_main.c | 7258 ++++++++++++++++++++
drivers/net/ethernet/intel/i40e/i40e_nvm.c | 330 +
drivers/net/ethernet/intel/i40e/i40e_osdep.h | 78 +
drivers/net/ethernet/intel/i40e/i40e_prototype.h | 244 +
drivers/net/ethernet/intel/i40e/i40e_register.h | 4688 +++++++++++++
drivers/net/ethernet/intel/i40e/i40e_status.h | 101 +
drivers/net/ethernet/intel/i40e/i40e_sysfs.c | 627 ++
drivers/net/ethernet/intel/i40e/i40e_txrx.c | 1838 +++++
drivers/net/ethernet/intel/i40e/i40e_txrx.h | 260 +
drivers/net/ethernet/intel/i40e/i40e_type.h | 1143 +++
drivers/net/ethernet/intel/i40e/i40e_virtchnl.h | 369 +
drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c | 2279 ++++++
drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.h | 121 +
33 files changed, 30408 insertions(+), 1 deletion(-)
create mode 100644 Documentation/networking/i40e.txt
create mode 100644 drivers/net/ethernet/intel/i40e/Kbuild
create mode 100644 drivers/net/ethernet/intel/i40e/i40e.h
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_adminq.c
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_adminq.h
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_adminq_cmd.h
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_alloc.h
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_common.c
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_debugfs.c
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_diag.c
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_diag.h
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_ethtool.c
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_hmc.c
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_hmc.h
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_lan_hmc.c
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_lan_hmc.h
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_main.c
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_nvm.c
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_osdep.h
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_prototype.h
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_register.h
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_status.h
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_sysfs.c
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_txrx.c
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_txrx.h
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_type.h
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_virtchnl.h
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.h
--
1.7.11.7
^ permalink raw reply [flat|nested] 31+ messages in thread
* [net-next 0/8][pull request] Intel Wired LAN Driver Updates
@ 2013-09-06 5:43 Jeff Kirsher
2013-09-06 5:58 ` Jeff Kirsher
0 siblings, 1 reply; 31+ messages in thread
From: Jeff Kirsher @ 2013-09-06 5:43 UTC (permalink / raw)
To: davem
Cc: Jeff Kirsher, netdev, gospo, sassmann, jesse.brandeburg,
shannon.nelson, peter.p.waskiewicz.jr, e1000-devel
This series implements the new i40e driver for Intel's upcoming
Intel(R) Ethernet Controller XL710 Family of devices.
V1: initial send
V2: each patch has individual comments, in general, feedback from the
list was applied and addressed. Many changes due to internal review
and coding as well.
V3: many more individual comments addressed, thanks reviewers! Many
other changes due to internal review and development.
V4: addresses remaining community comments, mostly trivial edits.
major sparse based cleanup of possible endian issues
removal of most of __func__ references
sizeof(*var) instead of sizeof(struct ...)
change 'NULL ==' tests to !NULL
implement xps
use kernel bitshift macros (upper_32_bits, etc)
V5: remove sysfs support from this set, will rearchitect
changes from community comments
Let me start by saying thanks and we appreciate any time spent by
those of you who review and comment on this new driver, and we will
attempt to address and respond to all issues brought to our attention.
Jesse tried to break the patches up to ease review, but the series should
apply and still be bisectable, as the last patch adds the driver to
the kernel compile with CONFIG_I40E.
This driver is for a brand new bit of silicon that has a different
design than other Intel Ethernet silicon, and therefore needed a new
driver.
The hardware has quite a bit of capability and this driver is only
meant to provide basic functionality at first. Future patches will
continue to add functionality and bug fixes.
This initial release is very early in the product cycle with the intent
of getting initial support into the kernel before users have the
hardware available to purchase. A software development manual is not
ready yet but will be available when the hardware ships.
To be clear, the driver development model and interaction with
community submitted patches *will not be any different* than what
we are currently doing today.
This driver *does* use some code (as our previous drivers do) that is
meant to be shared to different OS drivers. One of the following
patches has the majority of this code in it, and is clearly called out
in the commit message.
An associated i40evf driver has been posted for review.
List of tools we ran in preparation:
way more sparse clean
make W=1, W=2 clean
checkpatch (almost) clean
total: 1 errors, 4 warnings, 30595 lines checked
NOTE: Ignored message types: LONG_LINE
- issues have been addressed and the remainders
are noise.
codespell clean
smatch (almost) clean with a couple minor warnings
coccicheck clean
namespacecheck clean
allmodconfig clean
ppc64 build clean (unable to test yet)
This driver is a team effort, thank you to Joseph Gasparakis,
Shannon Nelson, Anjali Singhai-Jain, Mitch Williams, Neerav
Parikh, Vasu Dev, Kavindya Deegala, Yi Zou, and PJ Waskiewicz.
TODO (known issues)
BQL implementation
finish rtnl_stat64 locking (we have a patch but debugging it)
The following are changes since commit 2e032852245b3dcfe5461d7353e34eb6da095ccf:
Merge branch 'for-linus' of git://git.linaro.org/people/rmk/linux-arm
and are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next master
Jesse Brandeburg (8):
i40e: main driver core
i40e: transmit, receive, and NAPI
i40e: driver ethtool core
i40e: driver core headers
i40e: implement virtual device interface
i40e: init code and hardware support
i40e: debugfs interface
i40e: include i40e in kernel proper
Documentation/networking/00-INDEX | 2 +
Documentation/networking/i40e.txt | 115 +
MAINTAINERS | 3 +-
drivers/net/ethernet/intel/Kconfig | 18 +
drivers/net/ethernet/intel/Makefile | 1 +
drivers/net/ethernet/intel/i40e/Kbuild | 44 +
drivers/net/ethernet/intel/i40e/i40e.h | 566 ++
drivers/net/ethernet/intel/i40e/i40e_adminq.c | 994 +++
drivers/net/ethernet/intel/i40e/i40e_adminq.h | 112 +
drivers/net/ethernet/intel/i40e/i40e_adminq_cmd.h | 2077 ++++++
drivers/net/ethernet/intel/i40e/i40e_alloc.h | 59 +
drivers/net/ethernet/intel/i40e/i40e_common.c | 2048 ++++++
drivers/net/ethernet/intel/i40e/i40e_debugfs.c | 2083 ++++++
drivers/net/ethernet/intel/i40e/i40e_diag.c | 133 +
drivers/net/ethernet/intel/i40e/i40e_diag.h | 52 +
drivers/net/ethernet/intel/i40e/i40e_ethtool.c | 1452 ++++
drivers/net/ethernet/intel/i40e/i40e_hmc.c | 370 +
drivers/net/ethernet/intel/i40e/i40e_hmc.h | 245 +
drivers/net/ethernet/intel/i40e/i40e_lan_hmc.c | 1007 +++
drivers/net/ethernet/intel/i40e/i40e_lan_hmc.h | 169 +
drivers/net/ethernet/intel/i40e/i40e_main.c | 7386 ++++++++++++++++++++
drivers/net/ethernet/intel/i40e/i40e_nvm.c | 391 ++
drivers/net/ethernet/intel/i40e/i40e_osdep.h | 86 +
drivers/net/ethernet/intel/i40e/i40e_prototype.h | 239 +
drivers/net/ethernet/intel/i40e/i40e_register.h | 4688 +++++++++++++
drivers/net/ethernet/intel/i40e/i40e_status.h | 101 +
drivers/net/ethernet/intel/i40e/i40e_txrx.c | 1817 +++++
drivers/net/ethernet/intel/i40e/i40e_txrx.h | 259 +
drivers/net/ethernet/intel/i40e/i40e_type.h | 1154 +++
drivers/net/ethernet/intel/i40e/i40e_virtchnl.h | 368 +
drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c | 2408 +++++++
drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.h | 121 +
32 files changed, 30567 insertions(+), 1 deletion(-)
create mode 100644 Documentation/networking/i40e.txt
create mode 100644 drivers/net/ethernet/intel/i40e/Kbuild
create mode 100644 drivers/net/ethernet/intel/i40e/i40e.h
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_adminq.c
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_adminq.h
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_adminq_cmd.h
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_alloc.h
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_common.c
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_debugfs.c
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_diag.c
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_diag.h
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_ethtool.c
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_hmc.c
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_hmc.h
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_lan_hmc.c
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_lan_hmc.h
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_main.c
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_nvm.c
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_osdep.h
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_prototype.h
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_register.h
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_status.h
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_txrx.c
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_txrx.h
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_type.h
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_virtchnl.h
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.h
--
1.8.3.1
^ permalink raw reply [flat|nested] 31+ messages in thread
* Re: [net-next 0/8][pull request] Intel Wired LAN Driver Updates
2013-09-06 5:43 Jeff Kirsher
@ 2013-09-06 5:58 ` Jeff Kirsher
0 siblings, 0 replies; 31+ messages in thread
From: Jeff Kirsher @ 2013-09-06 5:58 UTC (permalink / raw)
To: davem; +Cc: e1000-devel, netdev, jesse.brandeburg, gospo, sassmann
[-- Attachment #1.1: Type: text/plain, Size: 4024 bytes --]
On Thu, 2013-09-05 at 22:43 -0700, Jeff Kirsher wrote:
> This series implements the new i40e driver for Intel's upcoming
> Intel(R) Ethernet Controller XL710 Family of devices.
>
> V1: initial send
> V2: each patch has individual comments, in general, feedback from the
> list was applied and addressed. Many changes due to internal
> review
> and coding as well.
> V3: many more individual comments addressed, thanks reviewers! Many
> other changes due to internal review and development.
> V4: addresses remaining community comments, mostly trivial edits.
> major sparse based cleanup of possible endian issues
> removal of most of __func__ references
> sizeof(*var) instead of sizeof(struct ...)
> change 'NULL ==' tests to !NULL
> implement xps
> use kernel bitshift macros (upper_32_bits, etc)
> V5: remove sysfs support from this set, will rearchitect
> changes from community comments
>
> Let me start by saying thanks and we appreciate any time spent by
> those of you who review and comment on this new driver, and we will
> attempt to address and respond to all issues brought to our attention.
>
> Jesse tried to break the patches up to ease review, but the series
> should
> apply and still be bisectable, as the last patch adds the driver to
> the kernel compile with CONFIG_I40E.
>
> This driver is for a brand new bit of silicon that has a different
> design than other Intel Ethernet silicon, and therefore needed a new
> driver.
>
> The hardware has quite a bit of capability and this driver is only
> meant to provide basic functionality at first. Future patches will
> continue to add functionality and bug fixes.
>
> This initial release is very early in the product cycle with the
> intent
> of getting initial support into the kernel before users have the
> hardware available to purchase. A software development manual is not
> ready yet but will be available when the hardware ships.
>
> To be clear, the driver development model and interaction with
> community submitted patches *will not be any different* than what
> we are currently doing today.
>
> This driver *does* use some code (as our previous drivers do) that is
> meant to be shared to different OS drivers. One of the following
> patches has the majority of this code in it, and is clearly called out
> in the commit message.
>
> An associated i40evf driver has been posted for review.
>
> List of tools we ran in preparation:
> way more sparse clean
> make W=1, W=2 clean
> checkpatch (almost) clean
> total: 1 errors, 4 warnings, 30595 lines checked
> NOTE: Ignored message types: LONG_LINE
> - issues have been addressed and the remainders
> are noise.
> codespell clean
> smatch (almost) clean with a couple minor warnings
> coccicheck clean
> namespacecheck clean
> allmodconfig clean
> ppc64 build clean (unable to test yet)
>
> This driver is a team effort, thank you to Joseph Gasparakis,
> Shannon Nelson, Anjali Singhai-Jain, Mitch Williams, Neerav
> Parikh, Vasu Dev, Kavindya Deegala, Yi Zou, and PJ Waskiewicz.
>
> TODO (known issues)
> BQL implementation
> finish rtnl_stat64 locking (we have a patch but debugging it)
>
> The following are changes since commit
> 2e032852245b3dcfe5461d7353e34eb6da095ccf:
> Merge branch 'for-linus' of
> git://git.linaro.org/people/rmk/linux-arm
> and are available in the git repository at:
> git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next
> master
>
> Jesse Brandeburg (8):
> i40e: main driver core
> i40e: transmit, receive, and NAPI
> i40e: driver ethtool core
> i40e: driver core headers
> i40e: implement virtual device interface
> i40e: init code and hardware support
> i40e: debugfs interface
> i40e: include i40e in kernel proper
Grrr... I sent v5 out and forgot to note it in the title. Sorry for the
spam, I will resend with the proper titles. :-(
[-- Attachment #1.2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 836 bytes --]
[-- Attachment #2: Type: text/plain, Size: 433 bytes --]
------------------------------------------------------------------------------
Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more!
Discover the easy way to master current and previous Microsoft technologies
and advance your career. Get an incredible 1,500+ hours of step-by-step
tutorial videos with LearnDevNow. Subscribe today and save!
http://pubads.g.doubleclick.net/gampad/clk?id=58041391&iu=/4140/ostg.clktrk
[-- Attachment #3: Type: text/plain, Size: 257 bytes --]
_______________________________________________
E1000-devel mailing list
E1000-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/e1000-devel
To learn more about Intel® Ethernet, visit http://communities.intel.com/community/wired
^ permalink raw reply [flat|nested] 31+ messages in thread
* [net-next 0/8][pull request] Intel Wired LAN Driver Updates
@ 2014-01-01 0:53 Jeff Kirsher
2014-01-02 4:01 ` David Miller
0 siblings, 1 reply; 31+ messages in thread
From: Jeff Kirsher @ 2014-01-01 0:53 UTC (permalink / raw)
To: davem; +Cc: Jeff Kirsher, netdev, gospo, sassmann
This series implements the Linux Virtual Function (VF) driver for
the Intel Ethernet Controller XL710 family.
The following are changes since commit 21eb218989523b7bee28900aaec9f9296b70fa27:
net, sch: fix the typo in register_qdisc()
and are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next master
Greg Rose (8):
i40evf: main driver core
i40evf: transmit and receive functionality
i40evf: core ethtool functionality
i40evf: virtual channel interface
i40evf: driver core headers
i40evf: init code and hardware support
i40evf: add driver to kernel build system
i40evf: A0 silicon specific
Documentation/networking/i40evf.txt | 47 +
MAINTAINERS | 4 +-
drivers/net/ethernet/intel/Kconfig | 19 +
drivers/net/ethernet/intel/Makefile | 1 +
drivers/net/ethernet/intel/i40evf/Makefile | 33 +
drivers/net/ethernet/intel/i40evf/i40e_adminq.c | 927 ++++
drivers/net/ethernet/intel/i40evf/i40e_adminq.h | 106 +
.../net/ethernet/intel/i40evf/i40e_adminq_cmd.h | 2153 +++++++++
drivers/net/ethernet/intel/i40evf/i40e_alloc.h | 55 +
drivers/net/ethernet/intel/i40evf/i40e_common.c | 254 ++
drivers/net/ethernet/intel/i40evf/i40e_hmc.h | 238 +
drivers/net/ethernet/intel/i40evf/i40e_lan_hmc.h | 165 +
drivers/net/ethernet/intel/i40evf/i40e_osdep.h | 72 +
drivers/net/ethernet/intel/i40evf/i40e_prototype.h | 84 +
drivers/net/ethernet/intel/i40evf/i40e_register.h | 4667 ++++++++++++++++++++
drivers/net/ethernet/intel/i40evf/i40e_status.h | 97 +
drivers/net/ethernet/intel/i40evf/i40e_txrx.c | 1573 +++++++
drivers/net/ethernet/intel/i40evf/i40e_txrx.h | 296 ++
drivers/net/ethernet/intel/i40evf/i40e_type.h | 1152 +++++
drivers/net/ethernet/intel/i40evf/i40e_virtchnl.h | 364 ++
drivers/net/ethernet/intel/i40evf/i40evf.h | 321 ++
drivers/net/ethernet/intel/i40evf/i40evf_ethtool.c | 390 ++
drivers/net/ethernet/intel/i40evf/i40evf_main.c | 2353 ++++++++++
.../net/ethernet/intel/i40evf/i40evf_virtchnl.c | 772 ++++
24 files changed, 16142 insertions(+), 1 deletion(-)
create mode 100644 Documentation/networking/i40evf.txt
create mode 100644 drivers/net/ethernet/intel/i40evf/Makefile
create mode 100644 drivers/net/ethernet/intel/i40evf/i40e_adminq.c
create mode 100644 drivers/net/ethernet/intel/i40evf/i40e_adminq.h
create mode 100644 drivers/net/ethernet/intel/i40evf/i40e_adminq_cmd.h
create mode 100644 drivers/net/ethernet/intel/i40evf/i40e_alloc.h
create mode 100644 drivers/net/ethernet/intel/i40evf/i40e_common.c
create mode 100644 drivers/net/ethernet/intel/i40evf/i40e_hmc.h
create mode 100644 drivers/net/ethernet/intel/i40evf/i40e_lan_hmc.h
create mode 100644 drivers/net/ethernet/intel/i40evf/i40e_osdep.h
create mode 100644 drivers/net/ethernet/intel/i40evf/i40e_prototype.h
create mode 100644 drivers/net/ethernet/intel/i40evf/i40e_register.h
create mode 100644 drivers/net/ethernet/intel/i40evf/i40e_status.h
create mode 100644 drivers/net/ethernet/intel/i40evf/i40e_txrx.c
create mode 100644 drivers/net/ethernet/intel/i40evf/i40e_txrx.h
create mode 100644 drivers/net/ethernet/intel/i40evf/i40e_type.h
create mode 100644 drivers/net/ethernet/intel/i40evf/i40e_virtchnl.h
create mode 100644 drivers/net/ethernet/intel/i40evf/i40evf.h
create mode 100644 drivers/net/ethernet/intel/i40evf/i40evf_ethtool.c
create mode 100644 drivers/net/ethernet/intel/i40evf/i40evf_main.c
create mode 100644 drivers/net/ethernet/intel/i40evf/i40evf_virtchnl.c
--
1.8.3.1
^ permalink raw reply [flat|nested] 31+ messages in thread
* Re: [net-next 0/8][pull request] Intel Wired LAN Driver Updates
2014-01-01 0:53 Jeff Kirsher
@ 2014-01-02 4:01 ` David Miller
0 siblings, 0 replies; 31+ messages in thread
From: David Miller @ 2014-01-02 4:01 UTC (permalink / raw)
To: jeffrey.t.kirsher; +Cc: netdev, gospo, sassmann
From: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Date: Tue, 31 Dec 2013 16:53:05 -0800
> This series implements the Linux Virtual Function (VF) driver for
> the Intel Ethernet Controller XL710 family.
>
> The following are changes since commit 21eb218989523b7bee28900aaec9f9296b70fa27:
> net, sch: fix the typo in register_qdisc()
> and are available in the git repository at:
> git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net-next master
Pulled, thanks Jeff.
^ permalink raw reply [flat|nested] 31+ messages in thread
end of thread, other threads:[~2014-01-02 4:01 UTC | newest]
Thread overview: 31+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-04-26 4:57 [net-next 0/8][pull request] Intel Wired LAN Driver Updates Jeff Kirsher
2013-04-26 4:57 ` [net-next 1/8] e1000e: fix numeric overflow in phc settime method Jeff Kirsher
2013-04-26 4:57 ` [net-next 2/8] e1000e: panic caused by Rx traffic arriving while interface going down Jeff Kirsher
2013-04-26 4:57 ` [net-next 3/8] igb: limit udelay for phy changes to 10000us Jeff Kirsher
2013-04-26 4:57 ` [net-next 4/8] ixgbe: fix EICR write in ixgbe_msix_other Jeff Kirsher
2013-04-26 4:57 ` [net-next 5/8] ixgbe: fix register access during ethtool loopback test Jeff Kirsher
2013-04-26 4:57 ` [net-next 6/8] ixgbe: cache AUTOC reads Jeff Kirsher
2013-04-26 4:57 ` [net-next 7/8] ixgbe: add support for disabling link at boot time on 82599 Jeff Kirsher
2013-04-26 4:57 ` [net-next 8/8] ixgbe: add mac type to the version in ethtool_regs Jeff Kirsher
2013-04-27 3:34 ` [net-next 0/8][pull request] Intel Wired LAN Driver Updates David Miller
-- strict thread matches above, loose matches on Subject: below --
2014-01-01 0:53 Jeff Kirsher
2014-01-02 4:01 ` David Miller
2013-09-06 5:43 Jeff Kirsher
2013-09-06 5:58 ` Jeff Kirsher
2013-06-14 3:55 Jeff Kirsher
2012-10-23 10:24 Jeff Kirsher
2012-10-23 17:28 ` David Miller
2012-09-17 4:15 Jeff Kirsher
2012-09-17 4:56 ` David Miller
2012-09-17 8:15 ` Jeff Kirsher
2012-08-31 5:16 Jeff Kirsher
2012-08-31 20:03 ` David Miller
2012-07-17 10:09 Jeff Kirsher
2012-07-17 10:22 ` David Miller
2012-05-04 10:35 Jeff Kirsher
2012-05-04 15:49 ` David Miller
2012-05-01 8:51 Jeff Kirsher
2011-11-16 12:51 Jeff Kirsher
2011-11-16 23:12 ` David Miller
2011-11-16 23:21 ` Jeff Kirsher
2011-11-16 23:32 ` David Miller
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).