[dpdk-dev] [PATCH v2 2/2] i40e: fix missing break in switch

2016-06-26 Thread Helin Zhang
It fixes the issue reported by Coverity of 'Missing break in switch', by deleting 'case I40E_VIRTCHNL_OP_FCOE', as it is not necessary at all. Coverity ID 13265: Missing break in switch. Fixes: 4861cde46116 ("i40e: new poll mode driver") Signed-off-by: Heli

[dpdk-dev] [PATCH v2 1/2] i40e: fix problematic dereference

2016-06-26 Thread Helin Zhang
778a1fa2e4e ("i40e: set up and initialize flow director") Fixes: 4861cde46116 ("i40e: new poll mode driver") Signed-off-by: Helin Zhang --- drivers/net/i40e/i40e_pf.c | 5 +++-- drivers/net/i40e/i40e_rxtx.c | 12 2 files changed, 11 insertions(+), 6 deletions(-) dif

[dpdk-dev] [PATCH v2 0/2] fix coverity issues

2016-06-26 Thread Helin Zhang
It fixes several problematic dereference issues and missing break issue reported by Coverity. Helin Zhang (2): i40e: fix problematic dereference i40e: fix missing break in switch drivers/net/i40e/i40e_pf.c | 11 +-- drivers/net/i40e/i40e_rxtx.c | 12 2 files changed

[dpdk-dev] [PATCH v2 15/15] i40e/base: add capability of disabling all link

2016-05-24 Thread Helin Zhang
It adds a flag, which can be used to tell the firmware to disable the link on all ports. Signed-off-by: Helin Zhang --- doc/guides/rel_notes/release_16_07.rst | 4 drivers/net/i40e/Makefile | 2 +- drivers/net/i40e/base/i40e_adminq_cmd.h | 3 +++ 3 files changed, 8

[dpdk-dev] [PATCH v2 14/15] i40e/base: add RSS config to virtual channel

2016-05-24 Thread Helin Zhang
It add opcodes and structures to support RSS configuration by PF driver on behalf of the VF drivers. Signed-off-by: Helin Zhang --- drivers/net/i40e/base/i40e_virtchnl.h | 45 --- 1 file changed, 42 insertions(+), 3 deletions(-) diff --git a/drivers/net/i40e

[dpdk-dev] [PATCH v2 13/15] i40e/base: add input set mask definitions

2016-05-24 Thread Helin Zhang
It adds input set mask definitions for RSS, flow director and flex bytes. Signed-off-by: Helin Zhang --- drivers/net/i40e/base/i40e_type.h | 33 + 1 file changed, 33 insertions(+) diff --git a/drivers/net/i40e/base/i40e_type.h b/drivers/net/i40e/base

[dpdk-dev] [PATCH v2 12/15] i40e/base: increase supported AQ API version

2016-05-24 Thread Helin Zhang
It increases the supported AQ API version to 1.5 for X722. Signed-off-by: Helin Zhang --- drivers/net/i40e/base/i40e_type.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/i40e/base/i40e_type.h b/drivers/net/i40e/base/i40e_type.h index 7ed3048..bc68b47 100644

[dpdk-dev] [PATCH v2 11/15] i40e/base: add more device capabilities

2016-05-24 Thread Helin Zhang
It adds more device capabilities for NVM management. - if update is available - if security check is needed Signed-off-by: Helin Zhang --- drivers/net/i40e/base/i40e_adminq_cmd.h | 1 + drivers/net/i40e/base/i40e_common.c | 6 ++ drivers/net/i40e/base/i40e_type.h | 5 + 3

[dpdk-dev] [PATCH v2 10/15] i40e/base: fix debug output

2016-05-24 Thread Helin Zhang
It fixes the debug output messages. Fixes: f388b435bc33 ("i40e/base: clean adminq debug") Signed-off-by: Helin Zhang --- drivers/net/i40e/base/i40e_common.c | 6 -- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/drivers/net/i40e/base/i40e_common.c b/drivers/net

[dpdk-dev] [PATCH v2 09/15] i40e/base: fix the number of MSIX vector

2016-05-24 Thread Helin Zhang
It corrects the number of MSIX vector in a debug info. Fixes: 889bc9f0cd3a ("i40e/base: unify the capability function") Signed-off-by: Helin Zhang --- drivers/net/i40e/base/i40e_common.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/i40e/base/i40e_c

[dpdk-dev] [PATCH v2 08/15] i40e/base: add new devices

2016-05-24 Thread Helin Zhang
It adds new device IDs and PHY types. Signed-off-by: Helin Zhang --- drivers/net/i40e/base/i40e_adminq_cmd.h | 4 drivers/net/i40e/base/i40e_common.c | 4 drivers/net/i40e/base/i40e_devids.h | 4 lib/librte_eal/common/include/rte_pci_dev_ids.h | 8

[dpdk-dev] [PATCH v2 07/15] i40e/base: fix problematic mirror rule ID check

2016-05-24 Thread Helin Zhang
It removes the problematic mirror rule ID check. It returns an error if the mirror rule ID is 0, which is a valid value. Fixes: 0bf2dbbe077c ("i40e/base: support mirroring rules") Signed-off-by: Helin Zhang --- drivers/net/i40e/base/i40e_common.c | 5 + 1 file changed, 1 inser

