diff options
author | Chen-Yu Tsai <wens@csie.org> | 2016-01-06 15:13:06 +0800 |
---|---|---|
committer | Hans de Goede <hdegoede@redhat.com> | 2016-01-26 16:20:04 +0100 |
commit | 5823664fb84612ef511136b66059710cccd71bed (patch) | |
tree | c88ee3a6feae6e27ad6d0b0497fa4c023c6d159c /arch/arm/cpu/armv7/sunxi/tzpc.c | |
parent | fe4b71b2373cf0627fbd9d9767fb66059e67eea7 (diff) | |
download | talos-obmc-uboot-5823664fb84612ef511136b66059710cccd71bed.tar.gz talos-obmc-uboot-5823664fb84612ef511136b66059710cccd71bed.zip |
sunxi: Support Secure Memory Touch Arbiter (SMTA) in sun8i H3
Secure Memory Touch Arbiter is the same thing as the TrustZone
Protection Controller found on A31/A31s.
Access to many peripherals on the H3 can be controlled by the SMTA,
and the settings default to secure access only.
This patch supports the new settings, and sets them to allow non-secure
access.
Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Acked-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Diffstat (limited to 'arch/arm/cpu/armv7/sunxi/tzpc.c')
-rw-r--r-- | arch/arm/cpu/armv7/sunxi/tzpc.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/arch/arm/cpu/armv7/sunxi/tzpc.c b/arch/arm/cpu/armv7/sunxi/tzpc.c index 5c9c69b20b..6c8a0fd9a2 100644 --- a/arch/arm/cpu/armv7/sunxi/tzpc.c +++ b/arch/arm/cpu/armv7/sunxi/tzpc.c @@ -13,6 +13,15 @@ void tzpc_init(void) { struct sunxi_tzpc *tzpc = (struct sunxi_tzpc *)SUNXI_TZPC_BASE; +#ifdef CONFIG_MACH_SUN6I /* Enable non-secure access to the RTC */ - writel(SUNXI_TZPC_DECPORT0_RTC, &tzpc->decport0_set); + writel(SUN6I_TZPC_DECPORT0_RTC, &tzpc->decport0_set); +#endif + +#ifdef CONFIG_MACH_SUN8I_H3 + /* Enable non-secure access to all peripherals */ + writel(SUN8I_H3_TZPC_DECPORT0_ALL, &tzpc->decport0_set); + writel(SUN8I_H3_TZPC_DECPORT1_ALL, &tzpc->decport1_set); + writel(SUN8I_H3_TZPC_DECPORT2_ALL, &tzpc->decport2_set); +#endif } |