xref: /dpdk/drivers/common/qat/qat_adf/adf_transport_access_macros_gen_lcevf.h (revision e9271821e489668e466c7db36912b7c338717688)
1 /* SPDX-License-Identifier: (BSD-3-Clause OR GPL-2.0)
2  * Copyright(c) 2024 Intel Corporation
3  */
4 
5 #ifndef ADF_TRANSPORT_ACCESS_MACROS_GEN_LCEVF_H
6 #define ADF_TRANSPORT_ACCESS_MACROS_GEN_LCEVF_H
7 
8 #include "adf_transport_access_macros.h"
9 #include "adf_transport_access_macros_gen_lce.h"
10 
11 #define ADF_RING_CSR_ADDR_OFFSET_GEN_LCEVF 0x0
12 
13 #define WRITE_CSR_RING_BASE_GEN_LCEVF(csr_base_addr, bank, ring, value) \
14 do { \
15 	uint32_t l_base = 0, u_base = 0; \
16 	l_base = (uint32_t)(value & 0xFFFFFFFF); \
17 	u_base = (uint32_t)((value & 0xFFFFFFFF00000000ULL) >> 32); \
18 	ADF_CSR_WR(csr_base_addr + ADF_RING_CSR_ADDR_OFFSET_GEN_LCEVF, \
19 		(ADF_RING_BUNDLE_SIZE_GEN_LCE * bank) + \
20 		ADF_RING_CSR_RING_LBASE_GEN_LCE + (ring << 2),	\
21 		l_base);	\
22 	ADF_CSR_WR(csr_base_addr + ADF_RING_CSR_ADDR_OFFSET_GEN_LCEVF,	\
23 		 (ADF_RING_BUNDLE_SIZE_GEN_LCE * bank) + \
24 		ADF_RING_CSR_RING_UBASE_GEN_LCE + (ring << 2),		\
25 		u_base);	\
26 } while (0)
27 
28 #define WRITE_CSR_RING_CONFIG_GEN_LCEVF(csr_base_addr, bank, ring, value) \
29 	ADF_CSR_WR(csr_base_addr + ADF_RING_CSR_ADDR_OFFSET_GEN_LCEVF,	\
30 		 (ADF_RING_BUNDLE_SIZE_GEN_LCE * bank) + \
31 		ADF_RING_CSR_RING_CONFIG_GEN_LCE + (ring << 2), value)
32 
33 #define WRITE_CSR_RING_TAIL_GEN_LCEVF(csr_base_addr, bank, ring, value) \
34 	ADF_CSR_WR((csr_base_addr) + ADF_RING_CSR_ADDR_OFFSET_GEN_LCEVF, \
35 		(ADF_RING_BUNDLE_SIZE_GEN_LCE * (bank)) + \
36 		ADF_RING_CSR_RING_TAIL + ((ring) << 2), (value))
37 
38 #define WRITE_CSR_RING_HEAD_GEN_LCEVF(csr_base_addr, bank, ring, value) \
39 	ADF_CSR_WR((csr_base_addr) + ADF_RING_CSR_ADDR_OFFSET_GEN_LCEVF, \
40 		(ADF_RING_BUNDLE_SIZE_GEN_LCE * (bank)) + \
41 		ADF_RING_CSR_RING_HEAD + ((ring) << 2), (value))
42 
43 #define WRITE_CSR_RING_SRV_ARB_EN_GEN_LCEVF(csr_base_addr, bank, value) \
44 	ADF_CSR_WR((csr_base_addr) + ADF_RING_CSR_ADDR_OFFSET_GEN_LCEVF, \
45 		(ADF_RING_BUNDLE_SIZE_GEN_LCE * (bank)) + \
46 		ADF_RING_CSR_RING_SRV_ARB_EN, (value))
47 
48 #endif
49