[dpdk-dev] [PATCH v2 06/15] i40e/base: expose mirroring config

2016-05-24 Thread Helin Zhang
It exposes the configuration of mirroring or not egress traffic to VSIs in promiscuous mode, as latest firmware supports that from API version 1.5. Signed-off-by: Helin Zhang --- drivers/net/i40e/base/i40e_common.c| 9 ++--- drivers/net/i40e/base/i40e_prototype.h | 4 ++-- drivers/net

[dpdk-dev] [PATCH v2 05/15] i40e/base: fixup Geneve VNI for HW use

2016-05-24 Thread Helin Zhang
The hardware doesn't layout the Geneve VNI (Virtual Network Identifier) quite the same as the VxLAN VNI, so it needs to adjust it before sending through the AQ commands as the workaround. Signed-off-by: Helin Zhang --- drivers/net/i40e/base/i40e_common.c

[dpdk-dev] [PATCH v2 04/15] i40e/base: trim the code

2016-05-24 Thread Helin Zhang
It trim the source code, with limiting pieces of code for PF or VF driver only, code style fixes, and annotation rewording. Signed-off-by: Helin Zhang --- drivers/net/i40e/base/i40e_adminq.c | 52 +++-- drivers/net/i40e/base/i40e_adminq.h | 4 +-- drivers

[dpdk-dev] [PATCH v2 03/15] i40e/base: refactor NVM update command processing

2016-05-24 Thread Helin Zhang
It refactors the NVM update command processing, with adding a new element of nvm_wait_opcode in struct i40e_hw to indicate the opcode it waits on, and putting the wait event check into a function. In addition, that element needs to be initialized or updated properly. Signed-off-by: Helin Zhang

[dpdk-dev] [PATCH v2 02/15] i40e/base: move field of NVM update status info

2016-05-24 Thread Helin Zhang
It centralizes all NVM update status info into a single structure, by moving nvm_release_on_done from struct i40e_adminq_info to struct i40e_hw, for better management. Signed-off-by: Helin Zhang --- drivers/net/i40e/base/i40e_adminq.c | 6 +++--- drivers/net/i40e/base/i40e_adminq.h | 1

[dpdk-dev] [PATCH v2 01/15] i40e/base: remove HMC AQ APIs

2016-05-24 Thread Helin Zhang
HMC AQ APIs were removed from the latest datasheet, and hence remove its implementations and relevant. Signed-off-by: Helin Zhang --- drivers/net/i40e/base/i40e_adminq.c | 4 --- drivers/net/i40e/base/i40e_adminq_cmd.h | 25 -- drivers/net/i40e/base/i40e_common.c | 61

[dpdk-dev] [PATCH v2 00/15] i40e base driver update

2016-05-24 Thread Helin Zhang
This is the i40e base driver update, which includes bug fixes, enhancements, refactoring, and new device enabling. Below are the details. v2: - reworded commit titles and logs. Helin Zhang (15): i40e/base: remove HMC AQ APIs i40e/base: move field of NVM update status info i40e/base

[dpdk-dev] [PATCH 15/15] i40e/base: add capability of disabling all link

2016-05-05 Thread Helin Zhang
It adds a flag, which can be used to tell the firmware to disable the link on all ports. Signed-off-by: Helin Zhang --- doc/guides/rel_notes/release_16_07.rst | 7 +++ drivers/net/i40e/Makefile | 2 +- drivers/net/i40e/base/i40e_adminq_cmd.h | 3 +++ 3 files changed, 11

[dpdk-dev] [PATCH 14/15] i40e/base: add RSS config to virtual channel

2016-05-05 Thread Helin Zhang
It add opcodes and structures to support RSS configuration by PF driver on behalf of the VF drivers. Signed-off-by: Helin Zhang --- drivers/net/i40e/base/i40e_virtchnl.h | 45 --- 1 file changed, 42 insertions(+), 3 deletions(-) diff --git a/drivers/net/i40e

[dpdk-dev] [PATCH 13/15] i40e/base: add input set mask definitions

2016-05-05 Thread Helin Zhang
It adds input set mask definitions for RSS, flow director and flex bytes. Signed-off-by: Helin Zhang --- drivers/net/i40e/base/i40e_type.h | 33 + 1 file changed, 33 insertions(+) diff --git a/drivers/net/i40e/base/i40e_type.h b/drivers/net/i40e/base

[dpdk-dev] [PATCH 12/15] i40e/base: increase supported AQ API version

2016-05-05 Thread Helin Zhang
It increases the supported AQ API version to 1.5 for X722. Signed-off-by: Helin Zhang --- drivers/net/i40e/base/i40e_type.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/i40e/base/i40e_type.h b/drivers/net/i40e/base/i40e_type.h index 7ed3048..bc68b47 100644

[dpdk-dev] [PATCH 11/15] i40e/base: add more device capabilities

