DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH 0/3] update i40e base code
@ 2020-03-25  3:23 Jiaqi Min
  2020-03-25  3:23 ` [dpdk-dev] [PATCH 1/3] net/i40e/base: update X722/X710 FW API version to 1.10 Jiaqi Min
                   ` (4 more replies)
  0 siblings, 5 replies; 14+ messages in thread
From: Jiaqi Min @ 2020-03-25  3:23 UTC (permalink / raw)
  To: dev; +Cc: Jiaqi Min

The main changes include:

* Update X722/X710 FW API version to 1.10.
* New device ID introduced for V710-T*L 5G.
* add constants for PTP pins.

Jiaqi Min (3):
  net/i40e/base: update X722/X710 FW API version to 1.10
  net/i40e/base: new device ID introduced for V710-TL 5G
  net/i40e/base: add constants for PTP pins

 drivers/net/i40e/base/i40e_adminq_cmd.h |  4 ++--
 drivers/net/i40e/base/i40e_common.c     | 12 +++++++++---
 drivers/net/i40e/base/i40e_devids.h     |  4 +++-
 drivers/net/i40e/base/i40e_register.h   |  4 ++++
 drivers/net/i40e/i40e_ethdev.c          |  1 +
 5 files changed, 19 insertions(+), 6 deletions(-)

-- 
2.17.1


^ permalink raw reply	[flat|nested] 14+ messages in thread

* [dpdk-dev] [PATCH 1/3] net/i40e/base: update X722/X710 FW API version to 1.10
  2020-03-25  3:23 [dpdk-dev] [PATCH 0/3] update i40e base code Jiaqi Min
@ 2020-03-25  3:23 ` Jiaqi Min
  2020-03-25  3:23 ` [dpdk-dev] [PATCH 2/3] net/i40e/base: new device ID introduced for V710-TL 5G Jiaqi Min
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 14+ messages in thread
From: Jiaqi Min @ 2020-03-25  3:23 UTC (permalink / raw)
  To: dev; +Cc: Jiaqi Min, Piotr Azarewicz

update X722/X710 FW API version to 1.10.

Signed-off-by: Piotr Azarewicz <piotr.azarewicz@intel.com>
Signed-off-by: Jiaqi Min <jiaqix.min@intel.com>
---
 drivers/net/i40e/base/i40e_adminq_cmd.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/i40e/base/i40e_adminq_cmd.h b/drivers/net/i40e/base/i40e_adminq_cmd.h
index d99fbbe6a..55fd43e22 100644
--- a/drivers/net/i40e/base/i40e_adminq_cmd.h
+++ b/drivers/net/i40e/base/i40e_adminq_cmd.h
@@ -12,8 +12,8 @@
  */
 
 #define I40E_FW_API_VERSION_MAJOR	0x0001
-#define I40E_FW_API_VERSION_MINOR_X722	0x0009
-#define I40E_FW_API_VERSION_MINOR_X710	0x0009
+#define I40E_FW_API_VERSION_MINOR_X722	0x000A
+#define I40E_FW_API_VERSION_MINOR_X710	0x000A
 
 #define I40E_FW_MINOR_VERSION(_h) ((_h)->mac.type == I40E_MAC_XL710 ? \
 					I40E_FW_API_VERSION_MINOR_X710 : \
-- 
2.17.1


^ permalink raw reply	[flat|nested] 14+ messages in thread

