pmaports/device/community/linux-postmarketos-exynos4/0002-ARM-dts-exynos-Add-reboot-modes-to-midas.patch
Henrik Grimler 2c68614713
linux-postmarketos-exynos4: update patch 0005 after kernel upgrade (MR 3522)
Our patch needs to be adjusted after commit 58e4a2d27d32 ("extcon: Fix
extcon_get_extcon_dev() error handling").  Also generate all other
patch headers, and make it possible to apply patch 0008 and 0009 with
git am.
2022-10-15 13:10:31 +02:00

61 lines
1.9 KiB
Diff

From 81d08c1c70aac6ab399eacb6cd393f0de2a64108 Mon Sep 17 00:00:00 2001
From: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
Date: Wed, 4 Nov 2020 00:06:26 +0100
Subject: [PATCH 02/13] ARM: dts: exynos: Add reboot modes to midas
The values have been taken from the sec-reboot.c driver in
the 3.0.101 smdk4412 kernel used in LineageOS which is based
on Samsung source code releases for various devices.
Only the strict minimum modes have been added: the S-Boot 4.0
bootloader is nonfree, so exporting less well known modes could
potentially have unwanted consequences.
TODO:
- After reboot to download, heimdall doesn't work while it works
with the SMDK4412 kernel.
- Fix reboot without arguments (Test: Try "Reboot system now"
in a recovery after rebooting to the recovery)
Signed-off-by: Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
---
arch/arm/boot/dts/exynos4412-midas.dtsi | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/arch/arm/boot/dts/exynos4412-midas.dtsi b/arch/arm/boot/dts/exynos4412-midas.dtsi
index b967397a46c5..3167c51b6296 100644
--- a/arch/arm/boot/dts/exynos4412-midas.dtsi
+++ b/arch/arm/boot/dts/exynos4412-midas.dtsi
@@ -982,6 +982,29 @@ &mshc_0 {
&pmu_system_controller {
assigned-clocks = <&pmu_system_controller 0>;
assigned-clock-parents = <&clock CLK_XUSBXTI>;
+
+ /* S-Boot 4.0 */
+ #define S5P_INFORM2 0xF008
+ #define S5P_INFORM3 0x080C
+ #define BOOT_MODE_PREFIX 0x12345670
+ #define BOOT_NORMAL (BOOT_MODE_PREFIX | 0)
+ #define BOOT_DOWNLOAD (BOOT_MODE_PREFIX | 1)
+ #define BOOT_RECOVERY (BOOT_MODE_PREFIX | 4)
+
+ no-lpm-mode {
+ compatible = "syscon-reboot";
+ offset = <S5P_INFORM2>;
+ value = <0x12345678>;
+ };
+
+ reboot-mode {
+ compatible = "syscon-reboot-mode";
+ offset = <S5P_INFORM3>;
+ mode-normal = <BOOT_NORMAL>;
+ mode-recovery = <BOOT_RECOVERY>;
+ mode-bootloader = <BOOT_DOWNLOAD>;
+ mode-download = <BOOT_DOWNLOAD>;
+ };
};
&pinctrl_0 {
--
2.38.0