2016-05-05 Thread Helin Zhang
It adds more device capabilities for NVM management. - if update is available - if security check is needed Signed-off-by: Helin Zhang --- drivers/net/i40e/base/i40e_adminq_cmd.h | 1 + drivers/net/i40e/base/i40e_common.c | 6 ++ drivers/net/i40e/base/i40e_type.h | 5 + 3

[dpdk-dev] [PATCH 10/15] i40e/base: fix debug output

2016-05-05 Thread Helin Zhang
It fixes the debug output messages. Fixes: f388b435bc33 ("i40e/base: clean adminq debug") Signed-off-by: Helin Zhang --- drivers/net/i40e/base/i40e_common.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/net/i40e/base/i40e_common.c b/drivers/net

[dpdk-dev] [PATCH 09/15] i40e/base: fix the number of MSIX vector

2016-05-05 Thread Helin Zhang
It corrects the number of MSIX vector in a debug info. Fixes: 889bc9f0cd3a ("i40e/base: unify the capability function") Signed-off-by: Helin Zhang --- drivers/net/i40e/base/i40e_common.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/i40e/base/i40e_c

[dpdk-dev] [PATCH 08/15] i40e/base: add new devices

2016-05-05 Thread Helin Zhang
It adds new device IDs of both X722 and XXV710, and new PHY types. Signed-off-by: Helin Zhang --- drivers/net/i40e/base/i40e_adminq_cmd.h | 4 drivers/net/i40e/base/i40e_common.c | 4 drivers/net/i40e/base/i40e_devids.h | 4 lib/librte_eal/common

[dpdk-dev] [PATCH 07/15] i40e/base: fix problematic mirror rule ID check

2016-05-05 Thread Helin Zhang
It removes the problematic mirror rule ID check. It returns an error if the mirror rule ID is 0, which is a valid value. Fixes: 0bf2dbbe077c ("i40e/base: support mirroring rules") Signed-off-by: Helin Zhang --- drivers/net/i40e/base/i40e_common.c | 5 + 1 file changed, 1 inser

[dpdk-dev] [PATCH 06/15] i40e/base: expose mirroring config

2016-05-05 Thread Helin Zhang
It exposes the configuration of mirroring or not egress traffic to VSIs in promiscuous mode, as latest firmware supports that from API version 1.5. Signed-off-by: Helin Zhang --- drivers/net/i40e/base/i40e_common.c| 9 ++--- drivers/net/i40e/base/i40e_prototype.h | 4 ++-- drivers/net

[dpdk-dev] [PATCH 05/15] i40e/base: fixup Geneve VNI for HW use

2016-05-05 Thread Helin Zhang
The hardware doesn't layout the Geneve VNI quite the same as the VxLAN VNI, so it needs to adjust it before sending through the AQ commands as the workaround. Signed-off-by: Helin Zhang --- drivers/net/i40e/base/i40e_common.c | 35 ++- drivers/net/i40e

[dpdk-dev] [PATCH 04/15] i40e/base: code style fixes

2016-05-05 Thread Helin Zhang
It adds code style fixes. Signed-off-by: Helin Zhang --- drivers/net/i40e/base/i40e_adminq.c | 52 +++-- drivers/net/i40e/base/i40e_adminq.h | 4 +-- drivers/net/i40e/base/i40e_adminq_cmd.h | 21 +++-- drivers/net/i40e/base/i40e_common.c | 5

[dpdk-dev] [PATCH 03/15] i40e/base: refactor NVM update event handling

2016-05-05 Thread Helin Zhang
It refactors the NVM update event handling, with specifying the AQ event opcode to wait on. Signed-off-by: Helin Zhang --- drivers/net/i40e/base/i40e_adminq.c| 33 +-- drivers/net/i40e/base/i40e_nvm.c | 77 +++--- drivers/net/i40e/base

[dpdk-dev] [PATCH 02/15] i40e/base: refactor NVM update status info

2016-05-05 Thread Helin Zhang
It centralizes all NVM update status info in the same structure, for better management. Signed-off-by: Helin Zhang --- drivers/net/i40e/base/i40e_adminq.c | 6 +++--- drivers/net/i40e/base/i40e_adminq.h | 1 - drivers/net/i40e/base/i40e_nvm.c| 12 ++-- drivers/net/i40e/base

[dpdk-dev] [PATCH 01/15] i40e/base: remove HMC AQ APIs

2016-05-05 Thread Helin Zhang
HMC AQ APIs were removed from the latest datasheet, and hence remove its implementations and relevant. Signed-off-by: Helin Zhang --- drivers/net/i40e/base/i40e_adminq.c | 4 --- drivers/net/i40e/base/i40e_adminq_cmd.h | 25 -- drivers/net/i40e/base/i40e_common.c | 61

[dpdk-dev] [PATCH 00/15] i40e base driver update

2016-05-05 Thread Helin Zhang
This is the i40e base driver update, which includes bug fixes, enhancements, refactoring, and new device enabling. Below are the details. Helin Zhang (15): i40e/base: remove HMC AQ APIs i40e/base: refactor NVM update status info i40e/base: refactor NVM update event handling i40e/base

[dpdk-dev] [PATCH v3 2/2] i40e: fix missing break in switch