* [dpdk-dev] [PATCH 2/3] net/i40e/base: new device ID introduced for V710-TL 5G
  2020-03-25  3:23 [dpdk-dev] [PATCH 0/3] update i40e base code Jiaqi Min
  2020-03-25  3:23 ` [dpdk-dev] [PATCH 1/3] net/i40e/base: update X722/X710 FW API version to 1.10 Jiaqi Min
@ 2020-03-25  3:23 ` Jiaqi Min
  2020-03-25  3:23 ` [dpdk-dev] [PATCH 3/3] net/i40e/base: add constants for PTP pins Jiaqi Min
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 14+ messages in thread
From: Jiaqi Min @ 2020-03-25  3:23 UTC (permalink / raw)
  To: dev; +Cc: Jiaqi Min, Zalfresso-Jundzillo

This change is adding new device ID and handling it in the same
way as X710-T*L head of family. A new device ID is for new V710-T*L adapter
supporting speeds up to 5G.

Signed-off-by: Zalfresso-Jundzillo <marekx.zalfresso-jundzillo@intel.com>
Signed-off-by: Jiaqi Min <jiaqix.min@intel.com>
---
 drivers/net/i40e/base/i40e_common.c | 12 +++++++++---
 drivers/net/i40e/base/i40e_devids.h |  4 +++-
 drivers/net/i40e/i40e_ethdev.c      |  1 +
 3 files changed, 13 insertions(+), 4 deletions(-)

diff --git a/drivers/net/i40e/base/i40e_common.c b/drivers/net/i40e/base/i40e_common.c
index 84e67f285..4e06f2d23 100644
--- a/drivers/net/i40e/base/i40e_common.c
+++ b/drivers/net/i40e/base/i40e_common.c
@@ -34,6 +34,7 @@ enum i40e_status_code i40e_set_mac_type(struct i40e_hw *hw)
 		case I40E_DEV_ID_10G_BASE_T_BC:
 		case I40E_DEV_ID_10G_B:
 		case I40E_DEV_ID_10G_SFP:
+		case I40E_DEV_ID_5G_BASE_T_BC:
 		case I40E_DEV_ID_20G_KR2:
 		case I40E_DEV_ID_20G_KR2_A:
 		case I40E_DEV_ID_25G_B:
@@ -6728,6 +6729,7 @@ enum i40e_status_code i40e_write_phy_register(struct i40e_hw *hw,
 	case I40E_DEV_ID_10G_BASE_T:
 	case I40E_DEV_ID_10G_BASE_T4:
 	case I40E_DEV_ID_10G_BASE_T_BC:
+	case I40E_DEV_ID_5G_BASE_T_BC:
 	case I40E_DEV_ID_10G_BASE_T_X722:
 	case I40E_DEV_ID_25G_B:
 	case I40E_DEV_ID_25G_SFP28:
@@ -6764,6 +6766,7 @@ enum i40e_status_code i40e_read_phy_register(struct i40e_hw *hw,
 		break;
 	case I40E_DEV_ID_10G_BASE_T:
 	case I40E_DEV_ID_10G_BASE_T4:
+	case I40E_DEV_ID_5G_BASE_T_BC:
 	case I40E_DEV_ID_10G_BASE_T_X722:
 	case I40E_DEV_ID_25G_B:
 	case I40E_DEV_ID_25G_SFP28:
@@ -7036,7 +7039,8 @@ enum i40e_status_code i40e_get_phy_lpi_status(struct i40e_hw *hw,
 	stat->rx_lpi_status = 0;
 	stat->tx_lpi_status = 0;
 
-	if (hw->device_id == I40E_DEV_ID_10G_BASE_T_BC &&
+	if ((hw->device_id == I40E_DEV_ID_10G_BASE_T_BC ||
+	     hw->device_id == I40E_DEV_ID_5G_BASE_T_BC) &&
 	    (hw->phy.link_info.link_speed == I40E_LINK_SPEED_2_5GB ||
 	     hw->phy.link_info.link_speed == I40E_LINK_SPEED_5GB)) {
 		ret = i40e_aq_get_phy_register(hw,
@@ -7081,7 +7085,8 @@ enum i40e_status_code i40e_get_lpi_counters(struct i40e_hw *hw,
 	/* only X710-T*L requires special handling of counters
 	 * for other devices we just read the MAC registers
 	 */
-	if (hw->device_id == I40E_DEV_ID_10G_BASE_T_BC &&
+	if ((hw->device_id == I40E_DEV_ID_10G_BASE_T_BC ||
+	     hw->device_id == I40E_DEV_ID_5G_BASE_T_BC) &&
 	    hw->phy.link_info.link_speed != I40E_LINK_SPEED_1GB) {
 		enum i40e_status_code retval;
 		u32 cmd_status = 0;
@@ -7123,7 +7128,8 @@ enum i40e_status_code i40e_get_lpi_duration(struct i40e_hw *hw,
 	enum i40e_status_code retval;
 	u32 cmd_status;
 
-	if (hw->device_id != I40E_DEV_ID_10G_BASE_T_BC)
+	if (hw->device_id != I40E_DEV_ID_10G_BASE_T_BC &&
+	    hw->device_id != I40E_DEV_ID_5G_BASE_T_BC)
 		return I40E_ERR_NOT_IMPLEMENTED;
 
 	retval = i40e_aq_run_phy_activity
diff --git a/drivers/net/i40e/base/i40e_devids.h b/drivers/net/i40e/base/i40e_devids.h
index 5897d38f6..b87e1bcb4 100644
--- a/drivers/net/i40e/base/i40e_devids.h
+++ b/drivers/net/i40e/base/i40e_devids.h
@@ -25,6 +25,7 @@
 #define I40E_DEV_ID_X710_N3000      0x0CF8
 #define I40E_DEV_ID_XXV710_N3000	0x0D58
 #define I40E_DEV_ID_10G_BASE_T_BC	0x15FF
+#define I40E_DEV_ID_5G_BASE_T_BC	0x101F
 #if defined(INTEGRATED_VF) || defined(VF_DRIVER) || defined(I40E_NDIS_SUPPORT)
 #define I40E_DEV_ID_VF			0x154C
 #define I40E_DEV_ID_VF_HV		0x1571
@@ -39,7 +40,8 @@
 #define I40E_DEV_ID_10G_B		0x104F
 #define I40E_DEV_ID_10G_SFP		0x104E
 #define I40E_IS_X710TL_DEVICE(d) \
-	((d) == I40E_DEV_ID_10G_BASE_T_BC)
+	(((d) == I40E_DEV_ID_10G_BASE_T_BC) || \
+	((d) == I40E_DEV_ID_5G_BASE_T_BC))
 #define I40E_DEV_ID_KX_X722		0x37CE
 #define I40E_DEV_ID_QSFP_X722		0x37CF
 #define I40E_DEV_ID_SFP_X722		0x37D0
diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c
index 9539b0470..6740d00e2 100644
--- a/drivers/net/i40e/i40e_ethdev.c
+++ b/drivers/net/i40e/i40e_ethdev.c
@@ -443,6 +443,7 @@ static const struct rte_pci_id pci_id_i40e_map[] = {
 	{ RTE_PCI_DEVICE(I40E_INTEL_VENDOR_ID, I40E_DEV_ID_X710_N3000) },
 	{ RTE_PCI_DEVICE(I40E_INTEL_VENDOR_ID, I40E_DEV_ID_XXV710_N3000) },
 	{ RTE_PCI_DEVICE(I40E_INTEL_VENDOR_ID, I40E_DEV_ID_10G_BASE_T_BC) },
+	{ RTE_PCI_DEVICE(I40E_INTEL_VENDOR_ID, I40E_DEV_ID_5G_BASE_T_BC) },
 	{ RTE_PCI_DEVICE(I40E_INTEL_VENDOR_ID, I40E_DEV_ID_10G_B) },
 	{ RTE_PCI_DEVICE(I40E_INTEL_VENDOR_ID, I40E_DEV_ID_10G_SFP) },
 	{ .vendor_id = 0, /* sentinel */ },
-- 
2.17.1


^ permalink raw reply	[flat|nested] 14+ messages in thread

* [dpdk-dev] [PATCH 3/3] net/i40e/base: add constants for PTP pins
  2020-03-25  3:23 [dpdk-dev] [PATCH 0/3] update i40e base code Jiaqi Min
  2020-03-25  3:23 ` [dpdk-dev] [PATCH 1/3] net/i40e/base: update X722/X710 FW API version to 1.10 Jiaqi Min
  2020-03-25  3:23 ` [dpdk-dev] [PATCH 2/3] net/i40e/base: new device ID introduced for V710-TL 5G Jiaqi Min
@ 2020-03-25  3:23 ` Jiaqi Min
  2020-03-25 10:03   ` Kwapulinski, Piotr
  2020-04-08  7:33 ` [dpdk-dev] [PATCH 0/3] update i40e base code Xing, Beilei
  2020-04-08 10:05 ` [dpdk-dev] [PATCH v2 0/4] " Jiaqi Min
  4 siblings, 1 reply; 14+ messages in thread
From: Jiaqi Min @ 2020-03-25  3:23 UTC (permalink / raw)
  To: dev; +Cc: Jiaqi Min, Piotr Kwapulinski

Introduce constants for handling PTP pins used for external
clock source.

Signed-off-by: Piotr Kwapulinski <piotr.kwapulinski@intel.com>
Signed-off-by: Jiaqi Min <jiaqix.min@intel.com>
---
 drivers/net/i40e/base/i40e_register.h | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/net/i40e/base/i40e_register.h b/drivers/net/i40e/base/i40e_register.h
index 436f48efa..dffcc633c 100644
--- a/drivers/net/i40e/base/i40e_register.h
+++ b/drivers/net/i40e/base/i40e_register.h
@@ -2910,6 +2910,10 @@
 #define I40E_PRTTSYN_AUX_0_PULSEW_MASK   I40E_MASK(0xF, I40E_PRTTSYN_AUX_0_PULSEW_SHIFT)
 #define I40E_PRTTSYN_AUX_0_EVNTLVL_SHIFT 16
 #define I40E_PRTTSYN_AUX_0_EVNTLVL_MASK  I40E_MASK(0x3, I40E_PRTTSYN_AUX_0_EVNTLVL_SHIFT)
+#define I40E_PRTTSYN_AUX_0_PTPFLAG_SHIFT 17
+#define I40E_PRTTSYN_AUX_0_PTPFLAG_MASK \
+		I40E_MASK(0x1, I40E_PRTTSYN_AUX_0_PTPFLAG_SHIFT)
+#define I40E_PRTTSYN_AUX_0_PTP_OUT_SYNC_CLK_IO 0xF
 #define I40E_PRTTSYN_AUX_1(_i)               (0x001E42E0 + ((_i) * 32)) /* _i=0...1 */ /* Reset: GLOBR */
 #define I40E_PRTTSYN_AUX_1_MAX_INDEX         1
 #define I40E_PRTTSYN_AUX_1_INSTNT_SHIFT      0
-- 
2.17.1


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [dpdk-dev] [PATCH 3/3] net/i40e/base: add constants for PTP pins
  2020-03-25  3:23 ` [dpdk-dev] [PATCH 3/3] net/i40e/base: add constants for PTP pins Jiaqi Min
