From 8e7a96364bc29073e5246d331a11ce8602d5d6a3 Mon Sep 17 00:00:00 2001 From: Bo Shen Date: Wed, 4 Mar 2015 13:48:47 +0800 Subject: [PATCH] ARM: atmel: sama5d4: set non-secured for peripherals When access the programmable secure peripherals address space, it needs set them to non-secured. Signed-off-by: Bo Shen --- arch/arm/mach-at91/armv7/sama5d4_devices.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/arch/arm/mach-at91/armv7/sama5d4_devices.c b/arch/arm/mach-at91/armv7/sama5d4_devices.c index ef39cb7e08..76301d6302 100644 --- a/arch/arm/mach-at91/armv7/sama5d4_devices.c +++ b/arch/arm/mach-at91/armv7/sama5d4_devices.c @@ -75,6 +75,15 @@ void matrix_init(void) writel(0x00000001, &h32mx->sassr[4]); writel(0x00000001, &h32mx->srtsr[4]); + /* Configure Programmable Security peripherals on matrix 64 */ + writel(readl(&h64mx->spselr[0]) | 0x00080000, &h64mx->spselr[0]); + writel(readl(&h64mx->spselr[1]) | 0x00180000, &h64mx->spselr[1]); + writel(readl(&h64mx->spselr[2]) | 0x00000008, &h64mx->spselr[2]); + + /* Configure Programmable Security peripherals on matrix 32 */ + writel(readl(&h32mx->spselr[0]) | 0xFFC00000, &h32mx->spselr[0]); + writel(readl(&h32mx->spselr[1]) | 0x60E3FFFF, &h32mx->spselr[1]); + /* Enable the write protect */ writel(ATMEL_MATRIX_WPMR_WPKEY | ATMEL_MATRIX_WPMR_WPEN, &h64mx->wpmr); writel(ATMEL_MATRIX_WPMR_WPKEY | ATMEL_MATRIX_WPMR_WPEN, &h32mx->wpmr); -- 2.39.5