Age | Commit message (Collapse) | Author |
|
the PCIE1 and PCIE2 share the same reset signal, if PCIE2 is power down,
PCIE1 will also be power down, so when we need to power up PCIE1, the PCIE2
need to power up too, only PCIE1 is power down, the PCIE2 power domain can
be power down too
Signed-off-by: Bai Ping <ping.bai@nxp.com>
|
|
No need to enable all PU power during boot up, module driver
will enable their power domain as needed.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
|
|
Set the MPROTx and OPACRx in AIPS4 configuration registers to allow user mode
and non-supervisor privilege level to access.
Signed-off-by: Ye Li <ye.li@nxp.com>
|
|
Reserve the memory region that is only can access by ATF. ATF is running
in this memory region, while masters in other partitions can't access it.
Signed-off-by: Ye Li <ye.li@nxp.com>
|
|
Change to search the ATF owned memory regions and assign them to non-secure
OS partition. Not allocate new memory region for each one.
Signed-off-by: Ye Li <ye.li@nxp.com>
|
|
The power domain id does NOT equal to the register bit
offset, so need to do a mapping here.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
|
|
Add hardware power down for all power domains. Make
imx_gpc_set_m_core_pgc usable for all MIX and PU PGC.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
|
|
Need to mask all M4 IRQ and override all PLLs/OSC
before entering DSM mode, but due to DRAM self-refresh
NOT ready, non-fast wakeup mode is NOT working, so
we still use fast wakeup mode, which means DSM mode
by default is NOT entered.
After DRAM self-refresh is added, we will switch
to non-fast wakeup mode to make DSM work.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
|
|
Move TZC EN into SPL, and add check in ATF.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
|
|
Add SNVS mapping to avoid system off failure.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
|
|
enable tzc380 for i.mx8mq
Signed-off-by: Peng Fan <peng.fan@nxp.com>
|
|
Change back BL31_LIMIT to 0x40020000,
because TZC380 could not support 4K aligned address.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
|
|
Add console init
Signed-off-by: Peng Fan <peng.fan@nxp.com>
|
|
Add system off support, linux kernel can issue
"poweroff" to power down system.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
|
|
Add wdog reset support.
Signed-off-by: Peng Fan <peng.fan@nxp.com>
|
|
Enable the non-privilege access for AIPS address space.
Signed-off-by: Fugang Duan <fugang.duan@nxp.com>
Signed-off-by: Bai Ping <ping.bai@nxp.com>
|
|
Add basic support for i.MX8MQ.
1. SMP support is ok.
2. basic suspend/resume support is ok.
Signed-off-by: Bai Ping <ping.bai@nxp.com>
|
|
As we already have control for debug console in platform_def.h,
so no need to un-initialize console in plat runtime setup, just
overwrite the common implementation with blank function.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
|
|
Signed-off-by: Nitin Garg <nitin.garg@nxp.com>
|
|
Not only the resources, but also the memory regions need to assign to
non-secure partition. Otherwise, when the boot partition is secured,
the OS non-secure partition can't access any memory.
This patch currently assign all memory to NS partition, since it is not
isolated, the current secure partition also can access them. In future,
may need to change the regions for reserving some memory in secure
partition for ATF and BL32.
Signed-off-by: Ye Li <ye.li@nxp.com>
|
|
Signed-off-by: Nitin Garg <nitin.garg@nxp.com>
|
|
missed bit 31 and 30 which are needed
Signed-off-by: Nitin Garg <nitin.garg@nxp.com>
|
|
Signed-off-by: Nitin Garg <nitin.garg@nxp.com>
|
|
Signed-off-by: Ranjani Vaidyanathan <Ranjani.Vaidyanathan@nxp.com>
|
|
Disable ATF console output for iMX8QM
Signed-off-by: Nitin Garg <nitin.garg@nxp.com>
|
|
Disable debug console by default on i.MX8QXP.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
|
|
Debug console baudrate should be 115200 for i.MX8QXP real board.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
|
|
Add necessary resources to secure partition for protection.
Also add in functionality to allow for register access
of some secure-owned peripherals.
These peripherals will still be protected from power or
clk changes.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Signed-off-by: Teo Hall <teo.hall@nxp.com>
|
|
Need to add support for booting up A72 cluster only,
so on need to check the cluster ID for primary CPU,
that means if CPU ID is 0, then it can be as primary
CPU.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
|
|
Signed-off-by: Nitin Garg <nitin.garg@nxp.com>
|
|
change MMU mapping to use the address of
the MU currently being used for ATF
Signed-off-by: Teo Hall <teo.hall@nxp.com>
|
|
add more resources to secure partition for
protection. Also add in functionality to allow
for register access of some secure-owned
peripherals.
These peripherals will still be protected from
power or clk changes.
Signed-off-by: Teo Hall <teo.hall@nxp.com>
|
|
add rm svc api and set aside separate MU for
secure api calls into SCU
Signed-off-by: Teo Hall <teo.hall@nxp.com>
|
|
add plat_crash_print_regs macro function to
allow building with debug
Signed-off-by: Teo Hall <teo.hall@nxp.com>
|
|
UART baudrate is 115200 on i.MX8QM ARM2 board.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
|
|
Add i.MX8QXP platform support.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Signed-off-by: Bai Ping <ping.bai@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
|
|
Add i.MX8QM platform support.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Signed-off-by: Bai Ping <ping.bai@nxp.com>
|
|
This patch adds i.MX8 SoCs ATFW support, including below
basic features:
* LPUART
* SCFW RPC
* SMP boot up
Each SoC will have its own platform definition and driver
to support.
Signed-off-by: Anson Huang <Anson.Huang@nxp.com>
Signed-off-by: Bai Ping <ping.bai@nxp.com>
|
|
This patch implements the platform APIs plat_get_rotpk_info,
plat_get_nv_ctr, plat_set_nv_ctr to invoke CryptoCell SBROM
APIs when ARM_CRYPTOCELL_INT is set.
Change-Id: I693556b3c7f42eceddd527abbe6111e499f55c45
Signed-off-by: Soby Mathew <soby.mathew@arm.com>
|
|
This patch makes the necessary changes to enable ARM platform to
successfully integrate CryptoCell during Trusted Board Boot. The
changes are as follows:
* A new build option `ARM_CRYPTOCELL_INTEG` is introduced to select
the CryptoCell crypto driver for Trusted Board boot.
* The TrustZone filter settings for Non Secure DRAM is modified
to allow CryptoCell to read this memory. This is required to
authenticate BL33 which is loaded into the Non Secure DDR.
* The CSS platforms are modified to use coherent stacks in BL1 and BL2
when CryptoCell crypto is selected. This is because CryptoCell makes
use of DMA to transfer data and the CryptoCell SBROM library allocates
buffers on the stack during signature/hash verification.
Change-Id: I1e6f6dcd1899784f1edeabfa2a9f279bbfb90e31
Signed-off-by: Soby Mathew <soby.mathew@arm.com>
|
|
rockchip: enable A53's erratum 855873 for rk3399
|
|
Apply workarounds for A53 Cat A Errata 835769 and 843419
|
|
Resolve signed-unsigned comparison issues
|
|
For rk3399, the L2ACTLR[14] is 0 by default, as ACE CCI-500 doesn't
support WriteEvict. and you will hit the condition L2ACTLR[3] with 0,
as the Evict transactions should propagate to CCI-500 since it has
snoop filters.
Maybe this erratum applies to all Cortex-A53 cores so far, especially
if RK3399's A53 is a r0p4. we should enable it to avoid data corruption,
Change-Id: Ib86933f1fc84f8919c8e43dac41af60fd0c3ce2f
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
|
|
juno/aarch32: Fix boot on Cortex A57 and A72
|
|
A recent commit 030567e6f51731982a7e71cbd387de93bc0e35fd added U()/ULL()
macro to TF constants. This has caused some signed-unsigned comparison
warnings / errors in the TF static analysis.
This patch addresses these issues by migrating impacted variables from
signed ints to unsigned ints and vice verse where applicable.
Change-Id: I4b4c739a3fa64aaf13b69ad1702c66ec79247e53
Signed-off-by: David Cunado <david.cunado@arm.com>
|
|
Fix Tegra CFLAGS usage
|
|
On Juno AArch32, the L2 cache may contain garbage after the warm reset
from AArch64 to AArch32. This is all fine until the MMU is configured
and the data caches enabled. To avoid fetching stale data from the L2
unified cache, invalidate it before the warm reset to AArch32 state.
Change-Id: I7d27e810692c02c3e83c9f31de67f6bae59a960a
Signed-off-by: Dimitris Papastamos <dimitris.papastamos@arm.com>
|
|
Before BL2 loads the SCP ram firmware, `SCP_BOOT_CFG_ADDR` specifies
the primary core. After the SCP ram firmware has started executing,
`SCP_BOOT_CFG_ADDR` is modified. This is not normally an issue but
the Juno AArch32 boot flow is a special case. BL1 does a warm reset
into AArch32 and the core jumps to the `sp_min` entrypoint. This is
effectively a `RESET_TO_SP_MIN` configuration. `sp_min` has to be
able to determine the primary core and hence we need to restore
`SCP_BOOT_CFG_ADDR` to the cold boot value before `sp_min` runs.
This magically worked when booting on A53 because the core index was
zero and it just so happened to match with the new value in
`SCP_BOOT_CFG_ADDR`.
Change-Id: I105425c680cf6238948625c1d1017b01d3517c01
Signed-off-by: Dimitris Papastamos <dimitris.papastamos@arm.com>
|
|
aarch64: Enable Statistical Profiling Extensions for lower ELs
|