@ 2020-03-25 10:03   ` Kwapulinski, Piotr
  0 siblings, 0 replies; 14+ messages in thread
From: Kwapulinski, Piotr @ 2020-03-25 10:03 UTC (permalink / raw)
  To: Min, JiaqiX, dev

ACK

-----Original Message-----
From: Min, JiaqiX <jiaqix.min@intel.com> 
Sent: Wednesday, March 25, 2020 4:24 AM
To: dev@dpdk.org
Cc: Min, JiaqiX <jiaqix.min@intel.com>; Kwapulinski, Piotr <piotr.kwapulinski@intel.com>
Subject: [PATCH 3/3] net/i40e/base: add constants for PTP pins

Introduce constants for handling PTP pins used for external clock source.

Signed-off-by: Piotr Kwapulinski <piotr.kwapulinski@intel.com>
Signed-off-by: Jiaqi Min <jiaqix.min@intel.com>
---
 drivers/net/i40e/base/i40e_register.h | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/net/i40e/base/i40e_register.h b/drivers/net/i40e/base/i40e_register.h
index 436f48efa..dffcc633c 100644
--- a/drivers/net/i40e/base/i40e_register.h
+++ b/drivers/net/i40e/base/i40e_register.h
@@ -2910,6 +2910,10 @@
 #define I40E_PRTTSYN_AUX_0_PULSEW_MASK   I40E_MASK(0xF, I40E_PRTTSYN_AUX_0_PULSEW_SHIFT)
 #define I40E_PRTTSYN_AUX_0_EVNTLVL_SHIFT 16  #define I40E_PRTTSYN_AUX_0_EVNTLVL_MASK  I40E_MASK(0x3, I40E_PRTTSYN_AUX_0_EVNTLVL_SHIFT)
+#define I40E_PRTTSYN_AUX_0_PTPFLAG_SHIFT 17 #define 
+I40E_PRTTSYN_AUX_0_PTPFLAG_MASK \
+		I40E_MASK(0x1, I40E_PRTTSYN_AUX_0_PTPFLAG_SHIFT) #define 
+I40E_PRTTSYN_AUX_0_PTP_OUT_SYNC_CLK_IO 0xF
 #define I40E_PRTTSYN_AUX_1(_i)               (0x001E42E0 + ((_i) * 32)) /* _i=0...1 */ /* Reset: GLOBR */
 #define I40E_PRTTSYN_AUX_1_MAX_INDEX         1
 #define I40E_PRTTSYN_AUX_1_INSTNT_SHIFT      0
--
2.17.1

--------------------------------------------------------------------

Intel Technology Poland sp. z o.o.
ul. Slowackiego 173 | 80-298 Gdansk | Sad Rejonowy Gdansk Polnoc | VII Wydzial Gospodarczy Krajowego Rejestru Sadowego - KRS 101882 | NIP 957-07-52-316 | Kapital zakladowy 200.000 PLN.

Ta wiadomosc wraz z zalacznikami jest przeznaczona dla okreslonego adresata i moze zawierac informacje poufne. W razie przypadkowego otrzymania tej wiadomosci, prosimy o powiadomienie nadawcy oraz trwale jej usuniecie; jakiekolwiek
przegladanie lub rozpowszechnianie jest zabronione.
This e-mail and any attachments may contain confidential material for the sole use of the intended recipient(s). If you are not the intended recipient, please contact the sender and delete all copies; any review or distribution by
others is strictly prohibited.


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [dpdk-dev] [PATCH 0/3] update i40e base code
  2020-03-25  3:23 [dpdk-dev] [PATCH 0/3] update i40e base code Jiaqi Min
                   ` (2 preceding siblings ...)
  2020-03-25  3:23 ` [dpdk-dev] [PATCH 3/3] net/i40e/base: add constants for PTP pins Jiaqi Min
@ 2020-04-08  7:33 ` Xing, Beilei
  2020-04-08 10:05 ` [dpdk-dev] [PATCH v2 0/4] " Jiaqi Min
  4 siblings, 0 replies; 14+ messages in thread
From: Xing, Beilei @ 2020-04-08  7:33 UTC (permalink / raw)
  To: Min, JiaqiX, dev; +Cc: Min, JiaqiX

Pleas also update share code release version in readme. Thanks.

> -----Original Message-----
> From: dev <dev-bounces@dpdk.org> On Behalf Of Jiaqi Min
> Sent: Wednesday, March 25, 2020 11:24 AM
> To: dev@dpdk.org
> Cc: Min, JiaqiX <jiaqix.min@intel.com>
> Subject: [dpdk-dev] [PATCH 0/3] update i40e base code
> 
> The main changes include:
> 
> * Update X722/X710 FW API version to 1.10.
> * New device ID introduced for V710-T*L 5G.
> * add constants for PTP pins.
> 
> Jiaqi Min (3):
>   net/i40e/base: update X722/X710 FW API version to 1.10
>   net/i40e/base: new device ID introduced for V710-TL 5G
>   net/i40e/base: add constants for PTP pins
> 
>  drivers/net/i40e/base/i40e_adminq_cmd.h |  4 ++--
>  drivers/net/i40e/base/i40e_common.c     | 12 +++++++++---
>  drivers/net/i40e/base/i40e_devids.h     |  4 +++-
>  drivers/net/i40e/base/i40e_register.h   |  4 ++++
>  drivers/net/i40e/i40e_ethdev.c          |  1 +
>  5 files changed, 19 insertions(+), 6 deletions(-)
> 
> --
> 2.17.1


^ permalink raw reply	[flat|nested] 14+ messages in thread

* [dpdk-dev] [PATCH v2 0/4] update i40e base code
  2020-03-25  3:23 [dpdk-dev] [PATCH 0/3] update i40e base code Jiaqi Min
                   ` (3 preceding siblings ...)
  2020-04-08  7:33 ` [dpdk-dev] [PATCH 0/3] update i40e base code Xing, Beilei
@ 2020-04-08 10:05 ` Jiaqi Min
  2020-04-08 10:05   ` [dpdk-dev] [PATCH v2 1/4] net/i40e/base: update X722/X710 FW API version to 1.10 Jiaqi Min
                     ` (5 more replies)
  4 siblings, 6 replies; 14+ messages in thread
