This series contains new features and implementation updates for the ice driver.
Anirudh reworks the current flex programming logic to add support for a second flex descriptor profile. Updated the transmit scheduler code to handle changes to the spec, specifically the firmware expects a 4KB buffer at all times so fix the default scheduler topology buffer size. Also the maximum children per node per layer is replaced by maximum sibling group size. Adds a check to ensure a reset is not in progress before exercising a control queue operation. Refactored the switch rule management functions and structures to simply the logic and to add a common function to search for a rule entry and add a new rule entry. Refactored the VSI allocation, deletion and rebuild flow so that on reset we can restore all the filters that were previously added. Did some spring cleaning of define names and macros. Dan updates the admin queue command for requesting resource ownership to the latest specification by adding new enum's and change the locks. Zhenning optimizes the driver by using the existing buffer in a structure directly versus a local array. Chinh implements handlers for ethtool for get and set link settings. Sudheer implements transmit hang/timeout detection and malicious driver detection in the driver. Md Fahad Iqbal implements the get and set bridge mode operations. Hieu adds the ability for firmware logging during initialization. Brett updates the driver to only enable VSI transmit and receive pruning when VLAN 0 is active, and when VLAN 0 is removed/not active, pruning is disabled. Akeem adds a flag to use for stopping the service task. The following are changes since commit 050cdc6c9501abcd64720b8cc3e7941efee9547d: Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net and are available in the git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/next-queue 100GbE Akeem G Abodunrin (1): ice: Introduce SERVICE_DIS flag and service routine functions Anirudh Venkataramanan (7): ice: Rework flex descriptor programming ice: Updates to Tx scheduler code ice: Prevent control queue operations during reset ice: Refactor switch rule management structures and functions ice: Refactor VSI allocation, deletion and rebuild flow ice: Clean up register file ice: Fix and update driver version string Brett Creeley (1): ice: Enable VSI Rx/Tx pruning only when VLAN 0 is active Chinh Cao (1): ice: Implement handlers for ethtool PHY/link operations Dan Nowlin (1): ice: Update request resource command to latest specification Hieu Tran (1): ice: Enable firmware logging during device initialization. Md Fahad Iqbal Polash (1): ice: Implement ice_bridge_getlink and ice_bridge_setlink Sudheer Mogilappagari (1): ice: Add support for Tx hang, Tx timeout and malicious driver detection Zhenning Xiao (1): ice: Code optimization for ice_fill_sw_rule() drivers/net/ethernet/intel/ice/ice.h | 7 + .../net/ethernet/intel/ice/ice_adminq_cmd.h | 99 +- drivers/net/ethernet/intel/ice/ice_common.c | 525 +++++- drivers/net/ethernet/intel/ice/ice_common.h | 17 +- drivers/net/ethernet/intel/ice/ice_controlq.c | 3 + drivers/net/ethernet/intel/ice/ice_ethtool.c | 801 ++++++++- .../net/ethernet/intel/ice/ice_hw_autogen.h | 456 +++--- .../net/ethernet/intel/ice/ice_lan_tx_rx.h | 24 +- drivers/net/ethernet/intel/ice/ice_main.c | 964 +++++++++-- drivers/net/ethernet/intel/ice/ice_nvm.c | 2 +- drivers/net/ethernet/intel/ice/ice_sched.c | 161 +- drivers/net/ethernet/intel/ice/ice_status.h | 1 + drivers/net/ethernet/intel/ice/ice_switch.c | 1459 ++++++++++------- drivers/net/ethernet/intel/ice/ice_switch.h | 50 +- drivers/net/ethernet/intel/ice/ice_txrx.c | 1 + drivers/net/ethernet/intel/ice/ice_txrx.h | 1 + drivers/net/ethernet/intel/ice/ice_type.h | 52 +- 17 files changed, 3375 insertions(+), 1248 deletions(-) -- 2.17.1