]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
rockchip: rk322x: set the DDR region as non-secure in SPL
authorKever Yang <kever.yang@rock-chips.com>
Thu, 27 Jul 2017 04:53:59 +0000 (12:53 +0800)
committerPhilipp Tomsich <philipp.tomsich@theobroma-systems.com>
Sun, 13 Aug 2017 15:15:08 +0000 (17:15 +0200)
Disable the ddr secure region setting in SPL and the ddr memory
becomes non-secure, every one can access it. the trust firmware
like OPTEE should have the correct setting for it after SPL if
there is one.

Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Acked-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
arch/arm/mach-rockchip/rk322x-board-spl.c

index 15216c74b06fc14a40f061b510b60fc5aedede7b..4ddb8ba065f86828992783fdc5e31bb9e8505038 100644 (file)
@@ -41,6 +41,8 @@ static struct rk322x_grf * const grf = (void *)GRF_BASE;
                     CON_IOMUX_UART2SEL_MASK,
                     CON_IOMUX_UART2SEL_21 << CON_IOMUX_UART2SEL_SHIFT);
 }
+
+#define SGRF_DDR_CON0 0x10150000
 void board_init_f(ulong dummy)
 {
        struct udevice *dev;
@@ -71,6 +73,8 @@ void board_init_f(ulong dummy)
                return;
        }
 
+       /* Disable the ddr secure region setting to make it non-secure */
+       rk_clrreg(SGRF_DDR_CON0, 0x4000);
 #if defined(CONFIG_ROCKCHIP_SPL_BACK_TO_BROM) && !defined(CONFIG_SPL_BOARD_INIT)
        back_to_bootrom();
 #endif