From: Jiaqi Min @ 2020-04-08 10:05 UTC (permalink / raw)
  To: dev; +Cc: Jiaqi Min

The main changes include:

* Update X722/X710 FW API version to 1.10.
* New device ID introduced for V710-T*L 5G.
* Add constants for PTP pins.
* Update version in README.
---
v2 changes:
* Updated version in README

Jiaqi Min (4):
  net/i40e/base: update X722/X710 FW API version to 1.10
  net/i40e/base: new device ID introduced for V710-TL 5G
  net/i40e/base: add constants for PTP pins
  net/i40e/base: update version

 drivers/net/i40e/base/README            |  2 +-
 drivers/net/i40e/base/i40e_adminq_cmd.h |  4 ++--
 drivers/net/i40e/base/i40e_common.c     | 12 +++++++++---
 drivers/net/i40e/base/i40e_devids.h     |  4 +++-
 drivers/net/i40e/base/i40e_register.h   |  4 ++++
 drivers/net/i40e/i40e_ethdev.c          |  1 +
 6 files changed, 20 insertions(+), 7 deletions(-)

-- 
2.17.1


^ permalink raw reply	[flat|nested] 14+ messages in thread

* [dpdk-dev] [PATCH v2 1/4] net/i40e/base: update X722/X710 FW API version to 1.10
  2020-04-08 10:05 ` [dpdk-dev] [PATCH v2 0/4] " Jiaqi Min
@ 2020-04-08 10:05   ` Jiaqi Min
  2020-04-08 10:05   ` [dpdk-dev] [PATCH v2 2/4] net/i40e/base: new device ID introduced for V710-TL 5G Jiaqi Min
                     ` (4 subsequent siblings)
  5 siblings, 0 replies; 14+ messages in thread
From: Jiaqi Min @ 2020-04-08 10:05 UTC (permalink / raw)
  To: dev; +Cc: Jiaqi Min, Piotr Azarewicz

update X722/X710 FW API version to 1.10.

Signed-off-by: Piotr Azarewicz <piotr.azarewicz@intel.com>
Signed-off-by: Jiaqi Min <jiaqix.min@intel.com>
---
 drivers/net/i40e/base/i40e_adminq_cmd.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/i40e/base/i40e_adminq_cmd.h b/drivers/net/i40e/base/i40e_adminq_cmd.h
