[RFC PATCH 2/2] arm64: dts: allwinner: a64: Add reboot mode

19 views
Skip to first unread message

Samuel Holland

unread,
Jan 19, 2021, 12:52:09 AM1/19/21
to Maxime Ripard, Chen-Yu Tsai, Jernej Skrabec, Andre Przywara, Ondrej Jirman, linux...@googlegroups.com, Samuel Holland
Store a reboot mode in one of the RTC's general purpose registers.
This value can be used by U-Boot or another bootlader, for example to
enter FEL or fastboot mode.

Signed-off-by: Samuel Holland <sam...@sholland.org>
---
arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi | 17 +++++++++++++++++
1 file changed, 17 insertions(+)

diff --git a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
index 5dfa9b5e7ee3..9891ee996794 100644
--- a/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
+++ b/arch/arm64/boot/dts/allwinner/sun50i-a64.dtsi
@@ -155,6 +155,17 @@ psci {
method = "smc";
};

+ reboot-mode {
+ compatible = "nvmem-reboot-mode";
+ nvmem-cells = <&reboot_mode>;
+ nvmem-cell-names = "reboot-mode";
+
+ mode-normal = <0x0>;
+ mode-bootloader = <0xfa57b007>;
+ mode-fel = <0xe1fe1fe1>;
+ mode-ums = <0x05704a6e>;
+ };
+
scpi_protocol: scpi {
compatible = "arm,scpi";
mboxes = <&msgbox 2>, <&msgbox 3>;
@@ -1283,6 +1294,12 @@ rtc: rtc@1f00000 {
clock-output-names = "osc32k", "osc32k-out", "iosc";
clocks = <&osc32k>;
#clock-cells = <1>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+
+ reboot_mode: reboot-mode@0 {
+ reg = <0x0 0x4>;
+ };
};

r_intc: interrupt-controller@1f00c00 {
--
2.26.2

Reply all
Reply to author
Forward
0 new messages