summaryrefslogtreecommitdiff
path: root/arch/arm/cpu/armv7m/stm32f4/soc.c
diff options
context:
space:
mode:
authorrev13@wp.pl <rev13@wp.pl>2015-03-01 11:44:40 (GMT)
committerTom Rini <trini@konsulko.com>2015-04-22 16:14:55 (GMT)
commiteaaa4f7e0e99b7bb1f5caefd96ade7c2ee891bf3 (patch)
tree1ff4b67be06c77e60b36a68c42b612d9b7802472 /arch/arm/cpu/armv7m/stm32f4/soc.c
parent12d8a729137ec58107236c472ddb14a819e7bd0b (diff)
downloadu-boot-eaaa4f7e0e99b7bb1f5caefd96ade7c2ee891bf3.tar.xz
ARMv7M: Add STM32F4 support
Signed-off-by: Kamil Lulko <rev13@wp.pl> Reviewed-by: Tom Rini <trini@konsulko.com>
Diffstat (limited to 'arch/arm/cpu/armv7m/stm32f4/soc.c')
-rw-r--r--arch/arm/cpu/armv7m/stm32f4/soc.c37
1 files changed, 37 insertions, 0 deletions
diff --git a/arch/arm/cpu/armv7m/stm32f4/soc.c b/arch/arm/cpu/armv7m/stm32f4/soc.c
new file mode 100644
index 0000000..202a126
--- /dev/null
+++ b/arch/arm/cpu/armv7m/stm32f4/soc.c
@@ -0,0 +1,37 @@
+/*
+ * (C) Copyright 2015
+ * Kamil Lulko, <rev13@wp.pl>
+ *
+ * SPDX-License-Identifier: GPL-2.0+
+ */
+
+#include <common.h>
+#include <asm/io.h>
+#include <asm/armv7m.h>
+#include <asm/arch/stm32.h>
+
+u32 get_cpu_rev(void)
+{
+ return 0;
+}
+
+int arch_cpu_init(void)
+{
+ configure_clocks();
+
+ /*
+ * Configure the memory protection unit (MPU) to allow full access to
+ * the whole 4GB address space.
+ */
+ writel(0, &V7M_MPU->rnr);
+ writel(0, &V7M_MPU->rbar);
+ writel((V7M_MPU_RASR_AP_RW_RW | V7M_MPU_RASR_SIZE_4GB
+ | V7M_MPU_RASR_EN), &V7M_MPU->rasr);
+ writel(V7M_MPU_CTRL_ENABLE | V7M_MPU_CTRL_HFNMIENA, &V7M_MPU->ctrl);
+
+ return 0;
+}
+
+void s_init(void)
+{
+}