index d99fbbe6a..55fd43e22 100644
--- a/drivers/net/i40e/base/i40e_adminq_cmd.h
+++ b/drivers/net/i40e/base/i40e_adminq_cmd.h
@@ -12,8 +12,8 @@
  */
 
 #define I40E_FW_API_VERSION_MAJOR	0x0001
-#define I40E_FW_API_VERSION_MINOR_X722	0x0009
-#define I40E_FW_API_VERSION_MINOR_X710	0x0009
+#define I40E_FW_API_VERSION_MINOR_X722	0x000A
+#define I40E_FW_API_VERSION_MINOR_X710	0x000A
 
 #define I40E_FW_MINOR_VERSION(_h) ((_h)->mac.type == I40E_MAC_XL710 ? \
 					I40E_FW_API_VERSION_MINOR_X710 : \
-- 
2.17.1


^ permalink raw reply	[flat|nested] 14+ messages in thread

* [dpdk-dev] [PATCH v2 2/4] net/i40e/base: new device ID introduced for V710-TL 5G
  2020-04-08 10:05 ` [dpdk-dev] [PATCH v2 0/4] " Jiaqi Min
  2020-04-08 10:05   ` [dpdk-dev] [PATCH v2 1/4] net/i40e/base: update X722/X710 FW API version to 1.10 Jiaqi Min
@ 2020-04-08 10:05   ` Jiaqi Min
  2020-04-08 10:05   ` [dpdk-dev] [PATCH v2 3/4] net/i40e/base: add constants for PTP pins Jiaqi Min
                     ` (3 subsequent siblings)
  5 siblings, 0 replies; 14+ messages in thread
From: Jiaqi Min @ 2020-04-08 10:05 UTC (permalink / raw)
  To: dev; +Cc: Jiaqi Min, Zalfresso-Jundzillo

This change is adding new device ID and handling it in the same
way as X710-T*L head of family. A new device ID is for new V710-T*L adapter
supporting speeds up to 5G.

Signed-off-by: Zalfresso-Jundzillo <marekx.zalfresso-jundzillo@intel.com>
Signed-off-by: Jiaqi Min <jiaqix.min@intel.com>
---
 drivers/net/i40e/base/i40e_common.c | 12 +++++++++---
 drivers/net/i40e/base/i40e_devids.h |  4 +++-
 drivers/net/i40e/i40e_ethdev.c      |  1 +
 3 files changed, 13 insertions(+), 4 deletions(-)

diff --git a/drivers/net/i40e/base/i40e_common.c b/drivers/net/i40e/base/i40e_common.c
index 84e67f285..4e06f2d23 100644
--- a/drivers/net/i40e/base/i40e_common.c
+++ b/drivers/net/i40e/base/i40e_common.c
@@ -34,6 +34,7 @@ enum i40e_status_code i40e_set_mac_type(struct i40e_hw *hw)
 		case I40E_DEV_ID_10G_BASE_T_BC:
 		case I40E_DEV_ID_10G_B:
 		case I40E_DEV_ID_10G_SFP:
+		case I40E_DEV_ID_5G_BASE_T_BC:
 		case I40E_DEV_ID_20G_KR2:
 		case I40E_DEV_ID_20G_KR2_A:
 		case I40E_DEV_ID_25G_B:
@@ -6728,6 +6729,7 @@ enum i40e_status_code i40e_write_phy_register(struct i40e_hw *hw,
 	case I40E_DEV_ID_10G_BASE_T:
 	case I40E_DEV_ID_10G_BASE_T4:
 	case I40E_DEV_ID_10G_BASE_T_BC:
+	case I40E_DEV_ID_5G_BASE_T_BC:
 	case I40E_DEV_ID_10G_BASE_T_X722:
 	case I40E_DEV_ID_25G_B:
 	case I40E_DEV_ID_25G_SFP28:
@@ -6764,6 +6766,7 @@ enum i40e_status_code i40e_read_phy_register(struct i40e_hw *hw,
 		break;
 	case I40E_DEV_ID_10G_BASE_T:
 	case I40E_DEV_ID_10G_BASE_T4:
+	case I40E_DEV_ID_5G_BASE_T_BC:
 	case I40E_DEV_ID_10G_BASE_T_X722:
 	case I40E_DEV_ID_25G_B:
 	case I40E_DEV_ID_25G_SFP28:
@@ -7036,7 +7039,8 @@ enum i40e_status_code i40e_get_phy_lpi_status(struct i40e_hw *hw,
 	stat->rx_lpi_status = 0;
 	stat->tx_lpi_status = 0;
 
-	if (hw->device_id == I40E_DEV_ID_10G_BASE_T_BC &&
+	if ((hw->device_id == I40E_DEV_ID_10G_BASE_T_BC ||
+	     hw->device_id == I40E_DEV_ID_5G_BASE_T_BC) &&
 	    (hw->phy.link_info.link_speed == I40E_LINK_SPEED_2_5GB ||
 	     hw->phy.link_info.link_speed == I40E_LINK_SPEED_5GB)) {
 		ret = i40e_aq_get_phy_register(hw,
@@ -7081,7 +7085,8 @@ enum i40e_status_code i40e_get_lpi_counters(struct i40e_hw *hw,
 	/* only X710-T*L requires special handling of counters
 	 * for other devices we just read the MAC registers
 	 */
-	if (hw->device_id == I40E_DEV_ID_10G_BASE_T_BC &&
+	if ((hw->device_id == I40E_DEV_ID_10G_BASE_T_BC ||
+	     hw->device_id == I40E_DEV_ID_5G_BASE_T_BC) &&
 	    hw->phy.link_info.link_speed != I40E_LINK_SPEED_1GB) {
 		enum i40e_status_code retval;
 		u32 cmd_status = 0;
@@ -7123,7 +7128,8 @@ enum i40e_status_code i40e_get_lpi_duration(struct i40e_hw *hw,
 	enum i40e_status_code retval;
 	u32 cmd_status;
 
-	if (hw->device_id != I40E_DEV_ID_10G_BASE_T_BC)
+	if (hw->device_id != I40E_DEV_ID_10G_BASE_T_BC &&
+	    hw->device_id != I40E_DEV_ID_5G_BASE_T_BC)
 		return I40E_ERR_NOT_IMPLEMENTED;
 
 	retval = i40e_aq_run_phy_activity
diff --git a/drivers/net/i40e/base/i40e_devids.h b/drivers/net/i40e/base/i40e_devids.h
index 5897d38f6..b87e1bcb4 100644
--- a/drivers/net/i40e/base/i40e_devids.h
+++ b/drivers/net/i40e/base/i40e_devids.h
@@ -25,6 +25,7 @@
 #define I40E_DEV_ID_X710_N3000      0x0CF8
 #define I40E_DEV_ID_XXV710_N3000	0x0D58
 #define I40E_DEV_ID_10G_BASE_T_BC	0x15FF
+#define I40E_DEV_ID_5G_BASE_T_BC	0x101F
 #if defined(INTEGRATED_VF) || defined(VF_DRIVER) || defined(I40E_NDIS_SUPPORT)
 #define I40E_DEV_ID_VF			0x154C
 #define I40E_DEV_ID_VF_HV		0x1571
@@ -39,7 +40,8 @@
 #define I40E_DEV_ID_10G_B		0x104F
 #define I40E_DEV_ID_10G_SFP		0x104E
 #define I40E_IS_X710TL_DEVICE(d) \
-	((d) == I40E_DEV_ID_10G_BASE_T_BC)
+	(((d) == I40E_DEV_ID_10G_BASE_T_BC) || \
+	((d) == I40E_DEV_ID_5G_BASE_T_BC))
 #define I40E_DEV_ID_KX_X722		0x37CE
 #define I40E_DEV_ID_QSFP_X722		0x37CF
 #define I40E_DEV_ID_SFP_X722		0x37D0
diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c
index 530908b0e..60de68fd8 100644
--- a/drivers/net/i40e/i40e_ethdev.c
+++ b/drivers/net/i40e/i40e_ethdev.c
@@ -443,6 +443,7 @@ static const struct rte_pci_id pci_id_i40e_map[] = {
 	{ RTE_PCI_DEVICE(I40E_INTEL_VENDOR_ID, I40E_DEV_ID_X710_N3000) },
 	{ RTE_PCI_DEVICE(I40E_INTEL_VENDOR_ID, I40E_DEV_ID_XXV710_N3000) },
 	{ RTE_PCI_DEVICE(I40E_INTEL_VENDOR_ID, I40E_DEV_ID_10G_BASE_T_BC) },
+	{ RTE_PCI_DEVICE(I40E_INTEL_VENDOR_ID, I40E_DEV_ID_5G_BASE_T_BC) },
 	{ RTE_PCI_DEVICE(I40E_INTEL_VENDOR_ID, I40E_DEV_ID_10G_B) },
 	{ RTE_PCI_DEVICE(I40E_INTEL_VENDOR_ID, I40E_DEV_ID_10G_SFP) },
 	{ .vendor_id = 0, /* sentinel */ },
-- 
2.17.1


^ permalink raw reply	[flat|nested] 14+ messages in thread

* [dpdk-dev] [PATCH v2 3/4] net/i40e/base: add constants for PTP pins
  2020-04-08 10:05 ` [dpdk-dev] [PATCH v2 0/4] " Jiaqi Min
  2020-04-08 10:05   ` [dpdk-dev] [PATCH v2 1/4] net/i40e/base: update X722/X710 FW API version to 1.10 Jiaqi Min
  2020-04-08 10:05   ` [dpdk-dev] [PATCH v2 2/4] net/i40e/base: new device ID introduced for V710-TL 5G Jiaqi Min
