[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20190829.165415.1821954803967440924.davem@davemloft.net>
Date: Thu, 29 Aug 2019 16:54:15 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: ruxandra.radulescu@....com
Cc: netdev@...r.kernel.org, andrew@...n.ch, ioana.ciornei@....com
Subject: Re: [PATCH net-next v3 3/3] dpaa2-eth: Add pause frame support
From: Ioana Radulescu <ruxandra.radulescu@....com>
Date: Wed, 28 Aug 2019 17:08:15 +0300
> Starting with firmware version MC10.18.0, we have support for
> L2 flow control. Asymmetrical configuration (Rx or Tx only) is
> supported, but not pause frame autonegotioation.
>
> Pause frame configuration is done via ethtool. By default, we start
> with flow control enabled on both Rx and Tx. Changes are propagated
> to hardware through firmware commands, using two flags (PAUSE,
> ASYM_PAUSE) to specify Rx and Tx pause configuration, as follows:
>
> PAUSE | ASYM_PAUSE | Rx pause | Tx pause
> ----------------------------------------
> 0 | 0 | disabled | disabled
> 0 | 1 | disabled | enabled
> 1 | 0 | enabled | enabled
> 1 | 1 | enabled | disabled
>
> The hardware can automatically send pause frames when the number
> of buffers in the pool goes below a predefined threshold. Due to
> this, flow control is incompatible with Rx frame queue taildrop
> (both mechanisms target the case when processing of ingress
> frames can't keep up with the Rx rate; for large frames, the number
> of buffers in the pool may never get low enough to trigger pause
> frames as long as taildrop is enabled). So we set pause frame
> generation and Rx FQ taildrop as mutually exclusive.
>
> Signed-off-by: Ioana Radulescu <ruxandra.radulescu@....com>
> Reviewed-by: Andrew Lunn <andrew@...n.ch>
Applied.
Powered by blists - more mailing lists