u-boot/arch/arm/cpu/armv7
Peng Fan 35c4ce5e20 imx: mx7d: isolate resources to domain 0 for A7 core
In current design, if any peripheral was assigned to both A7 and M4,
it will receive ipg_stop or ipg_wait when any of the 2 platforms
enter low power mode. We will have a risk that, if A7 enter wait,
M4 enter stop, peripheral will have chance to get ipg_stop and ipg_wait
asserted same time. Also if M4 enters stop mode, A7 will have no
chance to access the peripheral.
There are 26 peripherals affected by this IC issue:
SIM2(sim2/emvsim2)
SIM1(sim1/emvsim1)
UART1/UART2/UART3/UART4/UART5/UART6/UART7
SAI1/SAI2/SAI3
WDOG1/WDOG2/WDOG3/WDOG4
GPT1/GPT2/GPT3/GPT4
PWM1/PWM2/PWM3/PWM4
ENET1/ENET2
Software Workaround:
The solution is to set the peripherals to Domain0 by A core, since A core
in Domain0. The peripherals which will be used by M4, will be set to Domain1
by M4.
For example, A core set WDOG4 to domain0, but when M4 boots up, M4 will
set WDOG4 to domain1, because M4 will use WDOG4.

So the peripherals are not shared by them. This way requires
the uboot implemented the RDC driver and set the 26 IPs above
to domain 0 only. M4 image will set the M4 to domain 1 and
set peripheral which it will use to domain 1.

This patch enables the CONFIG_IMX_RDC and CONFIG_IMX_BOOTAUX for
i.MX7D SABRESD board, and setup the 26 IP resources to domain 0.

Signed-off-by: Ye.Li <ye.li@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
2016-02-21 11:46:26 +01:00
..
am33xx am33xx/am43xx: Add platform data for GPIOs 2016-01-08 10:15:45 -05:00
bcm281xx bcm281xx: add support for "USB OTG clock" 2014-12-29 16:31:23 -05:00
bcmcygnus arm: bcmcygnus: Add bcmcygnus u-architecture 2014-08-30 07:46:40 -04:00
bcmnsp arm: bcmnsp: Add bcmnsp u-architecture 2014-08-30 07:46:40 -04:00
iproc-common arm: iproc: Initial commit of iproc architecture code 2014-08-30 07:46:40 -04:00
kona-common bcm281xx: add support for "USB OTG clock" 2014-12-29 16:31:23 -05:00
ls102xa Merge branch 'master' of git://git.denx.de/u-boot-net 2016-01-28 18:42:10 -05:00
mx5 arch: Make board selection choices optional 2015-05-12 18:10:02 -04:00
mx6 imx: mx6: implement functions to boot auxiliary core 2016-02-21 11:46:26 +01:00
mx7 imx: mx7d: isolate resources to domain 0 for A7 core 2016-02-21 11:46:26 +01:00
omap-common arm: omap-common: do not build timer when CONFIG_TIMER defined 2016-01-20 19:06:21 -07:00
omap3 omap-common: Common function to display die id, replacing omap3-specific version 2015-10-22 14:18:30 -04:00
omap4 omap4: omap_die_id support 2015-10-22 14:17:20 -04:00
omap5 board: ti: beagle_x15: Rename to indicate support for TI am57xx evms 2015-11-18 08:47:03 -05:00
rmobile arm: rmobile: Add Stout board support 2015-08-31 17:32:59 +09:00
s5p-common s5p: cpu_info: print "cpu-model" if exists in dts 2015-11-02 10:37:59 +09:00
stv0991 stv0991: configure clock & pad muxing for qspi 2015-07-03 13:50:53 +05:30
sunxi sunxi: Add support for LPDDR3 for A83T 2016-01-26 16:20:05 +01:00
vf610 imx: vf610 add get_cpu_rev 2015-09-02 15:39:51 +02:00
arch_timer.c arm: add support for arch timer 2014-04-17 17:24:38 -04:00
cache_v7.c arm: cache: Implement cache range check for v7 2016-01-31 16:32:56 +01:00
config.mk ARM: move -march=* and -mtune= options to arch/arm/Makefile 2015-03-27 16:55:22 +01:00
cp15.c ARM: Introduce erratum workaround for 454179 2015-03-13 09:28:48 -04:00
cpu.c arm: Turn of d-cache before i-cache 2015-09-02 21:28:25 -06:00
Kconfig tegra: Boot in non-secure mode by default 2015-05-13 09:24:16 -07:00
lowlevel_init.S ARM: SPL: Use CONFIG_SPL_DM not CONFIG_DM 2015-08-12 20:48:07 -04:00
Makefile arm: s5pc1xx: move SoC to mach-s5pc1xx 2015-11-30 17:17:01 +09:00
nonsec_virt.S arndale: Apply Cortex-A15 errata #773022 and #774769 2015-10-11 17:12:11 -04:00
psci.S ARM: Put target PC for PSCI CPU_ON on per-CPU stack 2015-05-13 09:24:14 -07:00
start.S ARM: Introduce erratum workaround for 801819 2015-08-12 20:47:49 -04:00
syslib.c ARM: OMAP: hide custom bit manipulation function sr32() 2014-04-17 14:39:54 -04:00
virt-dt.c virt-dt: Allow reservation of secure region when in a RAM carveout 2015-05-13 09:24:14 -07:00
virt-v7.c tegra124: Reserve secure RAM using MC_SECURITY_CFG{0, 1}_0 2015-05-13 09:24:15 -07:00