Selaa lähdekoodia

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 <voice.shen@atmel.com>
Bo Shen 10 vuotta sitten
vanhempi
commit
8e7a96364b
1 muutettua tiedostoa jossa 9 lisäystä ja 0 poistoa
  1. 9 0
      arch/arm/mach-at91/armv7/sama5d4_devices.c

+ 9 - 0
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);