diff options
author | Joao Pinto <Joao.Pinto@synopsys.com> | 2017-03-31 14:22:02 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2017-04-02 19:30:06 -0700 |
commit | 44781fef1378969ea974b1b000ce7f3167eee459 (patch) | |
tree | 85445919c021337d9b889b5a5d8d22104216856b | |
parent | a6fc09dff2ec344960cd40139011697734a044fa (diff) |
net: stmmac: fix cbs configuration
Sending again, because forgot to include net-dev.
The QoS IP does not accept AVB capabilities to default/queue 0, this way we
guarantee 75% bandwidth for AVB. This patch assures that only queues >= 1
gets CBS confgured. Additional info was also added to stmmac.txt.
Reported-by: Niklas Cassel <niklas.cassel@axis.com>
Signed-off-by: Joao Pinto <jpinto@synopsys.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | Documentation/devicetree/bindings/net/stmmac.txt | 2 | ||||
-rw-r--r-- | drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 3 |
2 files changed, 4 insertions, 1 deletions
diff --git a/Documentation/devicetree/bindings/net/stmmac.txt b/Documentation/devicetree/bindings/net/stmmac.txt index 784d98862b52..f652b0c384ce 100644 --- a/Documentation/devicetree/bindings/net/stmmac.txt +++ b/Documentation/devicetree/bindings/net/stmmac.txt @@ -103,6 +103,8 @@ Optional properties: - Choose one of these modes: - snps,dcb-algorithm: TX queue will be working in DCB - snps,avb-algorithm: TX queue will be working in AVB + [Attention] Queue 0 is reserved for legacy traffic + and so no AVB is available in this queue. - Configure Credit Base Shaper (if AVB Mode selected): - snps,send_slope: enable Low Power Interface - snps,idle_slope: unlock on WoL diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c index 43361f324229..c1c63197ff73 100644 --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c @@ -1880,7 +1880,8 @@ static void stmmac_configure_cbs(struct stmmac_priv *priv) u32 mode_to_use; u32 queue; - for (queue = 0; queue < tx_queues_count; queue++) { + /* queue 0 is reserved for legacy traffic */ + for (queue = 1; queue < tx_queues_count; queue++) { mode_to_use = priv->plat->tx_queues_cfg[queue].mode_to_use; if (mode_to_use == MTL_QUEUE_DCB) continue; |