diff mbox

[2/3] net: stmmac: Restore DT backwards-compatibility

Message ID 20170321151211.31841-2-thierry.reding@gmail.com
State Accepted, archived
Delegated to: David Miller
Headers show

Commit Message

Thierry Reding March 21, 2017, 3:12 p.m. UTC
From: Thierry Reding <treding@nvidia.com>

Recent changes to support multiple queues in the device tree bindings
resulted in the number of RX and TX queues to be initialized to zero for
device trees not adhering to the new bindings.

Restore backwards-compatibility with those device trees by falling back
to a single RX and TX queues each.

Signed-off-by: Thierry Reding <treding@nvidia.com>
---
 drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c | 7 +++++++
 1 file changed, 7 insertions(+)

Comments

Joao Pinto March 21, 2017, 3:14 p.m. UTC | #1
Às 3:12 PM de 3/21/2017, Thierry Reding escreveu:
> From: Thierry Reding <treding@nvidia.com>
> 
> Recent changes to support multiple queues in the device tree bindings
> resulted in the number of RX and TX queues to be initialized to zero for
> device trees not adhering to the new bindings.
> 
> Restore backwards-compatibility with those device trees by falling back
> to a single RX and TX queues each.
> 
> Signed-off-by: Thierry Reding <treding@nvidia.com>
> ---
>  drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c | 7 +++++++
>  1 file changed, 7 insertions(+)
> 
> diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
> index 37f550ae76a5..74b0aff79b25 100644
> --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
> +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
> @@ -143,6 +143,13 @@ static void stmmac_mtl_setup(struct platform_device *pdev,
>  	struct device_node *tx_node;
>  	u8 queue = 0;
>  
> +	/* For backwards-compatibility with device trees that don't have any
> +	 * snps,mtl-rx-config or snps,mtl-tx-config properties, we fall back
> +	 * to one RX and TX queues each.
> +	 */
> +	plat->rx_queues_to_use = 1;
> +	plat->tx_queues_to_use = 1;
> +
>  	rx_node = of_parse_phandle(pdev->dev.of_node, "snps,mtl-rx-config", 0);
>  	if (!rx_node)
>  		return;
> 

Acked-By: Joao Pinto <jpinto@synopsys.com>
Corentin Labbe March 22, 2017, 12:38 p.m. UTC | #2
On Tue, Mar 21, 2017 at 04:12:10PM +0100, Thierry Reding wrote:
> From: Thierry Reding <treding@nvidia.com>
> 
> Recent changes to support multiple queues in the device tree bindings
> resulted in the number of RX and TX queues to be initialized to zero for
> device trees not adhering to the new bindings.
> 
> Restore backwards-compatibility with those device trees by falling back
> to a single RX and TX queues each.
> 
> Signed-off-by: Thierry Reding <treding@nvidia.com>
> ---
>  drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c | 7 +++++++
>  1 file changed, 7 insertions(+)
> 
> diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
> index 37f550ae76a5..74b0aff79b25 100644
> --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
> +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
> @@ -143,6 +143,13 @@ static void stmmac_mtl_setup(struct platform_device *pdev,
>  	struct device_node *tx_node;
>  	u8 queue = 0;
>  
> +	/* For backwards-compatibility with device trees that don't have any
> +	 * snps,mtl-rx-config or snps,mtl-tx-config properties, we fall back
> +	 * to one RX and TX queues each.
> +	 */
> +	plat->rx_queues_to_use = 1;
> +	plat->tx_queues_to_use = 1;
> +
>  	rx_node = of_parse_phandle(pdev->dev.of_node, "snps,mtl-rx-config", 0);
>  	if (!rx_node)
>  		return;
> -- 
> 2.12.0
> 

Tested-by: Corentin Labbe <clabbe.montjoie@gmail.com>

Fix one of the reported problem on dwmac-sunxi and dwmac-sun8i
Regards
David Miller March 22, 2017, 7:15 p.m. UTC | #3
From: Thierry Reding <thierry.reding@gmail.com>
Date: Tue, 21 Mar 2017 16:12:10 +0100

> From: Thierry Reding <treding@nvidia.com>
> 
> Recent changes to support multiple queues in the device tree bindings
> resulted in the number of RX and TX queues to be initialized to zero for
> device trees not adhering to the new bindings.
> 
> Restore backwards-compatibility with those device trees by falling back
> to a single RX and TX queues each.
> 
> Signed-off-by: Thierry Reding <treding@nvidia.com>

Applied to net-next
diff mbox

Patch

diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
index 37f550ae76a5..74b0aff79b25 100644
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
@@ -143,6 +143,13 @@  static void stmmac_mtl_setup(struct platform_device *pdev,
 	struct device_node *tx_node;
 	u8 queue = 0;
 
+	/* For backwards-compatibility with device trees that don't have any
+	 * snps,mtl-rx-config or snps,mtl-tx-config properties, we fall back
+	 * to one RX and TX queues each.
+	 */
+	plat->rx_queues_to_use = 1;
+	plat->tx_queues_to_use = 1;
+
 	rx_node = of_parse_phandle(pdev->dev.of_node, "snps,mtl-rx-config", 0);
 	if (!rx_node)
 		return;