[Patch v7 11/18] net/mana: implement the hardware layer operations

Ferruh Yigit ferruh.yigit at amd.com
Wed Sep 21 19:55:27 CEST 2022


On 9/3/2022 2:40 AM, longli at linuxonhyperv.com wrote:

> 
> From: Long Li <longli at microsoft.com>
> 
> The hardware layer of MANA understands the device queue and doorbell
> formats. Those functions are implemented for use by packet RX/TX code.
> 
> Signed-off-by: Long Li <longli at microsoft.com>
> ---
> Change log:
> v2:
> Remove unused header files.
> Rename a camel case.
> v5:
> Use RTE_BIT32() instead of defining a new BIT()
> v6:
> add rte_rmb() after reading owner bits
> 
>   drivers/net/mana/gdma.c      | 289 +++++++++++++++++++++++++++++++++++
>   drivers/net/mana/mana.h      | 183 ++++++++++++++++++++++
>   drivers/net/mana/meson.build |   1 +
>   3 files changed, 473 insertions(+)
>   create mode 100644 drivers/net/mana/gdma.c
> 

<...>

> +
> +/* NDIS HASH Types */
> +#define BIT(nr)                (1 << (nr))
> +#define NDIS_HASH_IPV4          BIT(0)
> +#define NDIS_HASH_TCP_IPV4      BIT(1)
> +#define NDIS_HASH_UDP_IPV4      BIT(2)
> +#define NDIS_HASH_IPV6          BIT(3)
> +#define NDIS_HASH_TCP_IPV6      BIT(4)
> +#define NDIS_HASH_UDP_IPV6      BIT(5)
> +#define NDIS_HASH_IPV6_EX       BIT(6)
> +#define NDIS_HASH_TCP_IPV6_EX   BIT(7)
> +#define NDIS_HASH_UDP_IPV6_EX   BIT(8)

v5 chagelog mentions that BIT converted to RTE_BIT32(), but I guess 
something went wrong and turned back to old code.




More information about the dev mailing list