[U-Boot] [PATCH] stm32mp: handle SYSRESET

Patrick Delaunay patrick.delaunay at st.com
Tue Mar 20 13:15:06 UTC 2018


Add support of sysreset with generic driver "syscon-reboot"
provided by RCC, for U-boot and for SPL.

Signed-off-by: Patrick Delaunay <patrick.delaunay at st.com>
---

 arch/arm/Kconfig                    | 1 +
 arch/arm/dts/stm32mp157-u-boot.dtsi | 4 ++++
 arch/arm/dts/stm32mp157.dtsi        | 7 +++++++
 arch/arm/mach-stm32mp/Kconfig       | 2 ++
 arch/arm/mach-stm32mp/cpu.c         | 4 ----
 5 files changed, 14 insertions(+), 4 deletions(-)

diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig
index 425f533..b59da78 100644
--- a/arch/arm/Kconfig
+++ b/arch/arm/Kconfig
@@ -1163,6 +1163,7 @@ config ARCH_STM32MP
 	select REGMAP
 	select SUPPORT_SPL
 	select SYSCON
+	select SYSRESET
 	select SYS_THUMB_BUILD
 	help
 	  Support for STM32MP SoC family developed by STMicroelectronics,
diff --git a/arch/arm/dts/stm32mp157-u-boot.dtsi b/arch/arm/dts/stm32mp157-u-boot.dtsi
index 7a9a4ce..1eca802 100644
--- a/arch/arm/dts/stm32mp157-u-boot.dtsi
+++ b/arch/arm/dts/stm32mp157-u-boot.dtsi
@@ -72,6 +72,10 @@
 	u-boot,dm-pre-reloc;
 };
 
+&rcc_reboot {
+	u-boot,dm-pre-reloc;
+};
+
 &pinctrl {
 	u-boot,dm-pre-reloc;
 };
diff --git a/arch/arm/dts/stm32mp157.dtsi b/arch/arm/dts/stm32mp157.dtsi
index 77953c8..b84899a 100644
--- a/arch/arm/dts/stm32mp157.dtsi
+++ b/arch/arm/dts/stm32mp157.dtsi
@@ -114,6 +114,13 @@
 				#reset-cells = <1>;
 				compatible = "st,stm32mp1-rcc-rst";
 			};
+
+			rcc_reboot: rcc-reboot at 50000000 {
+				compatible = "syscon-reboot";
+				regmap = <&rcc>;
+				offset = <0x404>;
+				mask = <0x1>;
+			};
 		};
 
 		pinctrl: pin-controller {
diff --git a/arch/arm/mach-stm32mp/Kconfig b/arch/arm/mach-stm32mp/Kconfig
index c1ad939..22e1d11 100644
--- a/arch/arm/mach-stm32mp/Kconfig
+++ b/arch/arm/mach-stm32mp/Kconfig
@@ -16,6 +16,7 @@ config SPL
 	select SPL_RESET_SUPPORT
 	select SPL_SERIAL_SUPPORT
 	select SPL_SYSCON
+	select SPL_DRIVERS_MISC_SUPPORT
 	imply SPL_LIBDISK_SUPPORT
 
 config SYS_SOC
@@ -29,6 +30,7 @@ config TARGET_STM32MP1
 	select CPU_V7_HAS_VIRT
 	select PINCTRL_STM32
 	select STM32_RESET
+	select SYSRESET_SYSCON
 	help
 		target STMicroelectronics SOC STM32MP1 family
 		STMicroelectronics MPU with core ARMv7
diff --git a/arch/arm/mach-stm32mp/cpu.c b/arch/arm/mach-stm32mp/cpu.c
index 4ba2aec..f9f3bf9 100644
--- a/arch/arm/mach-stm32mp/cpu.c
+++ b/arch/arm/mach-stm32mp/cpu.c
@@ -269,7 +269,3 @@ int arch_misc_init(void)
 
 	return 0;
 }
-
-void reset_cpu(ulong addr)
-{
-}
-- 
2.7.4



More information about the U-Boot mailing list