Trusty SRU: Update i40e to 3.15
Tim Gardner
tim.gardner at canonical.com
Mon Jun 9 19:55:39 UTC 2014
Contained within this pull request are all of the patches required to
bring the i40e and i40evf drivers up to v3.15. There are several
scaffolding patches that should be benign with respect to current
functionality. Please review carefully as they do touch core networking
and other driver code.
net: Add function to set the rxhash
net: Add utility functions to clear rxhash
net: Change skb_get_rxhash to skb_get_hash
PCI/MSI: Add pci_enable_msi_range() and pci_enable_msix_range()
net_tstamp: Add SIOCGHWTSTAMP ioctl to match SIOCSHWTSTAMP
net/compat: Merge multiple implementations of ifreq::ifr_data conversion
pci_regs.h: Add PCI bus link speed and width defines
There should be no possibility for regression within the i40e or i40evf
drivers as they were non-functional at the v3.13 revision level (and no
silicon had been released to market anyways).
rtg
--
Tim Gardner tim.gardner at canonical.com
-------------- next part --------------
The following changes since commit 02132db8e071b7c5d2cc591286c54834a05c44e8:
UBUNTU: SAUCE: i915_bdw: Add BDW specific power well calls (2014-06-09 07:34:40 -0600)
are available in the git repository at:
git://kernel.ubuntu.com/rtg/ubuntu-trusty.git i40e
for you to fetch changes up to 7e314926390c6bf4e236a5ef3fed2e7241bcb51e:
i40e: fix Timesync Tx interrupt handler code (2014-06-09 12:48:45 -0600)
----------------------------------------------------------------
Akeem G Abodunrin (3):
i40e: Setting i40e_down bit for tx_timeout
i40e: Prevent overflow due to kzalloc
i40e: Fix function comments
Alan Cox (1):
i40e: Fix off by one in i40e_dbg_command_write
Alexander Gordeev (2):
PCI/MSI: Add pci_enable_msi_range() and pci_enable_msix_range()
i40e: Use pci_enable_msix_range() instead of pci_enable_msix()
Anjali Singhai Jain (43):
i40e: sync header files with hardware
i40e: refactor reset code
i40e: Enable all PCTYPEs except FCOE for RSS.
i40e: add num_VFs message
i40e: Add a new variable to track number of pf instances
i40e: Tell the stack about our actual number of queues
i40e: reinit flow for the main VSI
i40e: function to reconfigure RSS queues and rebuild
i40e: Add basic support for get/set channels for RSS
i40e: rtnl_lock in reset path fixes
i40e: Fix wrong mask bits being used in misc interrupt
i40e: Suppress HMC error to Interrupt message level
i40e: Dump the whole NVM, not half
i40e: Change the ethtool NVM read method to use AQ
i40e: Remove unnecessary prototypes
i40e: remove un-necessary io-write
i40e: Record dma buffer info for dummy packets
i40e: Admin queue shutdown fixes
i40e: check asq alive before notify
i40e: Do not allow AQ calls from ndo-ops
i40e: Expose AQ debugfs hooks
i40e: Re-enable interrupt on ICR0
i40e: Cleanup reconfig rss path
i40e: Update the Current NVM version Low value
i40e: Setting queue count to 1 using ethtool is valid
i40e: do not bail when disabling if Tx queue disable fails
i40e: refactor flow director
i40e: Remove a FW workaround for Number of MSIX vectors
i40e: Remove a redundant filter addition
i40e: Fix a bug in the update logic for FDIR SB filter.
i40e/i40evf: Some flow director HW definition fixes
i40e: Define a new state variable to keep track of feature auto disable
i40e: Add code to handle FD table full condition
i40e: Bug fix for FDIR replay logic
i40e: Let MDD events be handled by MDD handler
i40e: Patch to enable Ethtool/netdev feature flag for NTUPLE control
i40e/i40evf: Add EEE LPI stats
i40e: Fix a message string
i40e: Delete ATR filter on RST
i40e: Cleanup in FDIR SB ethtool code
i40e: Add functionality for FD SB to drop packets
i40e/i40evf: Add an FD message level
i40e: Use DEBUG_FD message level for an FD message
Anjali Singhai jain (2):
i40e: register file updates
i40e: firmware version fields offsets update
Ben Hutchings (2):
net/compat: Merge multiple implementations of ifreq::ifr_data conversion
net_tstamp: Add SIOCGHWTSTAMP ioctl to match SIOCSHWTSTAMP
Catherine Sullivan (13):
i40e: Bump version
i40e: Bump version number
i40e: Bump version number
i40e: Populate and check pci bus speed and width
i40e: Bump version
i40e: Turn flow director off in MFP mode
i40e: Bump version
i40e: Bump version
i40e: Bump version number
i40e: Change MSIX to MSI-X
i40e and i40evf: Bump driver versions
i40e/i40evf: Bump pf&vf build versions
i40e/i40evf: Bump build versions
Christopher Pau (1):
i40e: set pf_id based on device and function numbers
Dan Carpenter (1):
i40e: potential array underflow in i40e_vc_process_vf_msg()
Dave Jones (1):
i40e: Add missing braces to i40e_dcb_need_reconfig()
David Cassard (1):
i40e: keep allocated memory in structs
David S. Miller (1):
i40e: Remove autogenerated Module.symvers file.
Elizabeth Kappler (1):
i40e: Refactor and cleanup i40e_open(), adding i40e_vsi_open()
Eric W Biederman (1):
i40evf: Rename i40e_ptype_lookup i40evf_ptype_lookup
Eric W. Biederman (2):
net: Replace u64_stats_fetch_begin_bh to u64_stats_fetch_begin_irq
i40e: Don't receive packets when the napi budget == 0
Francois Romieu (2):
i40evf: remove open-coded skb_cow_head
i40e: remove open-coded skb_cow_head
Greg Rose (22):
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
i40e: Fix SR-IOV VF port VLAN
i40e: Do not enable default port on the VEB
i40e: Fix VF driver MAC address configuration
i40e: Hide the Port VLAN VLAN ID
i40e: Do not enable broadcast promiscuous by default
i40e: Stop accepting any VLAN tag on VLAN 0 filter set
i40e: Allow VF to set already assigned MAC address
i40e: Enable/Disable PF switch LB on SR-IOV configure changes
i40e: Fix GPL header
i40e: add a comment on barrier and fix panic on reset
i40e: Warn admin to reload VF driver on port VLAN configuration
i40e: Retain MAC filters on port VLAN deletion
i40evf: Enable the ndo_set_features netdev op
i40e: Make the alloc and free queue vector calls orthogonal
Jacob Keller (3):
i40e: separate TSYNVALID and TSYNINDX fields in Rx descriptor
i40e: enable PTP
i40e: fix Timesync Tx interrupt handler code
Jakub Kicinski (1):
e1000e/igb/ixgbe/i40e: fix message terminations
Jean Sacren (2):
i40e: fix function kernel doc description
i40e/i40evf: fix error checking path
Jeff Kirsher (4):
pci_regs.h: Add PCI bus link speed and width defines
i40e: whitespace
i40e: Implementation of VXLAN ndo's
i40e: Cleanup Doxygen warnings
Jesse Brandeburg (37):
i40e: check multi-bit state correctly
i40e: get media type during link info
i40e: enable early hardware support
i40e: remove and fix confusing define name
i40e: fix up some of the ethtool connection reporting
i40e: init flow control settings to disabled
i40e: trivial fixes
i40e: use same number of queues as CPUs
i40e: update led set args
i40e: fix mac address checking
i40e: fix constant cast issues
i40e: fix whitespace
i40e: use kernel specific defines
i40e: disable packet split
i40e: fix spelling errors
i40e: Add a dummy packet template
i40e: drop unused macros
i40e: whitespace fixes
i40e: trivial cleanup
i40e: fix compile warning on checksum_local
i40e: Change firmware workaround
i40e: whitespace fixes
i40e: rename defines
i40e: spelling error
i40e: bump driver version
i40evf: trivial fixes
i40e/i40evf: i40e implementation for skb_set_hash
i40e: count timeout events
i40e: fix nvm version and remove firmware report
i40e/i40evf: carefully fill tx ring
i40e: make string references to q be queue
i40e: cleanup strings
i40e: simplified init string
i40e/i40evf: enable hardware feature head write back
i40e/i40evf: reduce context descriptors
i40evf: remove double space after return
i40e: fix TCP flag replication for hardware offload
Joe Perches (2):
i40e/i40evf: Remove addressof casts to same type
i40e: Remove casts of pointer to same type
Joseph Gasparakis (2):
i40e: Rx checksum offload for VXLAN
i40e: Flow Director sideband accounting
Kamil Krawczyk (4):
i40e: restrict diag test length
i40e: loopback info and set loopback fix
i40e: remove redundant AQ enable
i40e: Fix MAC format in Write MAC address AQ cmd
Kevin Scott (1):
i40e: Add flag for L2 VEB filtering
Mitch A Williams (2):
i40evf: remove errant space
i40evf: program RSS LUT correctly
Mitch Williams (57):
i40e: allow one more vector for VFs
i40e: properly add VF MAC addresses
i40e: fix debugging messages
i40e: move i40e_reset_vf
i40e: refactor VF reset flow
i40e: remove redundant code
i40e: remove chatty log messages
i40e: fix error return
i40e: be more informative
i40e: make a define from a large constant
i40e: report VF MAC addresses correctly
i40e: guard against vf message races
i40e: use functions to enable and disable icr 0
i40e: reinit buffer size each time
i40e: avoid unnecessary register read
i40e: use struct assign instead of memcpy
i40e: don't allocate zero size
i40e: acknowledge VFLR when disabling SR-IOV
i40e: support VFs on PFs other than 0
i40e: correctly setup ARQ descriptors
i40e: shorten wordy fields
i40e: trivial: formatting and checkpatch fixes
i40e: use assignment instead of memcpy
i40e: fix long lines
i40e: allow VF to remove any MAC filter
i40e: remove extra register write
i40e: make message meaningful
i40evf: clean up memsets
i40e: remove dead code
i40e: set VF state to active when reset is complete
i40e: reset VFs after PF reset
i40e: enable extant VFs
i40e: don't handle VF reset on unload
i40evf: clean up adapter struct
i40evf: fix bogus comment
i40evf: don't store unnecessary array of strings
i40evf: change type of flags variable
i40evf: refactor reset handling
i40evf: request reset on tx hang
i40evf: remove VLAN filters on close
i40evf: fix multiple crashes on remove
i40evf: get rid of pci_using_dac
i40evf: fix up strings in init task
i40evf: remove bogus comment
i40evf: don't guess device name
i40evf: store ring size in ring structs
i40evf: update version and copyright date
i40e: remove unnecessary delay
i40e: tighten up ring enable/disable flow
i40e/i40evf: Use correct number of VF vectors
i40e/i40evf: Use dma_set_mask_and_coherent
i40e: support VF link state ndo
i40evf: correctly program RSS HLUT table
i40evf: use min_t
i40evf: don't shut down admin queue on error
i40evf: clean up init error messages
i40evf: fix oops in watchdog handler
Neerav Parikh (8):
i40e: Remove FCoE in i40e_virtchnl_pf.c code
i40e: Fix dump output from debugfs calls
i40e: Fix ring allocation
i40e: I40E_FLAG_MQ_ENABLED is not used
i40e: implement DCB support infastructure
i40e: add DCB and DCBNL support
i40e: add DCB option to Kconfig
i40e: Fix static checker warning
Or Gerlitz (1):
net/i40e: Avoid double setting of NETIF_F_SG for the HW encapsulation feature mask
Paul Gortmaker (1):
i40evf: fix s390 build failure due to implicit prefetch.h
Sachin Kamat (1):
net: i40evf: Remove duplicate include
Shannon Nelson (46):
i40e: clear AQ head and tail registers
i40e: simplify aq head-tail-len setups
i40e: select reset counters correctly
i40e: retry call on timeout
i40e: default debug mask setting
i40e: add interrupt test
i40e: add support for triggering EMPR
i40e: only set up the rings to be used
i40e: clear test state bit after all ethtool tests
i40e: refactor ethtool tests
i40e: restrict diag test messages
i40e: complain about out-of-range descriptor request
i40e: fix pf reset after offline test
i40e: support for suspend and resume
i40e: prevent null pointer exception in dump descriptor
i40e: simplify error messages for dump descriptor
i40e: fix up scanf decoders
i40e: more print_hex_dump use
i40e: add wake-on-lan support
i40e: fix curly brace use and return type
i40e: fix error handling when alloc of vsi array fails
i40e: catch unset q_vector
i40e: use correct struct for get and update vsi params
i40e: Add code to wait for FW to complete in reset path
i40e: update firmware api to 1.1
i40e: Reduce range of interrupt reg in reg test
i40e: move PF ID init from PF reset to SC init
i40e: check MAC type before any REG access
i40e: rework shadow ram read functions
i40e: whitespace paren and comment tweaks
i40e: release NVM resource reservation on startup
i40e: remove interrupt on AQ error
i40e: accept pf to pf adminq messages
i40e: check for possible incorrect ipv6 checksum
i40e: adjust ITR max and min values
i40e: clear qtx_head before enabling Tx queue
i40e: call clear_pxe after adminq is initialized
i40e: fix log message wording
i40e: associate VMDq queue with VM type
i40e: check desc pointer before printing
i40e: updates to AdminQ interface
i40e: Fix device ID define names to align to standard
i40e: clean up comment style
i40e: delete netdev after deleting napi and vectors
i40e: eeprom integrity check on load and empr
i40e: check for netdev before debugfs use
Stephen Hemminger (1):
i40e: make functions static and remove dead code
Tim Gardner (1):
UBUNTU: [Config] CONFIG_I40EVF=m, CONFIG_I40E_DCB=y, CONFIG_I40E_VXLAN=y
Tom Herbert (3):
net: Change skb_get_rxhash to skb_get_hash
net: Add utility functions to clear rxhash
net: Add function to set the rxhash
Vasu Dev (1):
i40e: add header file flag _I40E_TXRX_H_
Wei Yongjun (1):
i40e: using for_each_set_bit to simplify the code
Documentation/networking/i40evf.txt | 47 +
Documentation/networking/timestamping.txt | 9 +-
MAINTAINERS | 4 +-
block/blk-cgroup.h | 8 +-
debian.master/config/config.common.ubuntu | 3 +
drivers/net/dummy.c | 4 +-
drivers/net/ethernet/broadcom/b44.c | 8 +-
drivers/net/ethernet/emulex/benet/be_ethtool.c | 12 +-
drivers/net/ethernet/emulex/benet/be_main.c | 16 +-
drivers/net/ethernet/intel/Kconfig | 41 +
drivers/net/ethernet/intel/Makefile | 1 +
drivers/net/ethernet/intel/i40e/Makefile | 10 +-
drivers/net/ethernet/intel/i40e/i40e.h | 166 +-
drivers/net/ethernet/intel/i40e/i40e_adminq.c | 242 +-
drivers/net/ethernet/intel/i40e/i40e_adminq.h | 21 +-
drivers/net/ethernet/intel/i40e/i40e_adminq_cmd.h | 136 +-
drivers/net/ethernet/intel/i40e/i40e_alloc.h | 7 +-
drivers/net/ethernet/intel/i40e/i40e_common.c | 1036 ++++-
drivers/net/ethernet/intel/i40e/i40e_dcb.c | 472 ++
drivers/net/ethernet/intel/i40e/i40e_dcb.h | 107 +
drivers/net/ethernet/intel/i40e/i40e_dcb_nl.c | 316 ++
drivers/net/ethernet/intel/i40e/i40e_debugfs.c | 479 +-
drivers/net/ethernet/intel/i40e/i40e_diag.c | 23 +-
drivers/net/ethernet/intel/i40e/i40e_diag.h | 15 +-
drivers/net/ethernet/intel/i40e/i40e_ethtool.c | 834 ++--
drivers/net/ethernet/intel/i40e/i40e_hmc.c | 17 +-
drivers/net/ethernet/intel/i40e/i40e_hmc.h | 10 +-
drivers/net/ethernet/intel/i40e/i40e_lan_hmc.c | 10 +-
drivers/net/ethernet/intel/i40e/i40e_lan_hmc.h | 11 +-
drivers/net/ethernet/intel/i40e/i40e_main.c | 2293 +++++++---
drivers/net/ethernet/intel/i40e/i40e_nvm.c | 188 +-
drivers/net/ethernet/intel/i40e/i40e_osdep.h | 7 +-
drivers/net/ethernet/intel/i40e/i40e_prototype.h | 60 +-
drivers/net/ethernet/intel/i40e/i40e_ptp.c | 662 +++
drivers/net/ethernet/intel/i40e/i40e_register.h | 170 +-
drivers/net/ethernet/intel/i40e/i40e_status.h | 7 +-
drivers/net/ethernet/intel/i40e/i40e_txrx.c | 641 ++-
drivers/net/ethernet/intel/i40e/i40e_txrx.h | 64 +-
drivers/net/ethernet/intel/i40e/i40e_type.h | 164 +-
drivers/net/ethernet/intel/i40e/i40e_virtchnl.h | 11 +-
drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c | 997 ++---
drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.h | 16 +-
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 | 619 +++
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 | 91 +
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 | 1633 +++++++
drivers/net/ethernet/intel/i40evf/i40e_txrx.h | 296 ++
drivers/net/ethernet/intel/i40evf/i40e_type.h | 1160 +++++
drivers/net/ethernet/intel/i40evf/i40e_virtchnl.h | 364 ++
drivers/net/ethernet/intel/i40evf/i40evf.h | 293 ++
drivers/net/ethernet/intel/i40evf/i40evf_ethtool.c | 393 ++
drivers/net/ethernet/intel/i40evf/i40evf_main.c | 2456 ++++++++++
.../net/ethernet/intel/i40evf/i40evf_virtchnl.c | 789 ++++
drivers/net/ethernet/intel/igb/e1000_i210.c | 2 +-
drivers/net/ethernet/intel/igb/e1000_mac.c | 13 +-
drivers/net/ethernet/intel/igb/igb_ethtool.c | 12 +-
drivers/net/ethernet/intel/igb/igb_main.c | 8 +-
drivers/net/ethernet/intel/igb/igb_ptp.c | 4 +-
drivers/net/ethernet/intel/ixgbe/ixgbe_common.c | 2 +-
drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.c | 8 +-
drivers/net/ethernet/intel/ixgbe/ixgbe_main.c | 8 +-
drivers/net/ethernet/intel/ixgbe/ixgbe_phy.c | 6 +-
drivers/net/ethernet/intel/ixgbe/ixgbe_ptp.c | 4 +-
drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c | 8 +-
drivers/net/ethernet/marvell/mvneta.c | 4 +-
drivers/net/ethernet/marvell/sky2.c | 8 +-
drivers/net/ethernet/neterion/vxge/vxge-main.c | 8 +-
drivers/net/ethernet/nvidia/forcedeth.c | 8 +-
drivers/net/ethernet/realtek/8139too.c | 8 +-
drivers/net/ethernet/realtek/r8169.c | 8 +-
drivers/net/ethernet/tile/tilepro.c | 4 +-
drivers/net/ethernet/via/via-rhine.c | 8 +-
drivers/net/ifb.c | 8 +-
drivers/net/loopback.c | 4 +-
drivers/net/macvlan.c | 4 +-
drivers/net/macvtap.c | 2 +-
drivers/net/nlmon.c | 4 +-
drivers/net/team/team.c | 4 +-
drivers/net/team/team_mode_loadbalance.c | 4 +-
drivers/net/tun.c | 4 +-
drivers/net/veth.c | 4 +-
drivers/net/virtio_net.c | 8 +-
drivers/net/vxlan.c | 2 +-
drivers/net/xen-netfront.c | 4 +-
drivers/pci/msi.c | 74 +
include/linux/pci.h | 14 +
include/linux/skbuff.h | 58 +-
include/linux/u64_stats_sync.h | 16 +-
include/net/dst.h | 5 +-
include/uapi/linux/net_tstamp.h | 14 +-
include/uapi/linux/pci_regs.h | 5 +
include/uapi/linux/sockios.h | 3 +-
net/8021q/vlan_dev.c | 4 +-
net/bridge/br_device.c | 4 +-
net/core/dev.c | 4 +-
net/core/dev_ioctl.c | 2 +
net/core/flow_dissector.c | 6 +-
net/ipv4/af_inet.c | 4 +-
net/ipv4/ip_fragment.c | 2 +-
net/ipv4/ip_tunnel.c | 4 +-
net/ipv4/ip_tunnel_core.c | 6 +-
net/ipv6/ip6_tunnel.c | 4 +-
net/netfilter/ipvs/ip_vs_ctl.c | 4 +-
net/openvswitch/actions.c | 10 +-
net/openvswitch/datapath.c | 4 +-
net/openvswitch/vport.c | 4 +-
net/packet/af_packet.c | 4 +-
net/sched/cls_flow.c | 2 +-
net/sched/em_meta.c | 2 +-
net/sched/sch_fq.c | 2 +-
net/socket.c | 50 +-
120 files changed, 23785 insertions(+), 2661 deletions(-)
create mode 100644 Documentation/networking/i40evf.txt
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_dcb.c
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_dcb.h
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_dcb_nl.c
create mode 100644 drivers/net/ethernet/intel/i40e/i40e_ptp.c
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
More information about the kernel-team
mailing list