xref: /openbmc/u-boot/doc/README.fsl-trustzone-components (revision 1670c8c219f6e47de624b4ed557b5a995265cd40)
1*44937214SPrabhakar KushwahaFreescale ARM64 SoCs like LS2080A have ARM TrustZone components like
29c66ce66SBhupesh SharmaTZPC-BP147 (TrustZone Protection Controller) and TZASC-400 (TrustZone
39c66ce66SBhupesh SharmaAddress Space Controller).
49c66ce66SBhupesh Sharma
59c66ce66SBhupesh SharmaWhile most of the configuration related programming of these peripherals
69c66ce66SBhupesh Sharmais left to a root-of-trust security software layer (running in EL3
79c66ce66SBhupesh Sharmaprivilege mode), but still some configurations of these peripherals
89c66ce66SBhupesh Sharmamight be required while the bootloader is executing in EL3 privilege
99c66ce66SBhupesh Sharmamode. The following sections define how to turn on these features for
10*44937214SPrabhakar KushwahaLS2080A like SoCs.
119c66ce66SBhupesh Sharma
129c66ce66SBhupesh SharmaTZPC-BP147 (TrustZone Protection Controller)
139c66ce66SBhupesh Sharma============================================
149c66ce66SBhupesh Sharma- Depends on CONFIG_FSL_TZPC_BP147 configuration flag.
159c66ce66SBhupesh Sharma- Separates Secure World and Normal World on-chip RAM (OCRAM) spaces.
169c66ce66SBhupesh Sharma- Provides a programming model to set access control policy via the TZPC
179c66ce66SBhupesh Sharma  TZDECPROT Registers.
189c66ce66SBhupesh Sharma
199c66ce66SBhupesh SharmaTZASC-400 (TrustZone Address Space Controller)
209c66ce66SBhupesh Sharma==============================================
219c66ce66SBhupesh Sharma- Depends on CONFIG_FSL_TZASC_400 configuration flag.
229c66ce66SBhupesh Sharma- Separates Secure World and Normal World external memory spaces for bus masters
239c66ce66SBhupesh Sharma  such as processors and DMA-equipped peripherals.
249c66ce66SBhupesh Sharma- Supports 8 fully programmable address regions, initially inactive at reset,
259c66ce66SBhupesh Sharma  and one base region, always active, that covers the remaining address space.
26