xref: /OK3568_Linux_fs/u-boot/doc/README.fsl-trustzone-components (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593SmuzhiyunFreescale ARM64 SoCs like LS2080A have ARM TrustZone components like
2*4882a593SmuzhiyunTZPC-BP147 (TrustZone Protection Controller) and TZASC-400 (TrustZone
3*4882a593SmuzhiyunAddress Space Controller).
4*4882a593Smuzhiyun
5*4882a593SmuzhiyunWhile most of the configuration related programming of these peripherals
6*4882a593Smuzhiyunis left to a root-of-trust security software layer (running in EL3
7*4882a593Smuzhiyunprivilege mode), but still some configurations of these peripherals
8*4882a593Smuzhiyunmight be required while the bootloader is executing in EL3 privilege
9*4882a593Smuzhiyunmode. The following sections define how to turn on these features for
10*4882a593SmuzhiyunLS2080A like SoCs.
11*4882a593Smuzhiyun
12*4882a593SmuzhiyunTZPC-BP147 (TrustZone Protection Controller)
13*4882a593Smuzhiyun============================================
14*4882a593Smuzhiyun- Depends on CONFIG_FSL_TZPC_BP147 configuration flag.
15*4882a593Smuzhiyun- Separates Secure World and Normal World on-chip RAM (OCRAM) spaces.
16*4882a593Smuzhiyun- Provides a programming model to set access control policy via the TZPC
17*4882a593Smuzhiyun  TZDECPROT Registers.
18*4882a593Smuzhiyun
19*4882a593SmuzhiyunTZASC-400 (TrustZone Address Space Controller)
20*4882a593Smuzhiyun==============================================
21*4882a593Smuzhiyun- Depends on CONFIG_FSL_TZASC_400 configuration flag.
22*4882a593Smuzhiyun- Separates Secure World and Normal World external memory spaces for bus masters
23*4882a593Smuzhiyun  such as processors and DMA-equipped peripherals.
24*4882a593Smuzhiyun- Supports 8 fully programmable address regions, initially inactive at reset,
25*4882a593Smuzhiyun  and one base region, always active, that covers the remaining address space.
26