| Freescale ARM64 SoCs like LS2080A have ARM TrustZone components like | |
| TZPC-BP147 (TrustZone Protection Controller) and TZASC-400 (TrustZone | |
| Address Space Controller). | |
| While most of the configuration related programming of these peripherals | |
| is left to a root-of-trust security software layer (running in EL3 | |
| privilege mode), but still some configurations of these peripherals | |
| might be required while the bootloader is executing in EL3 privilege | |
| mode. The following sections define how to turn on these features for | |
| LS2080A like SoCs. | |
| TZPC-BP147 (TrustZone Protection Controller) | |
| ============================================ | |
| - Depends on CONFIG_FSL_TZPC_BP147 configuration flag. | |
| - Separates Secure World and Normal World on-chip RAM (OCRAM) spaces. | |
| - Provides a programming model to set access control policy via the TZPC | |
| TZDECPROT Registers. | |
| TZASC-400 (TrustZone Address Space Controller) | |
| ============================================== | |
| - Depends on CONFIG_FSL_TZASC_400 configuration flag. | |
| - Separates Secure World and Normal World external memory spaces for bus masters | |
| such as processors and DMA-equipped peripherals. | |
| - Supports 8 fully programmable address regions, initially inactive at reset, | |
| and one base region, always active, that covers the remaining address space. |