netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net-next 0/2] Tx coe sw fallback for unsupported queues
@ 2023-08-10 15:03 Rohan G Thomas
  2023-08-10 15:03 ` [PATCH net-next 1/2] dt-bindings: net: snps,dwmac: Tx queues with coe Rohan G Thomas
                   ` (2 more replies)
  0 siblings, 3 replies; 11+ messages in thread
From: Rohan G Thomas @ 2023-08-10 15:03 UTC (permalink / raw)
  To: David S . Miller, Alexandre Torgue, Jose Abreu, Eric Dumazet,
	Jakub Kicinski, Paolo Abeni, Maxime Coquelin, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley
  Cc: netdev, linux-stm32, linux-arm-kernel, linux-kernel,
	Rohan G Thomas

Hi,
Some DWMAC IPs support tx coe only for few initial tx queues, starting 
from tx queue 0. This patchset adds support for tx coe sw fallback for 
those queue that doesn't support tx coe. Also, add binding for
snps,tx-queues-with-coe property.

Rohan G Thomas (2):
  dt-bindings: net: snps,dwmac: Tx queues with coe
  net: stmmac: Tx coe sw fallback

 .../devicetree/bindings/net/snps,dwmac.yaml   |  3 +++
 drivers/net/ethernet/stmicro/stmmac/stmmac.h  |  2 ++
 .../net/ethernet/stmicro/stmmac/stmmac_main.c | 19 +++++++++++++++++++
 .../ethernet/stmicro/stmmac/stmmac_platform.c |  4 ++++
 include/linux/stmmac.h                        |  1 +
 5 files changed, 29 insertions(+)

-- 
2.26.2


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

* [PATCH net-next 1/2] dt-bindings: net: snps,dwmac: Tx queues with coe
  2023-08-10 15:03 [PATCH net-next 0/2] Tx coe sw fallback for unsupported queues Rohan G Thomas
@ 2023-08-10 15:03 ` Rohan G Thomas
  2023-08-10 15:39   ` Conor Dooley
  2023-08-14  7:30   ` Krzysztof Kozlowski
  2023-08-10 15:03 ` [PATCH net-next 2/2] net: stmmac: Tx coe sw fallback Rohan G Thomas
  2023-08-11 19:00 ` [PATCH net-next v2 0/2] Tx coe sw fallback for unsupported queues Rohan G Thomas
  2 siblings, 2 replies; 11+ messages in thread
From: Rohan G Thomas @ 2023-08-10 15:03 UTC (permalink / raw)
  To: David S . Miller, Alexandre Torgue, Jose Abreu, Eric Dumazet,
	Jakub Kicinski, Paolo Abeni, Maxime Coquelin, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley
  Cc: netdev, linux-stm32, linux-arm-kernel, linux-kernel,
	Rohan G Thomas

Add dt-bindings for the number of tx queues with coe support. Some
dwmac IPs support tx queues only for few initial tx queues, starting
from tx queue 0.

Signed-off-by: Rohan G Thomas <rohan.g.thomas@intel.com>
---
 Documentation/devicetree/bindings/net/snps,dwmac.yaml | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/Documentation/devicetree/bindings/net/snps,dwmac.yaml b/Documentation/devicetree/bindings/net/snps,dwmac.yaml
index ddf9522a5dc2..ad26a32e0557 100644
--- a/Documentation/devicetree/bindings/net/snps,dwmac.yaml
+++ b/Documentation/devicetree/bindings/net/snps,dwmac.yaml
@@ -313,6 +313,9 @@ properties:
       snps,tx-queues-to-use:
         $ref: /schemas/types.yaml#/definitions/uint32
         description: number of TX queues to be used in the driver
+      snps,tx-queues-with-coe:
+        $ref: /schemas/types.yaml#/definitions/uint32
+        description: number of TX queues support TX checksum offloading
       snps,tx-sched-wrr:
         type: boolean
         description: Weighted Round Robin
-- 
2.26.2


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

* [PATCH net-next 2/2] net: stmmac: Tx coe sw fallback
  2023-08-10 15:03 [PATCH net-next 0/2] Tx coe sw fallback for unsupported queues Rohan G Thomas
  2023-08-10 15:03 ` [PATCH net-next 1/2] dt-bindings: net: snps,dwmac: Tx queues with coe Rohan G Thomas