2016-04-28 Thread Helin Zhang
It fixes the issue reported by Coverity of 'Missing break in switch', by deleting 'case I40E_VIRTCHNL_OP_FCOE', as it is not necessary at all. Coverity ID 13265: Missing break in switch. Fixes: 4861cde46116 ("i40e: new poll mode driver") Signed-off-by: Heli

[dpdk-dev] [PATCH v3 1/2] i40e: fix problematic dereference

2016-04-28 Thread Helin Zhang
778a1fa2e4e ("i40e: set up and initialize flow director") Fixes: 4861cde46116 ("i40e: new poll mode driver") Signed-off-by: Helin Zhang --- drivers/net/i40e/i40e_pf.c | 5 +++-- drivers/net/i40e/i40e_rxtx.c | 10 +++--- 2 files changed, 10 insertions(+), 5 deletions(-) v3

[dpdk-dev] [PATCH v3 0/2] fix Coverity reported issues

2016-04-28 Thread Helin Zhang
necessary at all, or move null checks before where uses it. v3: - Split the code changes into different patches, according to the issue type. - Reworded the commit logs. v2: - Combined all the patches into a single one, as suggested. - Remove checking rxq, as it shouldn't be NULL at any

[dpdk-dev] [PATCH v2] i40e: fix problematic dereference