@ 2020-04-08 10:05   ` Jiaqi Min
  2020-04-08 10:22     ` Kwapulinski, Piotr
  2020-04-08 10:05   ` [dpdk-dev] [PATCH v2 4/4] net/i40e/base: update version Jiaqi Min
                     ` (2 subsequent siblings)
  5 siblings, 1 reply; 14+ messages in thread
From: Jiaqi Min @ 2020-04-08 10:05 UTC (permalink / raw)
  To: dev; +Cc: Jiaqi Min, Piotr Kwapulinski

Introduce constants for handling PTP pins used for external
clock source.

Signed-off-by: Piotr Kwapulinski <piotr.kwapulinski@intel.com>
Signed-off-by: Jiaqi Min <jiaqix.min@intel.com>
Acked-by: Piotr Kwapulinski <piotr.kwapulinski@intel.com>
---
 drivers/net/i40e/base/i40e_register.h | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/net/i40e/base/i40e_register.h b/drivers/net/i40e/base/i40e_register.h
index 436f48efa..dffcc633c 100644
--- a/drivers/net/i40e/base/i40e_register.h
+++ b/drivers/net/i40e/base/i40e_register.h
@@ -2910,6 +2910,10 @@
 #define I40E_PRTTSYN_AUX_0_PULSEW_MASK   I40E_MASK(0xF, I40E_PRTTSYN_AUX_0_PULSEW_SHIFT)
 #define I40E_PRTTSYN_AUX_0_EVNTLVL_SHIFT 16
 #define I40E_PRTTSYN_AUX_0_EVNTLVL_MASK  I40E_MASK(0x3, I40E_PRTTSYN_AUX_0_EVNTLVL_SHIFT)
+#define I40E_PRTTSYN_AUX_0_PTPFLAG_SHIFT 17
+#define I40E_PRTTSYN_AUX_0_PTPFLAG_MASK \
+		I40E_MASK(0x1, I40E_PRTTSYN_AUX_0_PTPFLAG_SHIFT)
+#define I40E_PRTTSYN_AUX_0_PTP_OUT_SYNC_CLK_IO 0xF
 #define I40E_PRTTSYN_AUX_1(_i)               (0x001E42E0 + ((_i) * 32)) /* _i=0...1 */ /* Reset: GLOBR */
 #define I40E_PRTTSYN_AUX_1_MAX_INDEX         1
 #define I40E_PRTTSYN_AUX_1_INSTNT_SHIFT      0
