DEV_RX_OFFLOAD_KEEP_CRC offload flag added. DEV_RX_OFFLOAD_CRC_STRIP flag will remain one more release default behavior in PMDs is to keep the CRC until this flag removed
Until DEV_RX_OFFLOAD_CRC_STRIP flag is removed: - Setting both KEEP_CRC & CRC_STRIP is INVALID - Setting only CRC_STRIP PMD should strip the CRC - Setting only KEEP_CRC PMD should keep the CRC - Not setting both PMD should keep the CRC Signed-off-by: Ferruh Yigit <ferruh.yi...@intel.com> --- doc/guides/rel_notes/deprecation.rst | 10 ---------- lib/librte_ethdev/rte_ethdev.h | 4 ++++ 2 files changed, 4 insertions(+), 10 deletions(-) diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst index 1ce692eac..cd128ae23 100644 --- a/doc/guides/rel_notes/deprecation.rst +++ b/doc/guides/rel_notes/deprecation.rst @@ -67,16 +67,6 @@ Deprecation Notices - removal of ``txq_flags`` field from ``rte_eth_txconf`` struct. - removal of the offloads bit-field from ``rte_eth_rxmode`` struct. -* ethdev: A new offloading flag ``DEV_RX_OFFLOAD_KEEP_CRC`` will be added in v18.08, - This will replace the usage of not setting ``DEV_RX_OFFLOAD_CRC_STRIP`` flag - and will be implemented in PMDs accordingly. - In v18.08 both ``DEV_RX_OFFLOAD_KEEP_CRC`` and ``DEV_RX_OFFLOAD_CRC_STRIP`` flags - will be available, usage will be: - ``CRC_STRIP``: Strip CRC from packet - ``KEEP_CRC``: Keep CRC in packet - Both ``CRC_STRIP`` & ``KEEP_CRC``: Invalid - No flag: Keep CRC in packet - * ethdev: In v18.11 ``DEV_RX_OFFLOAD_CRC_STRIP`` offload flag will be removed, default behavior without any flag will be changed to CRC strip. To keep CRC ``DEV_RX_OFFLOAD_KEEP_CRC`` flag is required. diff --git a/lib/librte_ethdev/rte_ethdev.h b/lib/librte_ethdev/rte_ethdev.h index 36e3984ea..c81af09f8 100644 --- a/lib/librte_ethdev/rte_ethdev.h +++ b/lib/librte_ethdev/rte_ethdev.h @@ -939,6 +939,10 @@ struct rte_eth_conf { #define DEV_RX_OFFLOAD_SCATTER 0x00002000 #define DEV_RX_OFFLOAD_TIMESTAMP 0x00004000 #define DEV_RX_OFFLOAD_SECURITY 0x00008000 + +/* Invalid to set both DEV_RX_OFFLOAD_CRC_STRIP and DEV_RX_OFFLOAD_KEEP_CRC + * No DEV_RX_OFFLOAD_CRC_STRIP flag means keep CRC */ +#define DEV_RX_OFFLOAD_KEEP_CRC 0x00010000 #define DEV_RX_OFFLOAD_CHECKSUM (DEV_RX_OFFLOAD_IPV4_CKSUM | \ DEV_RX_OFFLOAD_UDP_CKSUM | \ DEV_RX_OFFLOAD_TCP_CKSUM) -- 2.14.4