a1578a56c37952bd224512b5ab3f10382fb05fd7
[dpdk.git] / lib / librte_net / net_crc.h
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright(c) 2020 Intel Corporation
3  */
4
5 #ifndef _NET_CRC_H_
6 #define _NET_CRC_H_
7
8 /*
9  * Different implementations of CRC
10  */
11
12 /* SSE4.2 */
13
14 void
15 rte_net_crc_sse42_init(void);
16
17 uint32_t
18 rte_crc16_ccitt_sse42_handler(const uint8_t *data, uint32_t data_len);
19
20 uint32_t
21 rte_crc32_eth_sse42_handler(const uint8_t *data, uint32_t data_len);
22
23 /* NEON */
24
25 void
26 rte_net_crc_neon_init(void);
27
28 uint32_t
29 rte_crc16_ccitt_neon_handler(const uint8_t *data, uint32_t data_len);
30
31 uint32_t
32 rte_crc32_eth_neon_handler(const uint8_t *data, uint32_t data_len);
33
34 #endif /* _NET_CRC_H_ */