netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net-next 0/2] qed* enhancements.
@ 2019-03-20  7:26 Sudarsana Reddy Kalluru
  2019-03-20  7:26 ` [PATCH net-next 1/2] qede: Populate mbi version in ethtool driver query data Sudarsana Reddy Kalluru
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Sudarsana Reddy Kalluru @ 2019-03-20  7:26 UTC (permalink / raw)
  To: davem; +Cc: netdev, aelior, mkalderon

The patch series adds couple of enhancements for qed/qede drivers.
Please consider applying it to 'net-next' tree.

Sudarsana Reddy Kalluru (2):
  qede: Populate mbi version in ethtool driver query data.
  qed: Define new MF bit for no_vlan config

 drivers/net/ethernet/qlogic/qed/qed.h           |  3 +++
 drivers/net/ethernet/qlogic/qed/qed_dcbx.c      |  4 +---
 drivers/net/ethernet/qlogic/qed/qed_dev.c       |  6 ++++--
 drivers/net/ethernet/qlogic/qede/qede_ethtool.c | 24 +++++++++++++++++++-----
 4 files changed, 27 insertions(+), 10 deletions(-)

-- 
1.8.3.1


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

* [PATCH net-next 1/2] qede: Populate mbi version in ethtool driver query data.
  2019-03-20  7:26 [PATCH net-next 0/2] qed* enhancements Sudarsana Reddy Kalluru
@ 2019-03-20  7:26 ` Sudarsana Reddy Kalluru
  2019-03-20  7:26 ` [PATCH net-next 2/2] qed: Define new MF bit for no_vlan config Sudarsana Reddy Kalluru
  2019-03-20 18:13 ` [PATCH net-next 0/2] qed* enhancements David Miller
  2 siblings, 0 replies; 6+ messages in thread
From: Sudarsana Reddy Kalluru @ 2019-03-20  7:26 UTC (permalink / raw)
  To: davem; +Cc: netdev, aelior, mkalderon

The patch adds support to display MBI image version in 'ethtool -i' output.

Signed-off-by: Sudarsana Reddy Kalluru <skalluru@marvell.com>
Signed-off-by: Ariel Elior <aelior@marvell.com>
Signed-off-by: Michal Kalderon <mkalderon@marvell.com>
---
 drivers/net/ethernet/qlogic/qede/qede_ethtool.c | 24 +++++++++++++++++++-----
 1 file changed, 19 insertions(+), 5 deletions(-)

