coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
trustzone.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 
3 #ifndef SOC_SAMSUNG_COMMON_INCLUDE_SOC_TRUSTZONE_H
4 #define SOC_SAMSUNG_COMMON_INCLUDE_SOC_TRUSTZONE_H
5 
6 #include <stdint.h>
7 
8 /* Distance between each Trust Zone PC register set */
9 #define TZPC_BASE_OFFSET 0x10000
10 /* TZPC : Register Offsets */
11 #define TZPC0_BASE 0x10100000
12 #define TZPC1_BASE 0x10110000
13 #define TZPC2_BASE 0x10120000
14 #define TZPC3_BASE 0x10130000
15 #define TZPC4_BASE 0x10140000
16 #define TZPC5_BASE 0x10150000
17 #define TZPC6_BASE 0x10160000
18 #define TZPC7_BASE 0x10170000
19 #define TZPC8_BASE 0x10180000
20 #define TZPC9_BASE 0x10190000
21 #define TZPC10_BASE 0x100E0000
22 #define TZPC11_BASE 0x100F0000
23 
24 /*
25  * TZPC Register Value :
26  * R0SIZE: 0x0 : Size of secured ram
27  */
28 #define R0SIZE 0x0
29 
30 /*
31  * TZPC Decode Protection Register Value :
32  * DECPROTXSET: 0xFF : Set Decode region to non-secure
33  */
34 #define DECPROTXSET 0xFF
35 
36 struct exynos_tzpc {
38  u8 res1[0x7FC];
51  u8 res2[0x7B0];
60 };
61 check_member(exynos_tzpc, pcellid3, 0xffc);
62 
63 void trustzone_init(void);
64 
65 #endif /* SOC_SAMSUNG_COMMON_INCLUDE_SOC_TRUSTZONE_H */
uint32_t u32
Definition: stdint.h:51
uint8_t u8
Definition: stdint.h:45
u32 decprot3stat
Definition: trustzone.h:48
u32 decprot2stat
Definition: trustzone.h:45
u32 pcellid0
Definition: trustzone.h:56
u32 decprot2clr
Definition: trustzone.h:47
u32 decprot1set
Definition: trustzone.h:43
u32 periphid2
Definition: trustzone.h:54
u32 r0size
Definition: trustzone.h:37
u32 pcellid3
Definition: trustzone.h:59
u32 decprot1stat
Definition: trustzone.h:42
u32 decprot0stat
Definition: trustzone.h:39
u32 pcellid2
Definition: trustzone.h:58
u32 periphid0
Definition: trustzone.h:52
u32 decprot0set
Definition: trustzone.h:40
u32 decprot3set
Definition: trustzone.h:49
u32 decprot0clr
Definition: trustzone.h:41
u32 pcellid1
Definition: trustzone.h:57
u8 res1[0x7FC]
Definition: trustzone.h:38
u32 decprot1clr
Definition: trustzone.h:44
u32 periphid1
Definition: trustzone.h:53
u32 periphid3
Definition: trustzone.h:55
u32 decprot2set
Definition: trustzone.h:46
u32 decprot3clr
Definition: trustzone.h:50
u8 res2[0x7B0]
Definition: trustzone.h:51
void trustzone_init(void)
Definition: trustzone.c:7
check_member(exynos_tzpc, pcellid3, 0xffc)