1*4418919fSjohnjiang /* SPDX-License-Identifier: BSD-3-Clause
2*4418919fSjohnjiang  * Copyright 2019 NXP
3*4418919fSjohnjiang  */
4*4418919fSjohnjiang 
5*4418919fSjohnjiang #ifndef SECURITY_PDCP_TEST_FUNC_H_
6*4418919fSjohnjiang #define SECURITY_PDCP_TEST_FUNC_H_
7*4418919fSjohnjiang 
8*4418919fSjohnjiang #define PDCP_CPLANE_OFFSET		0
9*4418919fSjohnjiang #define PDCP_CPLANE_LONG_SN_OFFSET	32
10*4418919fSjohnjiang #define PDCP_UPLANE_OFFSET		64
11*4418919fSjohnjiang #define LONG_SEQ_NUM_OFFSET		0
12*4418919fSjohnjiang #define SHORT_SEQ_NUM_OFFSET		2
13*4418919fSjohnjiang #define FIFTEEN_BIT_SEQ_NUM_OFFSET	4
14*4418919fSjohnjiang #define EIGHTEEN_BIT_SEQ_NUM_OFFSET	6
15*4418919fSjohnjiang #define UPLINK				0
16*4418919fSjohnjiang #define DOWNLINK			1
17*4418919fSjohnjiang /* key length(in bytes) for F8 */
18*4418919fSjohnjiang #define F8_KEY_LEN			16
19*4418919fSjohnjiang 
20*4418919fSjohnjiang #define PDCP_UPLANE_12BIT_OFFSET	(PDCP_UPLANE_OFFSET + 32)
21*4418919fSjohnjiang #define PDCP_UPLANE_18BIT_OFFSET	(PDCP_UPLANE_12BIT_OFFSET + 32)
22*4418919fSjohnjiang 
23*4418919fSjohnjiang enum enc_alg_off {
24*4418919fSjohnjiang 	NULL_ENC = 0,
25*4418919fSjohnjiang 	SNOW_ENC = 8,
26*4418919fSjohnjiang 	AES_ENC = 16,
27*4418919fSjohnjiang 	ZUC_ENC = 24
28*4418919fSjohnjiang };
29*4418919fSjohnjiang enum auth_alg_off {
30*4418919fSjohnjiang 	NULL_AUTH = 0,
31*4418919fSjohnjiang 	SNOW_AUTH = 2,
32*4418919fSjohnjiang 	AES_AUTH = 4,
33*4418919fSjohnjiang 	ZUC_AUTH = 6
34*4418919fSjohnjiang };
35*4418919fSjohnjiang 
36*4418919fSjohnjiang int test_pdcp_proto_cplane_encap(int i);
37*4418919fSjohnjiang int test_pdcp_proto_uplane_encap(int i);
38*4418919fSjohnjiang int test_pdcp_proto_uplane_encap_with_int(int i);
39*4418919fSjohnjiang int test_pdcp_proto_cplane_decap(int i);
40*4418919fSjohnjiang int test_pdcp_proto_uplane_decap(int i);
41*4418919fSjohnjiang int test_pdcp_proto_uplane_decap_with_int(int i);
42*4418919fSjohnjiang 
43*4418919fSjohnjiang int test_PDCP_PROTO_cplane_encap_all(void);
44*4418919fSjohnjiang int test_PDCP_PROTO_cplane_decap_all(void);
45*4418919fSjohnjiang int test_PDCP_PROTO_uplane_encap_all(void);
46*4418919fSjohnjiang int test_PDCP_PROTO_uplane_decap_all(void);
47*4418919fSjohnjiang 
48*4418919fSjohnjiang #endif /* SECURITY_PDCP_TEST_FUNC_H_ */
49