diff options
author | Jone Chou <jonechou@google.com> | 2023-04-14 15:47:48 +0800 |
---|---|---|
committer | Jone Chou <jonechou@google.com> | 2023-04-14 16:50:33 +0800 |
commit | 9b4bb088cf8f02bcebece637f0a1a6c33f3db29d (patch) | |
tree | 34c6667041f97838aaf63f9a1b0a722bcdd96355 | |
parent | 5777d2d815db479863c876936b488f66002a4f83 (diff) | |
download | reset-9b4bb088cf8f02bcebece637f0a1a6c33f3db29d.tar.gz |
power: reset: gs101: use PMU_INFORM2 for dump_gpr_modeandroid-u-qpr3-beta-2_r0.7android-u-qpr3-beta-2_r0.6android-u-qpr3-beta-2_r0.5android-u-qpr3-beta-2_r0.4android-u-qpr3-beta-2_r0.3android-u-qpr3-beta-2_r0.2android-u-qpr3-beta-2.1_r0.7android-u-qpr3-beta-2.1_r0.5android-u-qpr3-beta-2.1_r0.4android-u-qpr3-beta-2.1_r0.3android-u-qpr3-beta-2.1_r0.2android-u-qpr3-beta-2.1_r0.1android-u-qpr3-beta-1_r0.7android-u-qpr3-beta-1_r0.5android-u-qpr3-beta-1_r0.4android-u-qpr3-beta-1_r0.3android-u-qpr3-beta-1_r0.2android-u-qpr3-beta-1_r0.1android-u-qpr2-beta-3_r0.7android-u-qpr2-beta-3_r0.6android-u-qpr2-beta-3_r0.5android-u-qpr2-beta-3_r0.4android-u-qpr2-beta-3_r0.3android-u-qpr2-beta-3_r0.2android-u-qpr2-beta-3.1_r0.7android-u-qpr2-beta-3.1_r0.5android-u-qpr2-beta-3.1_r0.4android-u-qpr2-beta-3.1_r0.3android-u-qpr2-beta-3.1_r0.2android-u-qpr2-beta-3.1_r0.1android-u-qpr2-beta-2_r0.7android-u-qpr2-beta-2_r0.5android-u-qpr2-beta-2_r0.4android-u-qpr2-beta-2_r0.3android-u-qpr2-beta-2_r0.2android-u-qpr2-beta-2_r0.1android-u-qpr2-beta-1_r0.6android-u-qpr2-beta-1_r0.5android-u-qpr2-beta-1_r0.4android-u-qpr2-beta-1_r0.3android-u-qpr2-beta-1_r0.2android-u-qpr2-beta-1_r0.1android-u-qpr1-beta-2_r0.7android-u-qpr1-beta-2_r0.5android-u-qpr1-beta-2_r0.4android-u-qpr1-beta-2_r0.3android-u-qpr1-beta-2_r0.2android-u-qpr1-beta-2_r0.1android-u-qpr1-beta-2.2_r0.6android-u-qpr1-beta-2.2_r0.5android-u-qpr1-beta-2.2_r0.4android-u-qpr1-beta-2.2_r0.3android-u-qpr1-beta-2.2_r0.2android-u-qpr1-beta-2.2_r0.1android-u-qpr1-beta-2.1_r0.7android-u-qpr1-beta-2.1_r0.5android-u-qpr1-beta-2.1_r0.4android-u-qpr1-beta-2.1_r0.3android-u-qpr1-beta-2.1_r0.2android-u-qpr1-beta-2.1_r0.1android-u-qpr1-beta-1_r0.7android-u-qpr1-beta-1_r0.5android-u-qpr1-beta-1_r0.4android-u-qpr1-beta-1_r0.3android-u-qpr1-beta-1_r0.2android-u-qpr1-beta-1_r0.1android-u-beta-5.3_r0.7android-u-beta-5.3_r0.5android-u-beta-5.3_r0.4android-u-beta-5.3_r0.2android-u-beta-5.3_r0.1android-u-beta-4_r0.7android-u-beta-4_r0.5android-u-beta-4_r0.4android-u-beta-4_r0.3android-u-beta-4_r0.2android-u-beta-4_r0.1android-u-beta-3_r0.3android-u-beta-3_r0.2android-u-beta-2_r0.4android-u-beta-2_r0.3android-u-beta-2_r0.2android-u-beta-2.1_r0.4android-u-beta-2.1_r0.3android-u-beta-2.1_r0.2android-15-dp-2_r0.6android-15-dp-2_r0.5android-15-dp-2_r0.4android-15-dp-2_r0.3android-15-dp-2_r0.2android-15-dp-2_r0.1android-15-dp-1_r0.7android-15-dp-1_r0.5android-15-dp-1_r0.4android-15-dp-1_r0.3android-15-dp-1_r0.2android-15-dp-1_r0.1android-15-beta-2_r0.6android-15-beta-2_r0.5android-15-beta-2_r0.4android-15-beta-2_r0.3android-15-beta-2_r0.2android-15-beta-2_r0.1android-15-beta-1_r0.6android-15-beta-1_r0.5android-15-beta-1_r0.4android-15-beta-1_r0.3android-15-beta-1_r0.2android-15-beta-1_r0.1android-14.0.0_r0.97android-14.0.0_r0.96android-14.0.0_r0.95android-14.0.0_r0.94android-14.0.0_r0.93android-14.0.0_r0.92android-14.0.0_r0.76android-14.0.0_r0.75android-14.0.0_r0.74android-14.0.0_r0.73android-14.0.0_r0.72android-14.0.0_r0.71android-14.0.0_r0.7android-14.0.0_r0.66android-14.0.0_r0.65android-14.0.0_r0.64android-14.0.0_r0.63android-14.0.0_r0.62android-14.0.0_r0.61android-14.0.0_r0.6android-14.0.0_r0.56android-14.0.0_r0.55android-14.0.0_r0.54android-14.0.0_r0.53android-14.0.0_r0.52android-14.0.0_r0.51android-14.0.0_r0.5android-14.0.0_r0.44android-14.0.0_r0.43android-14.0.0_r0.42android-14.0.0_r0.41android-14.0.0_r0.40android-14.0.0_r0.4android-14.0.0_r0.39android-14.0.0_r0.37android-14.0.0_r0.36android-14.0.0_r0.35android-14.0.0_r0.34android-14.0.0_r0.33android-14.0.0_r0.31android-14.0.0_r0.3android-14.0.0_r0.25android-14.0.0_r0.23android-14.0.0_r0.22android-14.0.0_r0.21android-14.0.0_r0.2android-14.0.0_r0.19android-14.0.0_r0.17android-14.0.0_r0.16android-14.0.0_r0.15android-14.0.0_r0.14android-14.0.0_r0.13android-14.0.0_r0.11android-gs-tangorpro-android14-releaseandroid-gs-tangorpro-5.10-u-qpr1-beta2android-gs-tangorpro-5.10-u-beta5.3android-gs-tangorpro-5.10-u-beta4android-gs-tangorpro-5.10-android15-dpandroid-gs-tangorpro-5.10-android15-betaandroid-gs-tangorpro-5.10-android14-qpr3-betaandroid-gs-tangorpro-5.10-android14-qpr3android-gs-tangorpro-5.10-android14-qpr2-betaandroid-gs-tangorpro-5.10-android14-qpr2android-gs-tangorpro-5.10-android14-qpr1-betaandroid-gs-tangorpro-5.10-android14-qpr1android-gs-tangorpro-5.10-android14android-gs-raviole-android14-releaseandroid-gs-raviole-5.10-u-qpr1-beta2android-gs-raviole-5.10-u-beta5.3android-gs-raviole-5.10-u-beta4android-gs-raviole-5.10-u-beta3android-gs-raviole-5.10-u-beta2android-gs-raviole-5.10-android15-dpandroid-gs-raviole-5.10-android15-betaandroid-gs-raviole-5.10-android14-qpr3-betaandroid-gs-raviole-5.10-android14-qpr3android-gs-raviole-5.10-android14-qpr2-betaandroid-gs-raviole-5.10-android14-qpr2android-gs-raviole-5.10-android14-qpr1-betaandroid-gs-raviole-5.10-android14-qpr1android-gs-raviole-5.10-android14android-gs-pantah-android14-releaseandroid-gs-pantah-5.10-u-qpr1-beta2android-gs-pantah-5.10-u-beta5.3android-gs-pantah-5.10-u-beta4android-gs-pantah-5.10-u-beta2android-gs-pantah-5.10-android15-dpandroid-gs-pantah-5.10-android15-betaandroid-gs-pantah-5.10-android14-qpr3-betaandroid-gs-pantah-5.10-android14-qpr3android-gs-pantah-5.10-android14-qpr2-betaandroid-gs-pantah-5.10-android14-qpr2android-gs-pantah-5.10-android14-qpr1-betaandroid-gs-pantah-5.10-android14-qpr1android-gs-pantah-5.10-android14android-gs-lynx-android14-releaseandroid-gs-lynx-5.10-u-qpr1-beta2android-gs-lynx-5.10-u-beta4android-gs-lynx-5.10-android15-dpandroid-gs-lynx-5.10-android15-betaandroid-gs-lynx-5.10-android14-qpr3-betaandroid-gs-lynx-5.10-android14-qpr3android-gs-lynx-5.10-android14-qpr2-betaandroid-gs-lynx-5.10-android14-qpr2android-gs-lynx-5.10-android14-qpr1-betaandroid-gs-lynx-5.10-android14-qpr1android-gs-lynx-5.10-android14android-gs-felix-android14-releaseandroid-gs-felix-5.10-u-qpr1-beta2android-gs-felix-5.10-u-beta5.3android-gs-felix-5.10-u-beta4android-gs-felix-5.10-android15-dpandroid-gs-felix-5.10-android15-betaandroid-gs-felix-5.10-android14-qpr3-betaandroid-gs-felix-5.10-android14-qpr3android-gs-felix-5.10-android14-qpr2-betaandroid-gs-felix-5.10-android14-qpr2android-gs-felix-5.10-android14-qpr1-betaandroid-gs-felix-5.10-android14-qpr1android-gs-felix-5.10-android14android-gs-bluejay-android14-releaseandroid-gs-bluejay-5.10-u-qpr1-beta2android-gs-bluejay-5.10-u-beta5.3android-gs-bluejay-5.10-u-beta4android-gs-bluejay-5.10-u-beta3android-gs-bluejay-5.10-u-beta2android-gs-bluejay-5.10-android15-dpandroid-gs-bluejay-5.10-android15-betaandroid-gs-bluejay-5.10-android14-qpr3-betaandroid-gs-bluejay-5.10-android14-qpr3android-gs-bluejay-5.10-android14-qpr2-betaandroid-gs-bluejay-5.10-android14-qpr2android-gs-bluejay-5.10-android14-qpr1-betaandroid-gs-bluejay-5.10-android14-qpr1android-gs-bluejay-5.10-android14
Set DUMP_GPR_MODE to PMU_INFORM2 for all warm reset cases.
Bug: 276356519
Signed-off-by: Jone Chou <jonechou@google.com>
Change-Id: Ibfc017a71206f2472ef98d5b6d65a4887827eef2
-rw-r--r-- | exynos-gs101-reboot.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/exynos-gs101-reboot.c b/exynos-gs101-reboot.c index c9bd602..834b4e8 100644 --- a/exynos-gs101-reboot.c +++ b/exynos-gs101-reboot.c @@ -31,11 +31,14 @@ #define BMS_RSBM_VALID BIT(31) +#define DUMP_GPR_MODE (0xDAB) + static struct regmap *pmureg; static u32 warm_reboot_offset, warm_reboot_trigger; static u32 cold_reboot_offset, cold_reboot_trigger; static u32 reboot_cmd_offset; static u32 shutdown_offset, shutdown_trigger; +static u32 dump_gpr_offset; static phys_addr_t pmu_alive_base; static bool rsbm_supported; static bool force_warm_reboot_on_thermal_shutdown; @@ -199,6 +202,11 @@ static int exynos_restart_handler(struct notifier_block *this, unsigned long mod /* Do S/W Reset */ pr_emerg("%s: Exynos SoC reset right now\n", __func__); + if (reboot_mode == REBOOT_WARM || reboot_mode == REBOOT_SOFT) + set_priv_reg(pmu_alive_base + dump_gpr_offset, DUMP_GPR_MODE); + else + set_priv_reg(pmu_alive_base + dump_gpr_offset, 0x0); + if (s2mpg10_get_rev_id() == S2MPG10_EVT0 || !rsbm_supported || reboot_mode == REBOOT_WARM || reboot_mode == REBOOT_SOFT) { set_priv_reg(pmu_alive_base + warm_reboot_offset, warm_reboot_trigger); @@ -274,6 +282,11 @@ static int exynos_reboot_probe(struct platform_device *pdev) reboot_cmd_offset = EXYNOS_PMU_SYSIP_DAT0; } + if (of_property_read_u32(np, "dump-gpr-offset", &dump_gpr_offset) < 0) { + dev_err(dev, "failed to find dump-gpr-offset property\n"); + return -EINVAL; + } + force_warm_reboot_on_thermal_shutdown = of_property_read_bool(np, "force-warm-reboot-on-thermal-shutdown"); |