@ 2023-08-10 15:03 ` Rohan G Thomas
  2023-08-11 19:00 ` [PATCH net-next v2 0/2] Tx coe sw fallback for unsupported queues Rohan G Thomas
  2 siblings, 0 replies; 11+ messages in thread
From: Rohan G Thomas @ 2023-08-10 15:03 UTC (permalink / raw)
  To: David S . Miller, Alexandre Torgue, Jose Abreu, Eric Dumazet,
	Jakub Kicinski, Paolo Abeni, Maxime Coquelin, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley
  Cc: netdev, linux-stm32, linux-arm-kernel, linux-kernel,
	Rohan G Thomas

Add sw fallback of tx checksum calculation for those tx queues that
doesn't support  tx checksum offloading. Because, some DWMAC IPs
support tx checksum offloading  only for few initial tx queues,
starting from tx queue 0.

Signed-off-by: Rohan G Thomas <rohan.g.thomas@intel.com>
---
 drivers/net/ethernet/stmicro/stmmac/stmmac.h  |  2 ++
 .../net/ethernet/stmicro/stmmac/stmmac_main.c | 19 +++++++++++++++++++
 .../ethernet/stmicro/stmmac/stmmac_platform.c |  4 ++++
 include/linux/stmmac.h                        |  1 +
 4 files changed, 26 insertions(+)

diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac.h b/drivers/net/ethernet/stmicro/stmmac/stmmac.h
index 3401e888a9f6..f526bcaaaf64 100644
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac.h
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac.h
@@ -219,6 +219,8 @@ struct stmmac_priv {
 	int hwts_tx_en;
 	bool tx_path_in_lpi_mode;
 	bool tso;
+	bool tx_q_coe_lmt;
+	u32 tx_q_with_coe;
 	int sph;
 	int sph_cap;
 	u32 sarc_type;
diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
index fcab363d8dfa..e095a9bd93b1 100644
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
@@ -4409,6 +4409,17 @@ static netdev_tx_t stmmac_xmit(struct sk_buff *skb, struct net_device *dev)
 	WARN_ON(tx_q->tx_skbuff[first_entry]);
 
 	csum_insertion = (skb->ip_summed == CHECKSUM_PARTIAL);
+	/* Some DWMAC IPs support tx coe only for a few initial tx queues,
+	 * starting from tx queue 0. So checksum offloading for those queues
+	 * that doesn't support tx coe need to fallback to software checksum
+	 * calculation.
+	 */
+	if (csum_insertion && priv->tx_q_coe_lmt &&
+	    queue >= priv->tx_q_with_coe) {
+		if (unlikely(skb_checksum_help(skb)))
+			goto dma_map_err;
+		csum_insertion = !csum_insertion;
+	}
 
 	if (likely(priv->extend_desc))
 		desc = (struct dma_desc *)(tx_q->dma_etx + entry);
@@ -7386,6 +7397,14 @@ int stmmac_dvr_probe(struct device *device,
 		dev_info(priv->device, "SPH feature enabled\n");
 	}
 
+	if (priv->plat->tx_coe &&
+	    priv->plat->tx_queues_with_coe < priv->plat->tx_queues_to_use) {
+		priv->tx_q_coe_lmt = true;
+		priv->tx_q_with_coe = priv->plat->tx_queues_with_coe;
+		dev_info(priv->device, "TX COE limited to %u tx queues\n",
+			 priv->tx_q_with_coe);
+	}
+
 	/* Ideally our host DMA address width is the same as for the
 	 * device. However, it may differ and then we have to use our
 	 * host DMA width for allocation and the device DMA width for
diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
index be8e79c7aa34..0138b7c9c7ab 100644
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
@@ -225,6 +225,10 @@ static int stmmac_mtl_setup(struct platform_device *pdev,
 				 &plat->tx_queues_to_use))
 		plat->tx_queues_to_use = 1;
 
+	if (of_property_read_u32(tx_node, "snps,tx-queues-with-coe",
+				 &plat->tx_queues_with_coe))
+		plat->tx_queues_with_coe = plat->tx_queues_to_use;
+
 	if (of_property_read_bool(tx_node, "snps,tx-sched-wrr"))
 		plat->tx_sched_algorithm = MTL_TX_ALGORITHM_WRR;
 	else if (of_property_read_bool(tx_node, "snps,tx-sched-wfq"))
diff --git a/include/linux/stmmac.h b/include/linux/stmmac.h
index 652404c03944..795c10d19c1c 100644
--- a/include/linux/stmmac.h
+++ b/include/linux/stmmac.h
@@ -252,6 +252,7 @@ struct plat_stmmacenet_data {
 	u32 host_dma_width;
 	u32 rx_queues_to_use;
 	u32 tx_queues_to_use;
+	u32 tx_queues_with_coe;
 	u8 rx_sched_algorithm;
 	u8 tx_sched_algorithm;
 	struct stmmac_rxq_cfg rx_queues_cfg[MTL_MAX_RX_QUEUES];
-- 
2.26.2


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

* Re: [PATCH net-next 1/2] dt-bindings: net: snps,dwmac: Tx queues with coe
  2023-08-10 15:03 ` [PATCH net-next 1/2] dt-bindings: net: snps,dwmac: Tx queues with coe Rohan G Thomas
@ 2023-08-10 15:39   ` Conor Dooley
  2023-08-10 17:47     ` G Thomas, Rohan
  2023-08-14  7:30   ` Krzysztof Kozlowski
  1 sibling, 1 reply; 11+ messages in thread
From: Conor Dooley @ 2023-08-10 15:39 UTC (permalink / raw)
  To: Rohan G Thomas
  Cc: David S . Miller, Alexandre Torgue, Jose Abreu, Eric Dumazet,
	Jakub Kicinski, Paolo Abeni, Maxime Coquelin, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, netdev, linux-stm32,
	linux-arm-kernel, linux-kernel

[-- Attachment #1: Type: text/plain, Size: 1257 bytes --]

On Thu, Aug 10, 2023 at 11:03:27PM +0800, Rohan G Thomas wrote:
> Add dt-bindings for the number of tx queues with coe support. Some
> dwmac IPs support tx queues only for few initial tx queues, starting
> from tx queue 0.
> 
> Signed-off-by: Rohan G Thomas <rohan.g.thomas@intel.com>
> ---
>  Documentation/devicetree/bindings/net/snps,dwmac.yaml | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/net/snps,dwmac.yaml b/Documentation/devicetree/bindings/net/snps,dwmac.yaml
> index ddf9522a5dc2..ad26a32e0557 100644
> --- a/Documentation/devicetree/bindings/net/snps,dwmac.yaml
> +++ b/Documentation/devicetree/bindings/net/snps,dwmac.yaml
> @@ -313,6 +313,9 @@ properties:
>        snps,tx-queues-to-use:
>          $ref: /schemas/types.yaml#/definitions/uint32
>          description: number of TX queues to be used in the driver
> +      snps,tx-queues-with-coe:
> +        $ref: /schemas/types.yaml#/definitions/uint32
> +        description: number of TX queues support TX checksum offloading

Either you omitted a "ing" or a whole word from this description.

>        snps,tx-sched-wrr:
>          type: boolean
>          description: Weighted Round Robin
> -- 
> 2.26.2
> 

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]

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

* RE: [PATCH net-next 1/2] dt-bindings: net: snps,dwmac: Tx queues with coe
  2023-08-10 15:39   ` Conor Dooley
@ 2023-08-10 17:47     ` G Thomas, Rohan
  0 siblings, 0 replies; 11+ messages in thread
From: G Thomas, Rohan @ 2023-08-10 17:47 UTC (permalink / raw)
  To: Conor Dooley
  Cc: David S . Miller, Alexandre Torgue, Jose Abreu, Eric Dumazet,
	Jakub Kicinski, Paolo Abeni, Maxime Coquelin, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, netdev@vger.kernel.org,
	linux-stm32@st-md-mailman.stormreply.com,
	linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org

Dear Conor,

On Thu, Aug 10, 2023 at 11:03:27PM +0800, Rohan G Thomas wrote:
> > Add dt-bindings for the number of tx queues with coe support. Some
> > dwmac IPs support tx queues only for few initial tx queues, starting
> > from tx queue 0.
> >
> > Signed-off-by: Rohan G Thomas <rohan.g.thomas@intel.com>
> > ---
> >  Documentation/devicetree/bindings/net/snps,dwmac.yaml | 3 +++
> >  1 file changed, 3 insertions(+)
> >
> > diff --git a/Documentation/devicetree/bindings/net/snps,dwmac.yaml
> > b/Documentation/devicetree/bindings/net/snps,dwmac.yaml
> > index ddf9522a5dc2..ad26a32e0557 100644
> > --- a/Documentation/devicetree/bindings/net/snps,dwmac.yaml
> > +++ b/Documentation/devicetree/bindings/net/snps,dwmac.yaml
> > @@ -313,6 +313,9 @@ properties:
> >        snps,tx-queues-to-use:
> >          $ref: /schemas/types.yaml#/definitions/uint32
> >          description: number of TX queues to be used in the driver
> > +      snps,tx-queues-with-coe:
> > +        $ref: /schemas/types.yaml#/definitions/uint32
> > +        description: number of TX queues support TX checksum
> > + offloading
> 
> Either you omitted a "ing" or a whole word from this description.

Thanks for pointing this out. Will fix it in the next version as below,
description: number of TX queues that supports TX checksum offloading
> 
> >        snps,tx-sched-wrr:
> >          type: boolean
> >          description: Weighted Round Robin
> > --
> > 2.26.2
> >

Best Regards,
Rohan

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

* [PATCH net-next v2 0/2] Tx coe sw fallback for unsupported queues
  2023-08-10 15:03 [PATCH net-next 0/2] Tx coe sw fallback for unsupported queues Rohan G Thomas
  2023-08-10 15:03 ` [PATCH net-next 1/2] dt-bindings: net: snps,dwmac: Tx queues with coe Rohan G Thomas
  2023-08-10 15:03 ` [PATCH net-next 2/2] net: stmmac: Tx coe sw fallback Rohan G Thomas
@ 2023-08-11 19:00 ` Rohan G Thomas
  2023-08-11 19:00   ` [PATCH net-next v2 1/2] dt-bindings: net: snps,dwmac: Tx queues with coe Rohan G Thomas
  2023-08-11 19:00   ` [PATCH net-next v2 2/2] net: stmmac: Tx coe sw fallback Rohan G Thomas
  2 siblings, 2 replies; 11+ messages in thread
From: Rohan G Thomas @ 2023-08-11 19:00 UTC (permalink / raw)
  To: David S . Miller, Alexandre Torgue, Jose Abreu, Eric Dumazet,
	Jakub Kicinski, Paolo Abeni, Maxime Coquelin, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley
  Cc: netdev, linux-stm32, linux-arm-kernel, linux-kernel,
	Rohan G Thomas

Hi,
Some DWMAC IPs support tx coe only for a few initial tx queues,
starting from tx queue 0. This patchset adds support for tx coe sw
fallback for those queues that don't support tx coe. Also, add binding
for snps,tx-queues-with-coe property.

changelog v2:
* Reformed binding description.
* Minor grammatical corrections in comments and commit messages.

Rohan G Thomas (2):
  dt-bindings: net: snps,dwmac: Tx queues with coe
  net: stmmac: Tx coe sw fallback

 .../devicetree/bindings/net/snps,dwmac.yaml   |  3 +++
 drivers/net/ethernet/stmicro/stmmac/stmmac.h  |  2 ++
 .../net/ethernet/stmicro/stmmac/stmmac_main.c | 19 +++++++++++++++++++
 .../ethernet/stmicro/stmmac/stmmac_platform.c |  4 ++++
 include/linux/stmmac.h                        |  1 +
 5 files changed, 29 insertions(+)

-- 
2.19.0


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

* [PATCH net-next v2 1/2] dt-bindings: net: snps,dwmac: Tx queues with coe
  2023-08-11 19:00 ` [PATCH net-next v2 0/2] Tx coe sw fallback for unsupported queues Rohan G Thomas
@ 2023-08-11 19:00   ` Rohan G Thomas
  2023-08-14  7:31     ` Krzysztof Kozlowski
  2023-08-11 19:00   ` [PATCH net-next v2 2/2] net: stmmac: Tx coe sw fallback Rohan G Thomas
  1 sibling, 1 reply; 11+ messages in thread
From: Rohan G Thomas @ 2023-08-11 19:00 UTC (permalink / raw)
  To: David S . Miller, Alexandre Torgue, Jose Abreu, Eric Dumazet,
	Jakub Kicinski, Paolo Abeni, Maxime Coquelin, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley
  Cc: netdev, linux-stm32, linux-arm-kernel, linux-kernel,
	Rohan G Thomas

Add dt-bindings for the number of tx queues with coe support. Some
dwmac IPs support tx queues only for a few initial tx queues,
starting from tx queue 0.

Signed-off-by: Rohan G Thomas <rohan.g.thomas@intel.com>
---
 Documentation/devicetree/bindings/net/snps,dwmac.yaml | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/Documentation/devicetree/bindings/net/snps,dwmac.yaml b/Documentation/devicetree/bindings/net/snps,dwmac.yaml
index ddf9522a5dc2..0c6431c10cf9 100644
--- a/Documentation/devicetree/bindings/net/snps,dwmac.yaml
+++ b/Documentation/devicetree/bindings/net/snps,dwmac.yaml
@@ -313,6 +313,9 @@ properties:
       snps,tx-queues-to-use:
         $ref: /schemas/types.yaml#/definitions/uint32
         description: number of TX queues to be used in the driver
+      snps,tx-queues-with-coe:
+        $ref: /schemas/types.yaml#/definitions/uint32
+        description: number of TX queues that support TX checksum offloading
       snps,tx-sched-wrr:
         type: boolean
         description: Weighted Round Robin
-- 
2.19.0


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

* [PATCH net-next v2 2/2] net: stmmac: Tx coe sw fallback
  2023-08-11 19:00 ` [PATCH net-next v2 0/2] Tx coe sw fallback for unsupported queues Rohan G Thomas
  2023-08-11 19:00   ` [PATCH net-next v2 1/2] dt-bindings: net: snps,dwmac: Tx queues with coe Rohan G Thomas
@ 2023-08-11 19:00   ` Rohan G Thomas
  1 sibling, 0 replies; 11+ messages in thread
From: Rohan G Thomas @ 2023-08-11 19:00 UTC (permalink / raw)
  To: David S . Miller, Alexandre Torgue, Jose Abreu, Eric Dumazet,
	Jakub Kicinski, Paolo Abeni, Maxime Coquelin, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley
  Cc: netdev, linux-stm32, linux-arm-kernel, linux-kernel,
	Rohan G Thomas

Add sw fallback of tx checksum calculation for those tx queues that
don't support tx checksum offloading. Because, some DWMAC IPs support
tx checksum offloading only for a few initial tx queues, starting
from tx queue 0.

Signed-off-by: Rohan G Thomas <rohan.g.thomas@intel.com>
---
 drivers/net/ethernet/stmicro/stmmac/stmmac.h  |  2 ++
 .../net/ethernet/stmicro/stmmac/stmmac_main.c | 19 +++++++++++++++++++
 .../ethernet/stmicro/stmmac/stmmac_platform.c |  4 ++++
 include/linux/stmmac.h                        |  1 +
 4 files changed, 26 insertions(+)

diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac.h b/drivers/net/ethernet/stmicro/stmmac/stmmac.h
index 3401e888a9f6..f526bcaaaf64 100644
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac.h
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac.h
@@ -219,6 +219,8 @@ struct stmmac_priv {
 	int hwts_tx_en;
 	bool tx_path_in_lpi_mode;
 	bool tso;
+	bool tx_q_coe_lmt;
+	u32 tx_q_with_coe;
 	int sph;
 	int sph_cap;
 	u32 sarc_type;
diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
index fcab363d8dfa..cb8d2c159832 100644
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
@@ -4409,6 +4409,17 @@ static netdev_tx_t stmmac_xmit(struct sk_buff *skb, struct net_device *dev)
 	WARN_ON(tx_q->tx_skbuff[first_entry]);
 
 	csum_insertion = (skb->ip_summed == CHECKSUM_PARTIAL);
+	/* Some DWMAC IPs support tx coe only for a few initial tx queues,
+	 * starting from tx queue 0. So checksum offloading for those queues
+	 * that don't support tx coe needs to fallback to software checksum
+	 * calculation.
+	 */
+	if (csum_insertion && priv->tx_q_coe_lmt &&
+	    queue >= priv->tx_q_with_coe) {
+		if (unlikely(skb_checksum_help(skb)))
+			goto dma_map_err;
+		csum_insertion = !csum_insertion;
+	}
 
 	if (likely(priv->extend_desc))
 		desc = (struct dma_desc *)(tx_q->dma_etx + entry);
@@ -7386,6 +7397,14 @@ int stmmac_dvr_probe(struct device *device,
 		dev_info(priv->device, "SPH feature enabled\n");
 	}
 
+	if (priv->plat->tx_coe &&
+	    priv->plat->tx_queues_with_coe < priv->plat->tx_queues_to_use) {
+		priv->tx_q_coe_lmt = true;
+		priv->tx_q_with_coe = priv->plat->tx_queues_with_coe;
+		dev_info(priv->device, "TX COE limited to %u tx queues\n",
+			 priv->tx_q_with_coe);
+	}
+
 	/* Ideally our host DMA address width is the same as for the
 	 * device. However, it may differ and then we have to use our
 	 * host DMA width for allocation and the device DMA width for
diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
index be8e79c7aa34..0138b7c9c7ab 100644
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
@@ -225,6 +225,10 @@ static int stmmac_mtl_setup(struct platform_device *pdev,
 				 &plat->tx_queues_to_use))
 		plat->tx_queues_to_use = 1;
 
+	if (of_property_read_u32(tx_node, "snps,tx-queues-with-coe",
+				 &plat->tx_queues_with_coe))
+		plat->tx_queues_with_coe = plat->tx_queues_to_use;
+
 	if (of_property_read_bool(tx_node, "snps,tx-sched-wrr"))
 		plat->tx_sched_algorithm = MTL_TX_ALGORITHM_WRR;
 	else if (of_property_read_bool(tx_node, "snps,tx-sched-wfq"))
diff --git a/include/linux/stmmac.h b/include/linux/stmmac.h
index 652404c03944..795c10d19c1c 100644
--- a/include/linux/stmmac.h
+++ b/include/linux/stmmac.h
@@ -252,6 +252,7 @@ struct plat_stmmacenet_data {
 	u32 host_dma_width;
 	u32 rx_queues_to_use;
 	u32 tx_queues_to_use;
+	u32 tx_queues_with_coe;
 	u8 rx_sched_algorithm;
 	u8 tx_sched_algorithm;
 	struct stmmac_rxq_cfg rx_queues_cfg[MTL_MAX_RX_QUEUES];
-- 
2.19.0


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

* Re: [PATCH net-next 1/2] dt-bindings: net: snps,dwmac: Tx queues with coe
  2023-08-10 15:03 ` [PATCH net-next 1/2] dt-bindings: net: snps,dwmac: Tx queues with coe Rohan G Thomas
  2023-08-10 15:39   ` Conor Dooley
@ 2023-08-14  7:30   ` Krzysztof Kozlowski
  1 sibling, 0 replies; 11+ messages in thread
From: Krzysztof Kozlowski @ 2023-08-14  7:30 UTC (permalink / raw)
  To: Rohan G Thomas, David S . Miller, Alexandre Torgue, Jose Abreu,
	Eric Dumazet, Jakub Kicinski, Paolo Abeni, Maxime Coquelin,
	Rob Herring, Krzysztof Kozlowski, Conor Dooley
  Cc: netdev, linux-stm32, linux-arm-kernel, linux-kernel

On 10/08/2023 17:03, Rohan G Thomas wrote:
> Add dt-bindings for the number of tx queues with coe support. Some
> dwmac IPs support tx queues only for few initial tx queues, starting
> from tx queue 0.
> 
> Signed-off-by: Rohan G Thomas <rohan.g.thomas@intel.com>

Please use scripts/get_maintainers.pl to get a list of necessary people
and lists to CC. It might happen, that command when run on an older
kernel, gives you outdated entries. Therefore please be sure you base
your patches on recent Linux kernel.

You missed at least DT list (maybe more), so this won't be tested by
automated tooling. Performing review on untested code might be a waste
of time, thus I will skip this patch entirely till you follow the
process allowing the patch to be tested.

Please kindly resend and include all necessary To/Cc entries.

Best regards,
Krzysztof


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

* Re: [PATCH net-next v2 1/2] dt-bindings: net: snps,dwmac: Tx queues with coe
  2023-08-11 19:00   ` [PATCH net-next v2 1/2] dt-bindings: net: snps,dwmac: Tx queues with coe Rohan G Thomas
@ 2023-08-14  7:31     ` Krzysztof Kozlowski
  2023-08-14  8:33       ` G Thomas, Rohan
  0 siblings, 1 reply; 11+ messages in thread
From: Krzysztof Kozlowski @ 2023-08-14  7:31 UTC (permalink / raw)
  To: Rohan G Thomas, David S . Miller, Alexandre Torgue, Jose Abreu,
	Eric Dumazet, Jakub Kicinski, Paolo Abeni, Maxime Coquelin,
	Rob Herring, Krzysztof Kozlowski, Conor Dooley
  Cc: netdev, linux-stm32, linux-arm-kernel, linux-kernel

On 11/08/2023 21:00, Rohan G Thomas wrote:
> Add dt-bindings for the number of tx queues with coe support. Some
> dwmac IPs support tx queues only for a few initial tx queues,
> starting from tx queue 0.
> 
> Signed-off-by: Rohan G Thomas <rohan.g.thomas@intel.com>

1. Please use scripts/get_maintainers.pl to get a list of necessary
people and lists to CC. It might happen, that command when run on an
older kernel, gives you outdated entries. Therefore please be sure you
base your patches on recent Linux kernel.

You missed at least DT list (maybe more), so this won't be tested by
automated tooling. Performing review on untested code might be a waste
of time, thus I will skip this patch entirely till you follow the
process allowing the patch to be tested.

Please kindly resend and include all necessary To/Cc entries.

2. Do not attach (thread) your patchsets to some other threads
(unrelated or older versions). This buries them deep in the mailbox and
might interfere with applying entire sets.


Best regards,
Krzysztof


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

* RE: [PATCH net-next v2 1/2] dt-bindings: net: snps,dwmac: Tx queues with coe
  2023-08-14  7:31     ` Krzysztof Kozlowski
@ 2023-08-14  8:33       ` G Thomas, Rohan
  0 siblings, 0 replies; 11+ messages in thread
From: G Thomas, Rohan @ 2023-08-14  8:33 UTC (permalink / raw)
  To: Krzysztof Kozlowski, David S . Miller, Alexandre Torgue,
	Jose Abreu, Eric Dumazet, Jakub Kicinski, Paolo Abeni,
	Maxime Coquelin, Rob Herring, Krzysztof Kozlowski, Conor Dooley
  Cc: netdev@vger.kernel.org, linux-stm32@st-md-mailman.stormreply.com,
	linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org

On 11/08/2023 21:00, Rohan G Thomas wrote:
> > Add dt-bindings for the number of tx queues with coe support. Some
> > dwmac IPs support tx queues only for a few initial tx queues, starting
> > from tx queue 0.
> >
> > Signed-off-by: Rohan G Thomas <rohan.g.thomas@intel.com>
> 
> 1. Please use scripts/get_maintainers.pl to get a list of necessary people and
> lists to CC. It might happen, that command when run on an older kernel,
> gives you outdated entries. Therefore please be sure you base your patches
> on recent Linux kernel.
> 
> You missed at least DT list (maybe more), so this won't be tested by
> automated tooling. Performing review on untested code might be a waste of
> time, thus I will skip this patch entirely till you follow the process allowing the
> patch to be tested.
> 
> Please kindly resend and include all necessary To/Cc entries.

Oops, missed running the script and to get the latest maintainers list before 
sending v2. Thanks for pointing this out. I'll resend the patchset.

> 2. Do not attach (thread) your patchsets to some other threads (unrelated or
> older versions). This buries them deep in the mailbox and might interfere
> with applying entire sets.

Sure. Noted.
Thanks.

BR,
Rohan


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

end of thread, other threads:[~2023-08-14  8:34 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-08-10 15:03 [PATCH net-next 0/2] Tx coe sw fallback for unsupported queues Rohan G Thomas
2023-08-10 15:03 ` [PATCH net-next 1/2] dt-bindings: net: snps,dwmac: Tx queues with coe Rohan G Thomas
2023-08-10 15:39   ` Conor Dooley
2023-08-10 17:47     ` G Thomas, Rohan
2023-08-14  7:30   ` Krzysztof Kozlowski
2023-08-10 15:03 ` [PATCH net-next 2/2] net: stmmac: Tx coe sw fallback Rohan G Thomas
2023-08-11 19:00 ` [PATCH net-next v2 0/2] Tx coe sw fallback for unsupported queues Rohan G Thomas
2023-08-11 19:00   ` [PATCH net-next v2 1/2] dt-bindings: net: snps,dwmac: Tx queues with coe Rohan G Thomas
2023-08-14  7:31     ` Krzysztof Kozlowski
2023-08-14  8:33       ` G Thomas, Rohan
2023-08-11 19:00   ` [PATCH net-next v2 2/2] net: stmmac: Tx coe sw fallback Rohan G Thomas

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