On Wed, 28 Oct 2020 18:40:59 +0200 Camelia Groza wrote:
> Impose a large RX private data area only when the A050385 erratum is
> present on the hardware. A smaller buffer size is sufficient in all
> other scenarios. This enables a wider range of linear frame sizes
> in non-erratum scenarios

Any word on user impact? Measurable memory waste?

> Fixes: 3c68b8fffb48 ("dpaa_eth: FMan erratum A050385 workaround")
> Signed-off-by: Camelia Groza <camelia.gr...@nxp.com>
> ---
>  drivers/net/ethernet/freescale/dpaa/dpaa_eth.c | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/net/ethernet/freescale/dpaa/dpaa_eth.c 
> b/drivers/net/ethernet/freescale/dpaa/dpaa_eth.c
> index 06cc863..1aac0b6 100644
> --- a/drivers/net/ethernet/freescale/dpaa/dpaa_eth.c
> +++ b/drivers/net/ethernet/freescale/dpaa/dpaa_eth.c
> @@ -175,8 +175,10 @@
>  #define DPAA_TIME_STAMP_SIZE 8
>  #define DPAA_HASH_RESULTS_SIZE 8
>  #ifdef CONFIG_DPAA_ERRATUM_A050385
> -#define DPAA_RX_PRIV_DATA_SIZE (DPAA_A050385_ALIGN - 
> (DPAA_PARSE_RESULTS_SIZE\
> -      + DPAA_TIME_STAMP_SIZE + DPAA_HASH_RESULTS_SIZE))
> +#define DPAA_RX_PRIV_DATA_SIZE (fman_has_errata_a050385() ? \
> +                     (DPAA_A050385_ALIGN - (DPAA_PARSE_RESULTS_SIZE\
> +                      + DPAA_TIME_STAMP_SIZE + DPAA_HASH_RESULTS_SIZE)) : \
> +                     (DPAA_TX_PRIV_DATA_SIZE + dpaa_rx_extra_headroom))

This expressions is highly unreadable, please refactor. Maybe separate
defines for errata and non-errata, and one for the ternary operator?

>  #else
>  #define DPAA_RX_PRIV_DATA_SIZE       (u16)(DPAA_TX_PRIV_DATA_SIZE + \
>                                       dpaa_rx_extra_headroom)

Reply via email to