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
{
37
u32
r0size
;
38
u8
res1
[0x7FC];
39
u32
decprot0stat
;
40
u32
decprot0set
;
41
u32
decprot0clr
;
42
u32
decprot1stat
;
43
u32
decprot1set
;
44
u32
decprot1clr
;
45
u32
decprot2stat
;
46
u32
decprot2set
;
47
u32
decprot2clr
;
48
u32
decprot3stat
;
49
u32
decprot3set
;
50
u32
decprot3clr
;
51
u8
res2
[0x7B0];
52
u32
periphid0
;
53
u32
periphid1
;
54
u32
periphid2
;
55
u32
periphid3
;
56
u32
pcellid0
;
57
u32
pcellid1
;
58
u32
pcellid2
;
59
u32
pcellid3
;
60
};
61
check_member
(
exynos_tzpc
, pcellid3, 0xffc);
62
63
void
trustzone_init
(
void
);
64
65
#endif
/* SOC_SAMSUNG_COMMON_INCLUDE_SOC_TRUSTZONE_H */
stdint.h
u32
uint32_t u32
Definition:
stdint.h:51
u8
uint8_t u8
Definition:
stdint.h:45
exynos_tzpc
Definition:
trustzone.h:36
exynos_tzpc::decprot3stat
u32 decprot3stat
Definition:
trustzone.h:48
exynos_tzpc::decprot2stat
u32 decprot2stat
Definition:
trustzone.h:45
exynos_tzpc::pcellid0
u32 pcellid0
Definition:
trustzone.h:56
exynos_tzpc::decprot2clr
u32 decprot2clr
Definition:
trustzone.h:47
exynos_tzpc::decprot1set
u32 decprot1set
Definition:
trustzone.h:43
exynos_tzpc::periphid2
u32 periphid2
Definition:
trustzone.h:54
exynos_tzpc::r0size
u32 r0size
Definition:
trustzone.h:37
exynos_tzpc::pcellid3
u32 pcellid3
Definition:
trustzone.h:59
exynos_tzpc::decprot1stat
u32 decprot1stat
Definition:
trustzone.h:42
exynos_tzpc::decprot0stat
u32 decprot0stat
Definition:
trustzone.h:39
exynos_tzpc::pcellid2
u32 pcellid2
Definition:
trustzone.h:58
exynos_tzpc::periphid0
u32 periphid0
Definition:
trustzone.h:52
exynos_tzpc::decprot0set
u32 decprot0set
Definition:
trustzone.h:40
exynos_tzpc::decprot3set
u32 decprot3set
Definition:
trustzone.h:49
exynos_tzpc::decprot0clr
u32 decprot0clr
Definition:
trustzone.h:41
exynos_tzpc::pcellid1
u32 pcellid1
Definition:
trustzone.h:57
exynos_tzpc::res1
u8 res1[0x7FC]
Definition:
trustzone.h:38
exynos_tzpc::decprot1clr
u32 decprot1clr
Definition:
trustzone.h:44
exynos_tzpc::periphid1
u32 periphid1
Definition:
trustzone.h:53
exynos_tzpc::periphid3
u32 periphid3
Definition:
trustzone.h:55
exynos_tzpc::decprot2set
u32 decprot2set
Definition:
trustzone.h:46
exynos_tzpc::decprot3clr
u32 decprot3clr
Definition:
trustzone.h:50
exynos_tzpc::res2
u8 res2[0x7B0]
Definition:
trustzone.h:51
trustzone_init
void trustzone_init(void)
Definition:
trustzone.c:7
check_member
check_member(exynos_tzpc, pcellid3, 0xffc)
src
soc
samsung
common
include
soc
trustzone.h
Generated by
1.9.1