xref: /rk3399_ARM-atf/plat/imx/imx8m/include/imx8m_caam.h (revision 21bde92ff6d20ef2d3a2651fd729a1579232313b)
1*2502709fSJacky Bai /*
2*2502709fSJacky Bai  * Copyright (c) 2019, NXP. All rights reserved.
3*2502709fSJacky Bai  *
4*2502709fSJacky Bai  * SPDX-License-Identifier: BSD-3-Clause
5*2502709fSJacky Bai  */
6*2502709fSJacky Bai 
7*2502709fSJacky Bai #ifndef IMX8M_CAAM_H
8*2502709fSJacky Bai #define IMX8M_CAAM_H
9*2502709fSJacky Bai 
10*2502709fSJacky Bai #include <lib/utils_def.h>
11*2502709fSJacky Bai 
12*2502709fSJacky Bai #include <platform_def.h>
13*2502709fSJacky Bai 
14*2502709fSJacky Bai #define CAAM_JR0MID		(IMX_CAAM_BASE + 0x10)
15*2502709fSJacky Bai #define CAAM_JR1MID		(IMX_CAAM_BASE + 0x18)
16*2502709fSJacky Bai #define CAAM_JR2MID		(IMX_CAAM_BASE + 0x20)
17*2502709fSJacky Bai #define CAAM_NS_MID		(0x1)
18*2502709fSJacky Bai 
19*2502709fSJacky Bai #define JR0_BASE		(IMX_CAAM_BASE + 0x1000)
20*2502709fSJacky Bai 
21*2502709fSJacky Bai #define SM_P0_PERM		(JR0_BASE + 0xa04)
22*2502709fSJacky Bai #define SM_P0_SMAG2		(JR0_BASE + 0xa08)
23*2502709fSJacky Bai #define SM_P0_SMAG1		(JR0_BASE + 0xa0c)
24*2502709fSJacky Bai #define SM_CMD			(JR0_BASE + 0xbe4)
25*2502709fSJacky Bai 
26*2502709fSJacky Bai /* secure memory command */
27*2502709fSJacky Bai #define SMC_PAGE_SHIFT		16
28*2502709fSJacky Bai #define SMC_PART_SHIFT		8
29*2502709fSJacky Bai 
30*2502709fSJacky Bai #define SMC_CMD_ALLOC_PAGE	0x01	/* allocate page to this partition */
31*2502709fSJacky Bai #define SMC_CMD_DEALLOC_PART	0x03	/* deallocate partition */
32*2502709fSJacky Bai 
33*2502709fSJacky Bai void imx8m_caam_init(void);
34*2502709fSJacky Bai 
35*2502709fSJacky Bai #endif /* IMX8M_CAAM_H */
36