-- 
2.17.1


^ permalink raw reply	[flat|nested] 14+ messages in thread

* [dpdk-dev] [PATCH v2 4/4] net/i40e/base: update version
  2020-04-08 10:05 ` [dpdk-dev] [PATCH v2 0/4] " Jiaqi Min
                     ` (2 preceding siblings ...)
  2020-04-08 10:05   ` [dpdk-dev] [PATCH v2 3/4] net/i40e/base: add constants for PTP pins Jiaqi Min
@ 2020-04-08 10:05   ` Jiaqi Min
  2020-04-09  5:18   ` [dpdk-dev] [PATCH v2 0/4] update i40e base code Xing, Beilei
  2020-04-09  5:24   ` Ye Xiaolong
  5 siblings, 0 replies; 14+ messages in thread
From: Jiaqi Min @ 2020-04-08 10:05 UTC (permalink / raw)
  To: dev; +Cc: Jiaqi Min

Update share code release version in readme.

Signed-off-by: Jiaqi Min <jiaqix.min@intel.com>
---
 drivers/net/i40e/base/README | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/i40e/base/README b/drivers/net/i40e/base/README
index 8a5339cff..e7b39b4d1 100644
--- a/drivers/net/i40e/base/README
+++ b/drivers/net/i40e/base/README
@@ -6,7 +6,7 @@ Intel® I40E driver
 ==================
 
 This directory contains source code of FreeBSD i40e driver of version
-cid-i40e.2018.09.13.tar.gz released by the team which develops
+cid-i40e.2020.03.04.tar.gz released by the team which develops
 basic drivers for any i40e NIC. The directory of base/ contains the
 original source package.
 This driver is valid for the product(s) listed below
-- 
2.17.1


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [dpdk-dev] [PATCH v2 3/4] net/i40e/base: add constants for PTP pins
  2020-04-08 10:05   ` [dpdk-dev] [PATCH v2 3/4] net/i40e/base: add constants for PTP pins Jiaqi Min
@ 2020-04-08 10:22     ` Kwapulinski, Piotr
  0 siblings, 0 replies; 14+ messages in thread
From: Kwapulinski, Piotr @ 2020-04-08 10:22 UTC (permalink / raw)
  To: Min, JiaqiX, dev

ACK

-----Original Message-----
From: Min, JiaqiX <jiaqix.min@intel.com> 
Sent: Wednesday, April 8, 2020 12:05 PM
To: dev@dpdk.org
Cc: Min, JiaqiX <jiaqix.min@intel.com>; Kwapulinski, Piotr <piotr.kwapulinski@intel.com>
Subject: [PATCH v2 3/4] net/i40e/base: add constants for PTP pins

Introduce constants for handling PTP pins used for external clock source.

Signed-off-by: Piotr Kwapulinski <piotr.kwapulinski@intel.com>
Signed-off-by: Jiaqi Min <jiaqix.min@intel.com>
Acked-by: Piotr Kwapulinski <piotr.kwapulinski@intel.com>
---
 drivers/net/i40e/base/i40e_register.h | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/net/i40e/base/i40e_register.h b/drivers/net/i40e/base/i40e_register.h
index 436f48efa..dffcc633c 100644
--- a/drivers/net/i40e/base/i40e_register.h
+++ b/drivers/net/i40e/base/i40e_register.h
@@ -2910,6 +2910,10 @@
 #define I40E_PRTTSYN_AUX_0_PULSEW_MASK   I40E_MASK(0xF, I40E_PRTTSYN_AUX_0_PULSEW_SHIFT)
 #define I40E_PRTTSYN_AUX_0_EVNTLVL_SHIFT 16  #define I40E_PRTTSYN_AUX_0_EVNTLVL_MASK  I40E_MASK(0x3, I40E_PRTTSYN_AUX_0_EVNTLVL_SHIFT)
+#define I40E_PRTTSYN_AUX_0_PTPFLAG_SHIFT 17 #define 
+I40E_PRTTSYN_AUX_0_PTPFLAG_MASK \
+		I40E_MASK(0x1, I40E_PRTTSYN_AUX_0_PTPFLAG_SHIFT) #define 
+I40E_PRTTSYN_AUX_0_PTP_OUT_SYNC_CLK_IO 0xF
 #define I40E_PRTTSYN_AUX_1(_i)               (0x001E42E0 + ((_i) * 32)) /* _i=0...1 */ /* Reset: GLOBR */
 #define I40E_PRTTSYN_AUX_1_MAX_INDEX         1
 #define I40E_PRTTSYN_AUX_1_INSTNT_SHIFT      0
--
2.17.1

--------------------------------------------------------------------

Intel Technology Poland sp. z o.o.
ul. Slowackiego 173 | 80-298 Gdansk | Sad Rejonowy Gdansk Polnoc | VII Wydzial Gospodarczy Krajowego Rejestru Sadowego - KRS 101882 | NIP 957-07-52-316 | Kapital zakladowy 200.000 PLN.

Ta wiadomosc wraz z zalacznikami jest przeznaczona dla okreslonego adresata i moze zawierac informacje poufne. W razie przypadkowego otrzymania tej wiadomosci, prosimy o powiadomienie nadawcy oraz trwale jej usuniecie; jakiekolwiek
przegladanie lub rozpowszechnianie jest zabronione.
This e-mail and any attachments may contain confidential material for the sole use of the intended recipient(s). If you are not the intended recipient, please contact the sender and delete all copies; any review or distribution by
others is strictly prohibited.