diff --git a/drivers/net/ethernet/qlogic/qede/qede_ethtool.c b/drivers/net/ethernet/qlogic/qede/qede_ethtool.c
index c623808..8447a8c 100644
--- a/drivers/net/ethernet/qlogic/qede/qede_ethtool.c
+++ b/drivers/net/ethernet/qlogic/qede/qede_ethtool.c
@@ -652,9 +652,9 @@ static void qede_get_drvinfo(struct net_device *ndev,
 {
 	char mfw[ETHTOOL_FWVERS_LEN], storm[ETHTOOL_FWVERS_LEN];
 	struct qede_dev *edev = netdev_priv(ndev);
+	char mbi[ETHTOOL_FWVERS_LEN];
 
 	strlcpy(info->driver, "qede", sizeof(info->driver));
-	strlcpy(info->version, DRV_MODULE_VERSION, sizeof(info->version));
 
 	snprintf(storm, ETHTOOL_FWVERS_LEN, "%d.%d.%d.%d",
 		 edev->dev_info.common.fw_major,
@@ -668,13 +668,27 @@ static void qede_get_drvinfo(struct net_device *ndev,
 		 (edev->dev_info.common.mfw_rev >> 8) & 0xFF,
 		 edev->dev_info.common.mfw_rev & 0xFF);
 
-	if ((strlen(storm) + strlen(mfw) + strlen("mfw storm  ")) <
-	    sizeof(info->fw_version)) {
+	if ((strlen(storm) + strlen(DRV_MODULE_VERSION) + strlen("[storm]  ")) <
+	    sizeof(info->version))
+		snprintf(info->version, sizeof(info->version),
+			 "%s [storm %s]", DRV_MODULE_VERSION, storm);
+	else
+		snprintf(info->version, sizeof(info->version),
+			 "%s %s", DRV_MODULE_VERSION, storm);
+
+	if (edev->dev_info.common.mbi_version) {
+		snprintf(mbi, ETHTOOL_FWVERS_LEN, "%d.%d.%d",
+			 (edev->dev_info.common.mbi_version &
+			  QED_MBI_VERSION_2_MASK) >> QED_MBI_VERSION_2_OFFSET,
+			 (edev->dev_info.common.mbi_version &
+			  QED_MBI_VERSION_1_MASK) >> QED_MBI_VERSION_1_OFFSET,
+			 (edev->dev_info.common.mbi_version &
+			  QED_MBI_VERSION_0_MASK) >> QED_MBI_VERSION_0_OFFSET);
 		snprintf(info->fw_version, sizeof(info->fw_version),
-			 "mfw %s storm %s", mfw, storm);
+			 "mbi %s [mfw %s]", mbi, mfw);
 	} else {
 		snprintf(info->fw_version, sizeof(info->fw_version),
-			 "%s %s", mfw, storm);
+			 "mfw %s", mfw);
 	}
 
 	strlcpy(info->bus_info, pci_name(edev->pdev), sizeof(info->bus_info));
-- 
1.8.3.1


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

* [PATCH net-next 2/2] qed: Define new MF bit for no_vlan config
  2019-03-20  7:26 [PATCH net-next 0/2] qed* enhancements Sudarsana Reddy Kalluru
  2019-03-20  7:26 ` [PATCH net-next 1/2] qede: Populate mbi version in ethtool driver query data Sudarsana Reddy Kalluru
@ 2019-03-20  7:26 ` Sudarsana Reddy Kalluru
  2019-03-20 18:13 ` [PATCH net-next 0/2] qed* enhancements David Miller
  2 siblings, 0 replies; 6+ messages in thread
From: Sudarsana Reddy Kalluru @ 2019-03-20  7:26 UTC (permalink / raw)
  To: davem; +Cc: netdev, aelior, mkalderon

The patch introduces a new Multi-Function bit for cases where firmware
shouldn't perform the insertion of vlan-0 tag. The new bit is defined to
abstract the implementation from the actual MF mode.

Signed-off-by: Sudarsana Reddy Kalluru <skalluru@marvell.com>
Signed-off-by: Ariel Elior <aelior@marvell.com>
Signed-off-by: Michal Kalderon <mkalderon@marvell.com>
---
 drivers/net/ethernet/qlogic/qed/qed.h      | 3 +++
 drivers/net/ethernet/qlogic/qed/qed_dcbx.c | 4 +---
 drivers/net/ethernet/qlogic/qed/qed_dev.c  | 6 ++++--
 3 files changed, 8 insertions(+), 5 deletions(-)

diff --git a/drivers/net/ethernet/qlogic/qed/qed.h b/drivers/net/ethernet/qlogic/qed/qed.h
index 43a57ec..512186a 100644
--- a/drivers/net/ethernet/qlogic/qed/qed.h
+++ b/drivers/net/ethernet/qlogic/qed/qed.h
@@ -492,6 +492,9 @@ enum qed_mf_mode_bit {
 
 	/* Allow DSCP to TC mapping */
 	QED_MF_DSCP_TO_TC_MAP,
+
+	/* Do not insert a vlan tag with id 0 */
+	QED_MF_DONT_ADD_VLAN0_TAG,
 };
 
 enum qed_ufp_mode {
diff --git a/drivers/net/ethernet/qlogic/qed/qed_dcbx.c b/drivers/net/ethernet/qlogic/qed/qed_dcbx.c
index 69966df..5c6a276 100644
--- a/drivers/net/ethernet/qlogic/qed/qed_dcbx.c
+++ b/drivers/net/ethernet/qlogic/qed/qed_dcbx.c
@@ -204,9 +204,7 @@ static bool qed_dcbx_roce_v2_tlv(u32 app_info_bitmap, u16 proto_id, bool ieee)
 	else
 		p_data->arr[type].update = DONT_UPDATE_DCB_DSCP;
 
-	/* Do not add vlan tag 0 when DCB is enabled and port in UFP/OV mode */
-	if ((test_bit(QED_MF_8021Q_TAGGING, &p_hwfn->cdev->mf_bits) ||
-	     test_bit(QED_MF_8021AD_TAGGING, &p_hwfn->cdev->mf_bits)))
+	if (test_bit(QED_MF_DONT_ADD_VLAN0_TAG, &p_hwfn->cdev->mf_bits))
 		p_data->arr[type].dont_add_vlan0 = true;
 
 	/* QM reconf data */
diff --git a/drivers/net/ethernet/qlogic/qed/qed_dev.c b/drivers/net/ethernet/qlogic/qed/qed_dev.c
index 9df8c4b..1955737 100644
--- a/drivers/net/ethernet/qlogic/qed/qed_dev.c
+++ b/drivers/net/ethernet/qlogic/qed/qed_dev.c
@@ -3157,12 +3157,14 @@ static int qed_hw_get_nvm_info(struct qed_hwfn *p_hwfn, struct qed_ptt *p_ptt)
 			cdev->mf_bits = BIT(QED_MF_OVLAN_CLSS) |
 					BIT(QED_MF_LLH_PROTO_CLSS) |
 					BIT(QED_MF_UFP_SPECIFIC) |
-					BIT(QED_MF_8021Q_TAGGING);
+					BIT(QED_MF_8021Q_TAGGING) |
+					BIT(QED_MF_DONT_ADD_VLAN0_TAG);
 			break;
 		case NVM_CFG1_GLOB_MF_MODE_BD:
 			cdev->mf_bits = BIT(QED_MF_OVLAN_CLSS) |
 					BIT(QED_MF_LLH_PROTO_CLSS) |
-					BIT(QED_MF_8021AD_TAGGING);
+					BIT(QED_MF_8021AD_TAGGING) |
+					BIT(QED_MF_DONT_ADD_VLAN0_TAG);
 			break;
 		case NVM_CFG1_GLOB_MF_MODE_NPAR1_0:
 			cdev->mf_bits = BIT(QED_MF_LLH_MAC_CLSS) |
-- 
1.8.3.1


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

* Re: [PATCH net-next 0/2] qed* enhancements.
  2019-03-20  7:26 [PATCH net-next 0/2] qed* enhancements Sudarsana Reddy Kalluru
  2019-03-20  7:26 ` [PATCH net-next 1/2] qede: Populate mbi version in ethtool driver query data Sudarsana Reddy Kalluru
  2019-03-20  7:26 ` [PATCH net-next 2/2] qed: Define new MF bit for no_vlan config Sudarsana Reddy Kalluru
@ 2019-03-20 18:13 ` David Miller
  2019-03-21  4:53   ` Sudarsana Reddy Kalluru
  2 siblings, 1 reply; 6+ messages in thread
From: David Miller @ 2019-03-20 18:13 UTC (permalink / raw)
  To: skalluru; +Cc: netdev, aelior, mkalderon

From: Sudarsana Reddy Kalluru <skalluru@marvell.com>
Date: Wed, 20 Mar 2019 00:26:24 -0700

> The patch series adds couple of enhancements for qed/qede drivers.
> Please consider applying it to 'net-next' tree.
> 
> Sudarsana Reddy Kalluru (2):
>   qede: Populate mbi version in ethtool driver query data.
>   qed: Define new MF bit for no_vlan config

Series appied.

I don't know how big your MBI version strings are, but if you are printing
now both it and the MFW versions into that one string you might hit the
ETHTOOL_FWVERS_LEN limit often.

Just a thought...

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

* RE: [PATCH net-next 0/2] qed* enhancements.
  2019-03-20 18:13 ` [PATCH net-next 0/2] qed* enhancements David Miller
@ 2019-03-21  4:53   ` Sudarsana Reddy Kalluru
  0 siblings, 0 replies; 6+ messages in thread
From: Sudarsana Reddy Kalluru @ 2019-03-21  4:53 UTC (permalink / raw)
  To: David Miller; +Cc: netdev, Ariel Elior, Michal Kalderon


> -----Original Message-----
> From: David Miller <davem@davemloft.net>
> Sent: Wednesday, March 20, 2019 11:44 PM
> To: Sudarsana Reddy Kalluru <skalluru@marvell.com>
> Cc: netdev@vger.kernel.org; Ariel Elior <aelior@marvell.com>; Michal
> Kalderon <mkalderon@marvell.com>
> Subject: Re: [PATCH net-next 0/2] qed* enhancements.
> 
> From: Sudarsana Reddy Kalluru <skalluru@marvell.com>
> Date: Wed, 20 Mar 2019 00:26:24 -0700
> 
> > The patch series adds couple of enhancements for qed/qede drivers.
> > Please consider applying it to 'net-next' tree.
> >
> > Sudarsana Reddy Kalluru (2):
> >   qede: Populate mbi version in ethtool driver query data.
> >   qed: Define new MF bit for no_vlan config
> 
> Series appied.
> 
> I don't know how big your MBI version strings are, but if you are printing now
> both it and the MFW versions into that one string you might hit the
> ETHTOOL_FWVERS_LEN limit often.
> 
> Just a thought...

Dave,
   Thanks for your comments and accepting the changes. Size of mbi version string is 7 bytes and the mfw is 10 bytes. Hence the total string size including the spaces would be under ETHTOOL_FWVERS_LEN.

Thanks,
Sudarsana

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

* [PATCH net-next 2/2] qed: Define new MF bit for no_vlan config
  2019-03-11 12:37 Sudarsana Reddy Kalluru
@ 2019-03-11 12:37 ` Sudarsana Reddy Kalluru
  0 siblings, 0 replies; 6+ messages in thread
From: Sudarsana Reddy Kalluru @ 2019-03-11 12:37 UTC (permalink / raw)
  To: davem; +Cc: netdev, aelior, mkalderon

The patch introduces a new Multi-Function bit for cases where firmware
shouldn't perform the insertion of vlan-0 tag. The new bit is defined to
abstract the implementation from the actual MF mode.

Signed-off-by: Sudarsana Reddy Kalluru <skalluru@marvell.com>
Signed-off-by: Ariel Elior <aelior@marvell.com>
Signed-off-by: Michal Kalderon <mkalderon@marvell.com>
---
 drivers/net/ethernet/qlogic/qed/qed.h      | 3 +++
 drivers/net/ethernet/qlogic/qed/qed_dcbx.c | 4 +---
 drivers/net/ethernet/qlogic/qed/qed_dev.c  | 6 ++++--
 3 files changed, 8 insertions(+), 5 deletions(-)

diff --git a/drivers/net/ethernet/qlogic/qed/qed.h b/drivers/net/ethernet/qlogic/qed/qed.h
index 43a57ec..512186a 100644
--- a/drivers/net/ethernet/qlogic/qed/qed.h
+++ b/drivers/net/ethernet/qlogic/qed/qed.h
@@ -492,6 +492,9 @@ enum qed_mf_mode_bit {
 
 	/* Allow DSCP to TC mapping */
 	QED_MF_DSCP_TO_TC_MAP,
+
+	/* Do not insert a vlan tag with id 0 */
+	QED_MF_DONT_ADD_VLAN0_TAG,
 };
 
 enum qed_ufp_mode {
diff --git a/drivers/net/ethernet/qlogic/qed/qed_dcbx.c b/drivers/net/ethernet/qlogic/qed/qed_dcbx.c
index 69966df..5c6a276 100644
--- a/drivers/net/ethernet/qlogic/qed/qed_dcbx.c
+++ b/drivers/net/ethernet/qlogic/qed/qed_dcbx.c
@@ -204,9 +204,7 @@ static bool qed_dcbx_roce_v2_tlv(u32 app_info_bitmap, u16 proto_id, bool ieee)
 	else
 		p_data->arr[type].update = DONT_UPDATE_DCB_DSCP;
 
-	/* Do not add vlan tag 0 when DCB is enabled and port in UFP/OV mode */
-	if ((test_bit(QED_MF_8021Q_TAGGING, &p_hwfn->cdev->mf_bits) ||
-	     test_bit(QED_MF_8021AD_TAGGING, &p_hwfn->cdev->mf_bits)))
+	if (test_bit(QED_MF_DONT_ADD_VLAN0_TAG, &p_hwfn->cdev->mf_bits))
 		p_data->arr[type].dont_add_vlan0 = true;
 
 	/* QM reconf data */
diff --git a/drivers/net/ethernet/qlogic/qed/qed_dev.c b/drivers/net/ethernet/qlogic/qed/qed_dev.c
index 9df8c4b..1955737 100644
--- a/drivers/net/ethernet/qlogic/qed/qed_dev.c
+++ b/drivers/net/ethernet/qlogic/qed/qed_dev.c
@@ -3157,12 +3157,14 @@ static int qed_hw_get_nvm_info(struct qed_hwfn *p_hwfn, struct qed_ptt *p_ptt)
 			cdev->mf_bits = BIT(QED_MF_OVLAN_CLSS) |
 					BIT(QED_MF_LLH_PROTO_CLSS) |
 					BIT(QED_MF_UFP_SPECIFIC) |
-					BIT(QED_MF_8021Q_TAGGING);
+					BIT(QED_MF_8021Q_TAGGING) |
+					BIT(QED_MF_DONT_ADD_VLAN0_TAG);
 			break;
 		case NVM_CFG1_GLOB_MF_MODE_BD:
 			cdev->mf_bits = BIT(QED_MF_OVLAN_CLSS) |
 					BIT(QED_MF_LLH_PROTO_CLSS) |
-					BIT(QED_MF_8021AD_TAGGING);
+					BIT(QED_MF_8021AD_TAGGING) |
+					BIT(QED_MF_DONT_ADD_VLAN0_TAG);
 			break;
 		case NVM_CFG1_GLOB_MF_MODE_NPAR1_0:
 			cdev->mf_bits = BIT(QED_MF_LLH_MAC_CLSS) |
-- 
1.8.3.1


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

end of thread, other threads:[~2019-03-21  4:53 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-03-20  7:26 [PATCH net-next 0/2] qed* enhancements Sudarsana Reddy Kalluru
2019-03-20  7:26 ` [PATCH net-next 1/2] qede: Populate mbi version in ethtool driver query data Sudarsana Reddy Kalluru
2019-03-20  7:26 ` [PATCH net-next 2/2] qed: Define new MF bit for no_vlan config Sudarsana Reddy Kalluru
2019-03-20 18:13 ` [PATCH net-next 0/2] qed* enhancements David Miller
2019-03-21  4:53   ` Sudarsana Reddy Kalluru
  -- strict thread matches above, loose matches on Subject: below --
2019-03-11 12:37 Sudarsana Reddy Kalluru
2019-03-11 12:37 ` [PATCH net-next 2/2] qed: Define new MF bit for no_vlan config Sudarsana Reddy Kalluru

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