2016-04-25 Thread Helin Zhang
13265: Missing break in switch. Fixes: 8e109464c022 ("i40e: allow vector Rx and Tx usage") Fixes: a778a1fa2e4e ("i40e: set up and initialize flow director") Fixes: a778a1fa2e4e ("i40e: set up and initialize flow director") Fixes: 4861cde46116 ("i40e: new poll mode d

[dpdk-dev] [PATCH 6/6] i40e: fix problematic dereference

2016-04-21 Thread Helin Zhang
Fix issue reported by Coverity. Coverity ID 13265: Missing break in switch. Fixes: 4861cde46116 ("i40e: new poll mode driver") Signed-off-by: Helin Zhang --- drivers/net/i40e/i40e_pf.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/drivers/net/i40e/i40e_pf.c b/drivers/net/i40e

[dpdk-dev] [PATCH 5/6] i40e: fix problematic dereference

2016-04-21 Thread Helin Zhang
Fix issue reported by Coverity. Coverity ID 13298: Dereference before null check. Fixes: 4861cde46116 ("i40e: new poll mode driver") Signed-off-by: Helin Zhang --- drivers/net/i40e/i40e_pf.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/net/i40e/i

[dpdk-dev] [PATCH 4/6] i40e: fix problematic dereference

2016-04-21 Thread Helin Zhang
Fix issue reported by Coverity. Coverity ID 13299: Dereference before null check. Fixes: 4861cde46116 ("i40e: new poll mode driver") Signed-off-by: Helin Zhang --- drivers/net/i40e/i40e_pf.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/i40e/i

[dpdk-dev] [PATCH 3/6] i40e: fix problematic dereference

2016-04-21 Thread Helin Zhang
Fix issue reported by Coverity. Coverity ID 13294: Dereference before null check. Fixes: a778a1fa2e4e ("i40e: set up and initialize flow director") Signed-off-by: Helin Zhang --- drivers/net/i40e/i40e_rxtx.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/d

[dpdk-dev] [PATCH 2/6] i40e: fix problematic dereference

2016-04-21 Thread Helin Zhang
Fix issue reported by Coverity. Coverity ID 13301: Dereference before null check. Fixes: a778a1fa2e4e ("i40e: set up and initialize flow director") Signed-off-by: Helin Zhang --- drivers/net/i40e/i40e_rxtx.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/d

[dpdk-dev] [PATCH 1/6] i40e: fix problematic dereference

2016-04-21 Thread Helin Zhang
Fix issue reported by Coverity. Coverity ID 119267: Dereference before null check. Fixes: 8e109464c022 ("i40e: allow vector Rx and Tx usage") Signed-off-by: Helin Zhang --- drivers/net/i40e/i40e_rxtx.c | 10 +- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/d

[dpdk-dev] [PATCH 0/6] fix i40e problematic dereference

2016-04-21 Thread Helin Zhang
It fixes several problematic dereferences in i40e driver, reported by Coverity. Helin Zhang (6): i40e: fix problematic dereference i40e: fix problematic dereference i40e: fix problematic dereference i40e: fix problematic dereference i40e: fix problematic dereference i40e: fix

[dpdk-dev] [PATCH v5 2/2] i40e: fix the overflow issue

2016-03-12 Thread Helin Zhang
The array 'ptype_table' was defined in depth of 'UINT8_MAX' which is 255, while the querying index could be from 0 to 255. The issue can be fixed with expanding the array to one more element. Fixes: 9571ea028489 ("i40e: replace some offload flags with unified packet typ

[dpdk-dev] [PATCH v5 1/2] ethdev: add vlan type for setting ether type

2016-03-12 Thread Helin Zhang
In order to set ether type of VLAN for single VLAN, inner and outer VLAN, the VLAN type as an input parameter is added to 'rte_eth_dev_set_vlan_ether_type()'. In addition, corresponding changes in e1000, ixgbe and i40e are also added. Signed-off-by: Helin Zhang Acked-by: Wenzhuo Lu

[dpdk-dev] [PATCH v5 0/2] i40e setting ether type of VLANs

2016-03-12 Thread Helin Zhang
to avoid ABI issue. - Re-organized the patch set. v2: - Used RTE_NEXT_ABI to avoid ABI change issue. - Reworked the announcement of ABI change for release 16.07. - Fixed a i40e overflow issue. Helin Zhang (2): ethdev: add vlan type for setting ether type i40e: fix the overflow issue app

[dpdk-dev] [PATCH v4 2/2] i40e: fix the overflow issue

2016-03-11 Thread Helin Zhang
The array 'ptype_table' was defined in depth of 'UINT8_MAX' which is 255, while the querying index could be from 0 to 255. The issue can be fixed with expanding the array to one more element. Fixes: 9571ea028489 ("i40e: replace some offload flags with unified packet typ

[dpdk-dev] [PATCH v4 1/2] ethdev: add vlan type for setting ether type

2016-03-11 Thread Helin Zhang
In order to set ether type of VLAN for single VLAN, inner and outer VLAN, the VLAN type as an input parameter is added to 'rte_eth_dev_set_vlan_ether_type()'. In addition, corresponding changes in e1000, ixgbe and i40e are also added. Signed-off-by: Helin Zhang Acked-by: Wenzhuo Lu

[dpdk-dev] [PATCH v4 0/2] i40e setting ether type of VLANs

2016-03-11 Thread Helin Zhang
ABI change issue. - Reworked the announcement of ABI change for release 16.07. - Fixed a i40e overflow issue. Helin Zhang (2): ethdev: add vlan type for setting ether type i40e: fix the overflow issue app/test-pmd/cmdline.c | 30 +- app/test-pmd/config.c

[dpdk-dev] [PATCH v3 2/2] i40e: fix the overflow issue

2016-03-11 Thread Helin Zhang
The array 'ptype_table' was defined in depth of 'UINT8_MAX' which is 255, while the querying index could be from 0 to 255. The issue can be fixed with expanding the array to one more element. Fixes: 9571ea028489 ("i40e: replace some offload flags with unified packet typ

[dpdk-dev] [PATCH v3 1/2] ethdev: add vlan type for setting ether type

2016-03-11 Thread Helin Zhang
In order to set ether type of VLAN for single VLAN, inner and outer VLAN, the VLAN type as an input parameter is added to 'rte_eth_dev_set_vlan_ether_type()'. In addition, corresponding changes in e1000, ixgbe and i40e are also added. Signed-off-by: Helin Zhang --- app/test-pmd

[dpdk-dev] [PATCH v3 0/2] i40e setting ether type of VLANs

2016-03-11 Thread Helin Zhang
ABI change for release 16.07. - Fixed a i40e overflow issue. Helin Zhang (2): ethdev: add vlan type for setting ether type i40e: fix the overflow issue app/test-pmd/cmdline.c | 30 +++- app/test-pmd/config.c | 9 ++--- app/test-pmd/testpmd.h

[dpdk-dev] [PATCH v5 29/29] i40evf: use base driver defined interface

2016-03-08 Thread Helin Zhang
It removes the i40evf_set_mac_type() defined in PMD, and reuses i40e_set_mac_type() defined in base driver. Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- drivers/net/i40e/i40e_ethdev_vf.c | 22 +- 1 file changed, 1 insertion(+), 21 deletions(-) diff --git a/drivers

[dpdk-dev] [PATCH v5 28/29] i40e: add base driver release info

2016-03-08 Thread Helin Zhang
It adds base driver release information such as release date, for better tracking in the future. Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- drivers/net/i40e/Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/net/i40e/Makefile b/drivers/net/i40e/Makefile index

[dpdk-dev] [PATCH v5 27/29] i40e: update structure and macro definitions

2016-03-08 Thread Helin Zhang
Several structures and macros are added or updated, such as 'struct i40e_aqc_get_link_status', 'struct i40e_aqc_run_phy_activity' and 'struct i40e_aqc_lldp_set_local_mib_resp'. Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- doc/guides/rel_notes/release_16

[dpdk-dev] [PATCH v5 26/29] i40e/base: add AQ thermal sensor control struct

2016-03-08 Thread Helin Zhang
It adds the new AQ command and struct for managing a thermal sensor. Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- drivers/net/i40e/base/i40e_adminq_cmd.h | 17 + 1 file changed, 17 insertions(+) diff --git a/drivers/net/i40e/base/i40e_adminq_cmd.h b/drivers/net/i40e

[dpdk-dev] [PATCH v5 25/29] i40e/base: add a new Virtchnl offload

2016-03-08 Thread Helin Zhang
X722 supports Expanded version of TCP, UDP PCTYPES for RSS. Add a Virtchnl offload to support this. Without this patch VF drivers will not be able to support the correct PCTYPES for X722 and UDP flows will not fan out. Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- drivers/net/i40e/base

[dpdk-dev] [PATCH v5 24/29] i40e: expose some registers

2016-03-08 Thread Helin Zhang
This patch adds 7 new register definitions for programming the parser, flow director and RSS blocks in the HW. Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- drivers/net/i40e/base/i40e_register.h | 48 +++ drivers/net/i40e/i40e_ethdev.c| 11

[dpdk-dev] [PATCH v5 23/29] i40e: use AQ rx control register read/write

2016-03-08 Thread Helin Zhang
RX control register read/write functions are added, as directly read/write may fail when under stress small traffic. After the adminq is ready, all rx control registers should be read/written by dedicated functions. Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- doc/guides/rel_notes

[dpdk-dev] [PATCH v5 22/29] i40e/base: coding style fixes

2016-03-08 Thread Helin Zhang
It adds coding style fixes. Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- drivers/net/i40e/base/i40e_common.c | 19 --- 1 file changed, 12 insertions(+), 7 deletions(-) v4: - Reworded the commit logs. diff --git a/drivers/net/i40e/base/i40e_common.c b/drivers/net

[dpdk-dev] [PATCH v5 21/29] i40e/base: save off VSI resource count

2016-03-08 Thread Helin Zhang
When updating a VSI, save off the number of allocated and unallocated VSIs as we do when adding a VSI. Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- drivers/net/i40e/base/i40e_common.c | 6 ++ 1 file changed, 6 insertions(+) v4: - Reworded the commit logs. diff --git a/drivers

[dpdk-dev] [PATCH v5 20/29] i40e/base: fix driver load failure

2016-03-08 Thread Helin Zhang
It fixes the driver load failure with linking with particular PHY types, as the amount of time it takes for the GLGEN_RSTAT_DEVSTATE to be set increases greatly on those PHY types, which can lead to a timeout. Fixes: 9aeefed05538 ("i40e/base: support ESS") Signed-off-by: Helin Zhang

[dpdk-dev] [PATCH v5 19/29] i40e/base: apply promisc mode to Tx Traffic

2016-03-08 Thread Helin Zhang
is similar to default port VSI. Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- drivers/net/i40e/base/i40e_adminq_cmd.h | 1 + drivers/net/i40e/base/i40e_common.c | 9 - 2 files changed, 9 insertions(+), 1 deletion(-) v4: - Reworded the commit logs. diff --git a/drivers/net

[dpdk-dev] [PATCH v5 18/29] i40e/base: add functions to blink led

2016-03-08 Thread Helin Zhang
This patch adds functions to blink led on devices using a new PHY since MAC registers used in other designs do not work in this device configuration. Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- drivers/net/i40e/base/i40e_common.c| 329 + drivers/net

[dpdk-dev] [PATCH v5 17/29] i40e/base: implement new API function

2016-03-08 Thread Helin Zhang
Add the support code for calling the AdminQ API call aq_set_switch_config. Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- drivers/net/i40e/base/i40e_adminq_cmd.h | 12 drivers/net/i40e/base/i40e_common.c | 28 drivers/net/i40e/base

[dpdk-dev] [PATCH v5 16/29] i40e: add VEB stat control

2016-03-08 Thread Helin Zhang
functionality exists. Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- drivers/net/i40e/base/i40e_adminq_cmd.h | 3 ++- drivers/net/i40e/base/i40e_common.c | 11 ++- drivers/net/i40e/base/i40e_prototype.h | 4 ++-- drivers/net/i40e/i40e_ethdev.c | 2 +- 4 files changed, 11

[dpdk-dev] [PATCH v5 15/29] i40e/base: support operating port mirroring rules

2016-03-08 Thread Helin Zhang
This patch implements necessary functions related to port mirroring features such as add/delete mirror rule, function to set promiscuous VLAN mode for VSI if mirror rule_type is "VLAN Mirroring". Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- drivers/net/i40e/base/i40e_common.

[dpdk-dev] [PATCH v5 14/29] i40e/base: set shared bit for multicast filters

2016-03-08 Thread Helin Zhang
It adds the use of the new shared MAC filter bit for multicast and broadcast filters in order to make better use of the filters available from the device. Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- drivers/net/i40e/base/i40e_adminq_cmd.h | 1 + drivers/net/i40e/base/i40e_common.c

[dpdk-dev] [PATCH v5 13/29] i40e/base: fix for PHY NVM interaction problem

2016-03-08 Thread Helin Zhang
calling get phy capability function because that bit is not set when device is in PHY interaction mode. Fixes: 842ea1996335 ("i40e/base: save link module type") Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- drivers/net/i40e/base/i40e_common.c | 16 +--- 1 file

[dpdk-dev] [PATCH v5 12/29] i40e/base: unify the capability function

2016-03-08 Thread Helin Zhang
The device capabilities were defined in two places, and neither had all the definitions. It really belongs with the AQ API definition, so this patch removes the other set of definitions and fills out the missing item. Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- drivers/net/i40e/base

[dpdk-dev] [PATCH v5 11/29] i40e/base: fix up recent proxy bits for X722_SUPPORT

2016-03-08 Thread Helin Zhang
pport proxy config for X722") Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- drivers/net/i40e/base/i40e_adminq_cmd.h | 46 + drivers/net/i40e/base/i40e_common.c | 14 +- 2 files changed, 12 insertions(+), 48 deletions(-) v4: - Reworded the c

[dpdk-dev] [PATCH v5 10/29] i40e/base: fix up recent wol bits for X722_SUPPORT

2016-03-08 Thread Helin Zhang
;i40e/base: support WOL config for X722") Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- drivers/net/i40e/base/i40e_adminq_cmd.h | 92 - 1 file changed, 44 insertions(+), 48 deletions(-) v4: - Reworded the commit logs. - Splitted WOL fixes into a

[dpdk-dev] [PATCH v5 09/29] i40e: update device id

2016-03-08 Thread Helin Zhang
Add new Device ID's for backplane and QSFP+ adapters, and delete deprecated one for backplane. Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- drivers/net/i40e/base/i40e_common.c | 12 ++-- drivers/net/i40e/base/i40e_devids.h | 10 +- driver

[dpdk-dev] [PATCH v5 08/29] i40e/base: fix uncertain event descriptor issue

2016-03-08 Thread Helin Zhang
"i40e: base driver") Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- drivers/net/i40e/base/i40e_adminq.c | 17 ++--- 1 file changed, 10 insertions(+), 7 deletions(-) v4: - Reworded the commit logs. diff --git a/drivers/net/i40e/base/i40e_adminq.c b/drivers/net/i40e/bas

[dpdk-dev] [PATCH v5 07/29] i40e/base: set aq count after memory allocation

2016-03-08 Thread Helin Zhang
The standard way to check if the AQ is enabled is to look at the count field. So it should only set this field after it has successfully allocated memory. Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- drivers/net/i40e/base/i40e_adminq.c | 4 ++-- 1 file changed, 2 insertions(+), 2

[dpdk-dev] [PATCH v5 06/29] i40e/base: fix missing check for stopped admin queue

2016-03-08 Thread Helin Zhang
Fixes: 8db9e2a1b232 ("i40e: base driver") Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- drivers/net/i40e/base/i40e_adminq.c | 8 1 file changed, 8 insertions(+) v4: - Reworded the commit logs. diff --git a/drivers/net/i40e/base/i40e_adminq.c b/drivers/net/i40e/base/i40e

[dpdk-dev] [PATCH v5 05/29] i40e/base: limit version check of DCB

2016-03-08 Thread Helin Zhang
XL710/X710 devices requires FW version checks to properly handle DCB configurations from the FW while other devices (e.g. X722) do not, so limit these checks to XL710/X710 only. Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- drivers/net/i40e/base/i40e_dcb.c | 34

[dpdk-dev] [PATCH v5 04/29] i40e/base: add X722 support on nvm read

2016-03-08 Thread Helin Zhang
t can be called from the paths that need the bulk access. Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- drivers/net/i40e/base/i40e_nvm.c | 109 ++--- drivers/net/i40e/base/i40e_prototype.h | 8 ++- 2 files changed, 92 insertions(+), 25 deletions(-

[dpdk-dev] [PATCH v5 03/29] i40e/base: add hw flag for X722 register access

2016-03-08 Thread Helin Zhang
Instead of doing the MAC check, use a flag that gets set per MAC. This way there are less chances of user error and it can enable multiple MACs with the capability in a single place rather than cluttering the code with MAC checks. Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- drivers

[dpdk-dev] [PATCH v5 02/29] i40e/base: acquire NVM ownership before reading it

2016-03-08 Thread Helin Zhang
It needs to acquire the NVM ownership before issuing an AQ read to the X722 NVM otherwise it will get EBUSY from the firmware. Also it should be released when done. Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- drivers/net/i40e/base/i40e_nvm.c | 35 +-- 1

[dpdk-dev] [PATCH v5 01/29] i40e/base: fix compilation warnings

2016-03-08 Thread Helin Zhang
It fixes compilation warnings. Fixes: bd6651c2d2d7 ("i40e/base: use bit shift macros") Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- drivers/net/i40e/base/i40e_lan_hmc.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) v4: - Reworded the commit logs. diff --git

[dpdk-dev] [PATCH v5 00/29] i40e base driver update

2016-03-08 Thread Helin Zhang
s, in order to support newly added X722 VF device IDs. - Used small letter in all commit log titles. Helin Zhang (29): i40e/base: fix compilation warnings i40e/base: acquire NVM ownership before reading it i40e/base: add hw flag for X722 register access i40e/base: add X722 support o

[dpdk-dev] [PATCH v2 2/2] i40evf: use ether API to validate MAC address

2016-03-08 Thread Helin Zhang
It uses ether API of 'is_valid_assigned_ether_addr' to validate MAC address. In the meanwhile, more annotations are added. Signed-off-by: Helin Zhang --- drivers/net/i40e/i40e_ethdev_vf.c | 14 +++--- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/driver

[dpdk-dev] [PATCH v2 1/2] i40e: generate MAC address for VF

2016-03-08 Thread Helin Zhang
It generates a MAC address for each VFs during PF host initialization. Signed-off-by: Helin Zhang --- doc/guides/rel_notes/release_16_04.rst | 5 + drivers/net/i40e/i40e_ethdev.h | 1 + drivers/net/i40e/i40e_pf.c | 3 +++ 3 files changed, 9 insertions(+) v2: - It just

[dpdk-dev] [PATCH v2 0/2] add VF MAC address generation

2016-03-08 Thread Helin Zhang
build v2: - It just adds generating a MAC address for each VFs during PF host initialization, and removes configuring from users. - Reworded the release notes. - Removed the app changes. Helin Zhang (2): i40e: generate MAC address for VF i40evf: use ether API to validate MAC address doc

[dpdk-dev] [PATCH v2 3/3] i40e: fix the overflow issue

2016-03-07 Thread Helin Zhang
The array 'ptype_table' was defined in depth of 'UINT8_MAX' which is 255, while the querying index could be from 0 to 255. The issue can be fixed with expanding the array to one more element. Fixes: 9571ea028489 ("i40e: replace some offload flags with unified packet typ

[dpdk-dev] [PATCH v2 2/3] i40e: add VLAN ether type config

2016-03-07 Thread Helin Zhang
It adds the setting VLAN ether type of single VLAN, inner and outer VLAN. Single VLAN is treated as inner VLAN as usual. Signed-off-by: Helin Zhang --- drivers/net/i40e/i40e_ethdev.c | 68 +++--- 1 file changed, 64 insertions(+), 4 deletions(-) v2: - Used

[dpdk-dev] [PATCH v2 1/3] ethdev: add vlan type for setting ether type

2016-03-07 Thread Helin Zhang
In order to set ether type of VLAN for single VLAN, inner and outer VLAN, the VLAN type as an input parameter is added to 'rte_eth_dev_set_vlan_ether_type()'. In addition, corresponding changes in e1000, ixgbe and i40e are also added. Signed-off-by: Helin Zhang --- app/test-pmd

[dpdk-dev] [PATCH v2 0/3] i40e setting ether type of VLANs

2016-03-07 Thread Helin Zhang
4ac366ba647909c3b71818f9be9db86ba5e871da nfp: fix non-x86 build v2: - Used RTE_NEXT_ABI to avoid ABI change issue. - Reworked the announcement of ABI change for release 16.07. - Fixed a i40e overflow issue. Helin Zhang (3): ethdev: add vlan type for setting ether type i40e: add VLAN ether type

[dpdk-dev] [PATCH v4 29/29] i40evf: use base driver defined interface

2016-03-06 Thread Helin Zhang
It removes the i40evf_set_mac_type() defined in PMD, and reuses i40e_set_mac_type() defined in base driver. Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- drivers/net/i40e/i40e_ethdev_vf.c | 22 +- 1 file changed, 1 insertion(+), 21 deletions(-) diff --git a/drivers

[dpdk-dev] [PATCH v4 28/29] i40e: add base driver release info

2016-03-06 Thread Helin Zhang
It adds base driver release information such as release date, for better tracking in the future. Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- drivers/net/i40e/Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/net/i40e/Makefile b/drivers/net/i40e/Makefile index

[dpdk-dev] [PATCH v4 27/29] i40e: update structure and macro definitions

2016-03-06 Thread Helin Zhang
Several structures and macros are added or updated, such as 'struct i40e_aqc_get_link_status', 'struct i40e_aqc_run_phy_activity' and 'struct i40e_aqc_lldp_set_local_mib_resp'. Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- doc/guides/rel_notes/release_16

[dpdk-dev] [PATCH v4 26/29] i40e/base: add AQ thermal sensor control struct

2016-03-06 Thread Helin Zhang
It adds the new AQ command and struct for managing a thermal sensor. Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- drivers/net/i40e/base/i40e_adminq_cmd.h | 17 + 1 file changed, 17 insertions(+) diff --git a/drivers/net/i40e/base/i40e_adminq_cmd.h b/drivers/net/i40e

[dpdk-dev] [PATCH v4 25/29] i40e/base: add a new Virtchnl offload

2016-03-06 Thread Helin Zhang
X722 supports Expanded version of TCP, UDP PCTYPES for RSS. Add a Virtchnl offload to support this. Without this patch VF drivers will not be able to support the correct PCTYPES for X722 and UDP flows will not fan out. Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- drivers/net/i40e/base

[dpdk-dev] [PATCH v4 24/29] i40e: expose some registers

2016-03-06 Thread Helin Zhang
This patch adds 7 new register definitions for programming the parser, flow director and RSS blocks in the HW. Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- drivers/net/i40e/base/i40e_register.h | 48 +++ drivers/net/i40e/i40e_ethdev.c| 11

[dpdk-dev] [PATCH v4 23/29] i40e: use AQ rx control register read/write

2016-03-06 Thread Helin Zhang
RX control register read/write functions are added, as directly read/write may fail when under stress small traffic. After the adminq is ready, all rx control registers should be read/written by dedicated functions. Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- doc/guides/rel_notes

[dpdk-dev] [PATCH v4 22/29] i40e/base: coding style fixes

2016-03-06 Thread Helin Zhang
It adds coding style fixes. Signed-off-by: Helin Zhang Acked-by: Jingjing Wu --- drivers/net/i40e/base/i40e_common.c | 19 --- 1 file changed, 12 insertions(+), 7 deletions(-) v4: - Reworded the commit logs. diff --git a/drivers/net/i40e/base/i40e_common.c b/drivers/net

  1   2   3   4   5   6   7   8   9   10   >