^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [dpdk-dev] [PATCH v2 0/4] update i40e base code
  2020-04-08 10:05 ` [dpdk-dev] [PATCH v2 0/4] " Jiaqi Min
                     ` (3 preceding siblings ...)
  2020-04-08 10:05   ` [dpdk-dev] [PATCH v2 4/4] net/i40e/base: update version Jiaqi Min
@ 2020-04-09  5:18   ` Xing, Beilei
  2020-04-09  5:24   ` Ye Xiaolong
  5 siblings, 0 replies; 14+ messages in thread
From: Xing, Beilei @ 2020-04-09  5:18 UTC (permalink / raw)
  To: Min, JiaqiX, dev; +Cc: Min, JiaqiX



> -----Original Message-----
> From: dev <dev-bounces@dpdk.org> On Behalf Of Jiaqi Min
> Sent: Wednesday, April 8, 2020 6:05 PM
> To: dev@dpdk.org
> Cc: Min, JiaqiX <jiaqix.min@intel.com>
> Subject: [dpdk-dev] [PATCH v2 0/4] update i40e base code
> 
> The main changes include:
> 
> * Update X722/X710 FW API version to 1.10.
> * New device ID introduced for V710-T*L 5G.
> * Add constants for PTP pins.
> * Update version in README.
> ---
> v2 changes:
> * Updated version in README
> 
> Jiaqi Min (4):
>   net/i40e/base: update X722/X710 FW API version to 1.10
>   net/i40e/base: new device ID introduced for V710-TL 5G
>   net/i40e/base: add constants for PTP pins
>   net/i40e/base: update version
> 
>  drivers/net/i40e/base/README            |  2 +-
>  drivers/net/i40e/base/i40e_adminq_cmd.h |  4 ++--
>  drivers/net/i40e/base/i40e_common.c     | 12 +++++++++---
>  drivers/net/i40e/base/i40e_devids.h     |  4 +++-
>  drivers/net/i40e/base/i40e_register.h   |  4 ++++
>  drivers/net/i40e/i40e_ethdev.c          |  1 +
>  6 files changed, 20 insertions(+), 7 deletions(-)
> 
> --
> 2.17.1

Acked-by: Beilei Xing <beilei.xing@intel.com>

^ permalink raw reply	[flat|nested] 14+ messages in thread

* Re: [dpdk-dev] [PATCH v2 0/4] update i40e base code
  2020-04-08 10:05 ` [dpdk-dev] [PATCH v2 0/4] " Jiaqi Min
                     ` (4 preceding siblings ...)
  2020-04-09  5:18   ` [dpdk-dev] [PATCH v2 0/4] update i40e base code Xing, Beilei
@ 2020-04-09  5:24   ` Ye Xiaolong
  5 siblings, 0 replies; 14+ messages in thread
From: Ye Xiaolong @ 2020-04-09  5:24 UTC (permalink / raw)
  To: Jiaqi Min; +Cc: dev

On 04/08, Jiaqi Min wrote:
>The main changes include:
>
>* Update X722/X710 FW API version to 1.10.
>* New device ID introduced for V710-T*L 5G.
>* Add constants for PTP pins.
>* Update version in README.
>---
>v2 changes:
>* Updated version in README
>
>Jiaqi Min (4):
>  net/i40e/base: update X722/X710 FW API version to 1.10
>  net/i40e/base: new device ID introduced for V710-TL 5G
>  net/i40e/base: add constants for PTP pins
>  net/i40e/base: update version
>
> drivers/net/i40e/base/README            |  2 +-
> drivers/net/i40e/base/i40e_adminq_cmd.h |  4 ++--
> drivers/net/i40e/base/i40e_common.c     | 12 +++++++++---
> drivers/net/i40e/base/i40e_devids.h     |  4 +++-
> drivers/net/i40e/base/i40e_register.h   |  4 ++++
> drivers/net/i40e/i40e_ethdev.c          |  1 +
> 6 files changed, 20 insertions(+), 7 deletions(-)
>
>-- 
>2.17.1
>

Acked-by: Xiaolong Ye <xiaolong.ye@intel.com>

Applied to dpdk-next-net-intel, Thanks.

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2020-04-10 12:45 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-03-25  3:23 [dpdk-dev] [PATCH 0/3] update i40e base code Jiaqi Min
2020-03-25  3:23 ` [dpdk-dev] [PATCH 1/3] net/i40e/base: update X722/X710 FW API version to 1.10 Jiaqi Min
2020-03-25  3:23 ` [dpdk-dev] [PATCH 2/3] net/i40e/base: new device ID introduced for V710-TL 5G Jiaqi Min
2020-03-25  3:23 ` [dpdk-dev] [PATCH 3/3] net/i40e/base: add constants for PTP pins Jiaqi Min
2020-03-25 10:03   ` Kwapulinski, Piotr
2020-04-08  7:33 ` [dpdk-dev] [PATCH 0/3] update i40e base code Xing, Beilei
2020-04-08 10:05 ` [dpdk-dev] [PATCH v2 0/4] " Jiaqi Min
2020-04-08 10:05   ` [dpdk-dev] [PATCH v2 1/4] net/i40e/base: update X722/X710 FW API version to 1.10 Jiaqi Min
2020-04-08 10:05   ` [dpdk-dev] [PATCH v2 2/4] net/i40e/base: new device ID introduced for V710-TL 5G Jiaqi Min
2020-04-08 10:05   ` [dpdk-dev] [PATCH v2 3/4] net/i40e/base: add constants for PTP pins Jiaqi Min
2020-04-08 10:22     ` Kwapulinski, Piotr
2020-04-08 10:05   ` [dpdk-dev] [PATCH v2 4/4] net/i40e/base: update version Jiaqi Min
2020-04-09  5:18   ` [dpdk-dev] [PATCH v2 0/4] update i40e base code Xing, Beilei
2020-04-09  5:24   ` Ye Xiaolong

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).