diff options
author | Peng Fan <Peng.Fan@freescale.com> | 2015-10-23 10:13:04 +0800 |
---|---|---|
committer | Stefano Babic <sbabic@denx.de> | 2015-11-12 17:31:16 +0100 |
commit | 7de4703691498e18c58f375d724818e4d0db6223 (patch) | |
tree | 080824ec20f880eda1c4500ee33a11b14107aca0 /arch/arm/cpu/armv7/mx7/soc.c | |
parent | d47cb0b61aa9e268f140455b2bc4421ae9e0b4bc (diff) | |
download | u-boot-7de4703691498e18c58f375d724818e4d0db6223.tar.gz u-boot-7de4703691498e18c58f375d724818e4d0db6223.tar.xz u-boot-7de4703691498e18c58f375d724818e4d0db6223.zip |
mx7: psci: add basic psci support
1. add basic psci support for imx7 chip.
2. support cpu_on and cpu_off.
3. switch to non-secure mode when boot linux kernel.
4. set csu allow accessing all peripherial register in non-secure mode.
Signed-off-by: Frank Li <Frank.Li@freescale.com>
Signed-off-by: Peng Fan <Peng.Fan@freescale.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
Diffstat (limited to 'arch/arm/cpu/armv7/mx7/soc.c')
-rw-r--r-- | arch/arm/cpu/armv7/mx7/soc.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/arch/arm/cpu/armv7/mx7/soc.c b/arch/arm/cpu/armv7/mx7/soc.c index a6224afedc..c777922e9d 100644 --- a/arch/arm/cpu/armv7/mx7/soc.c +++ b/arch/arm/cpu/armv7/mx7/soc.c @@ -122,10 +122,19 @@ u32 __weak get_board_rev(void) } #endif +/* enable all periherial can be accessed in nosec mode */ +static void init_csu(void) +{ + int i = 0; + for (i = 0; i < CSU_NUM_REGS; i++) + writel(CSU_INIT_SEC_LEVEL0, CSU_IPS_BASE_ADDR + i * 4); +} + int arch_cpu_init(void) { init_aips(); + init_csu(); /* Disable PDE bit of WMCR register */ imx_set_wdog_powerdown(false); |