xref: /rk3399_ARM-atf/plat/imx/imx8m/include/imx_aipstz.h (revision 4d384eb4ed119723f530ddb3e1fb55239aae4178)
1*ac166f64SJacky Bai /*
2*ac166f64SJacky Bai  * Copyright (c) 2019, ARM Limited and Contributors. All rights reserved.
3*ac166f64SJacky Bai  *
4*ac166f64SJacky Bai  * SPDX-License-Identifier: BSD-3-Clause
5*ac166f64SJacky Bai  */
6*ac166f64SJacky Bai 
7*ac166f64SJacky Bai #ifndef IMX_AIPSTZ_H
8*ac166f64SJacky Bai #define IMX_AIPSTZ_H
9*ac166f64SJacky Bai 
10*ac166f64SJacky Bai #include <lib/utils_def.h>
11*ac166f64SJacky Bai 
12*ac166f64SJacky Bai #define AIPSTZ_MPR0		U(0x0)
13*ac166f64SJacky Bai #define AIPSTZ_MPR1		U(0x4)
14*ac166f64SJacky Bai 
15*ac166f64SJacky Bai #define AIPSTZ_OPACR_NUM	U(0x5)
16*ac166f64SJacky Bai #define OPACR_OFFSET(i)		U((i) * 4 + 0x40)
17*ac166f64SJacky Bai 
18*ac166f64SJacky Bai struct aipstz_cfg {
19*ac166f64SJacky Bai 	uintptr_t base;
20*ac166f64SJacky Bai 	uint32_t mpr0;
21*ac166f64SJacky Bai 	uint32_t mpr1;
22*ac166f64SJacky Bai 	uint32_t opacr[AIPSTZ_OPACR_NUM];
23*ac166f64SJacky Bai };
24*ac166f64SJacky Bai 
25*ac166f64SJacky Bai void imx_aipstz_init(const struct aipstz_cfg *aipstz_cfg);
26*ac166f64SJacky Bai 
27*ac166f64SJacky Bai #endif /* IMX_AIPSTZ_H */
28