All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/5] ARM: dts: am43xx-epos-evm: Keep DCDC5 and DCDC6 always on
@ 2019-03-29 17:53 ` Andrew F. Davis
  0 siblings, 0 replies; 12+ messages in thread
From: Andrew F. Davis @ 2019-03-29 17:53 UTC (permalink / raw)
  To: Benoît Cousson, Tony Lindgren, Kevin Hilman
  Cc: linux-omap, linux-kernel, Andrew F . Davis

From: Kabir Sahane <x0153567@ti.com>

These regulator outputs are needed even in deep sleep modes to prevent
low-voltage detection events. Make these always ON to avoid this.

Signed-off-by: Kabir Sahane <x0153567@ti.com>
Signed-off-by: Andrew F. Davis <afd@ti.com>
---
 arch/arm/boot/dts/am43x-epos-evm.dts | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/arch/arm/boot/dts/am43x-epos-evm.dts b/arch/arm/boot/dts/am43x-epos-evm.dts
index 9dfd80e3b76e..7db5cf3facde 100644
--- a/arch/arm/boot/dts/am43x-epos-evm.dts
+++ b/arch/arm/boot/dts/am43x-epos-evm.dts
@@ -634,12 +634,16 @@
 			regulator-name = "v1_0bat";
 			regulator-min-microvolt = <1000000>;
 			regulator-max-microvolt = <1000000>;
+			regulator-boot-on;
+			regulator-always-on;
 		};
 
 		dcdc6: regulator-dcdc6 {
 			regulator-name = "v1_8bat";
 			regulator-min-microvolt = <1800000>;
 			regulator-max-microvolt = <1800000>;
+			regulator-boot-on;
+			regulator-always-on;
 		};
 
 		ldo1: regulator-ldo1 {
-- 
2.21.0

^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH 1/5] ARM: dts: am43xx-epos-evm: Keep DCDC5 and DCDC6 always on
@ 2019-03-29 17:53 ` Andrew F. Davis
  0 siblings, 0 replies; 12+ messages in thread
From: Andrew F. Davis @ 2019-03-29 17:53 UTC (permalink / raw)
  To: Benoît Cousson, Tony Lindgren, Kevin Hilman
  Cc: linux-omap, linux-kernel, Andrew F . Davis

From: Kabir Sahane <x0153567@ti.com>

These regulator outputs are needed even in deep sleep modes to prevent
low-voltage detection events. Make these always ON to avoid this.

Signed-off-by: Kabir Sahane <x0153567@ti.com>
Signed-off-by: Andrew F. Davis <afd@ti.com>
---
 arch/arm/boot/dts/am43x-epos-evm.dts | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/arch/arm/boot/dts/am43x-epos-evm.dts b/arch/arm/boot/dts/am43x-epos-evm.dts
index 9dfd80e3b76e..7db5cf3facde 100644
--- a/arch/arm/boot/dts/am43x-epos-evm.dts
+++ b/arch/arm/boot/dts/am43x-epos-evm.dts
@@ -634,12 +634,16 @@
 			regulator-name = "v1_0bat";
 			regulator-min-microvolt = <1000000>;
 			regulator-max-microvolt = <1000000>;
+			regulator-boot-on;
+			regulator-always-on;
 		};
 
 		dcdc6: regulator-dcdc6 {
 			regulator-name = "v1_8bat";
 			regulator-min-microvolt = <1800000>;
 			regulator-max-microvolt = <1800000>;
+			regulator-boot-on;
+			regulator-always-on;
 		};
 
 		ldo1: regulator-ldo1 {
-- 
2.21.0


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH 2/5] ARM: dts: am43xx-epos-evm: Keep DCDC3 regulator on in suspend to memory
  2019-03-29 17:53 ` Andrew F. Davis
@ 2019-03-29 17:53   ` Andrew F. Davis
  -1 siblings, 0 replies; 12+ messages in thread
From: Andrew F. Davis @ 2019-03-29 17:53 UTC (permalink / raw)
  To: Benoît Cousson, Tony Lindgren, Kevin Hilman
  Cc: linux-omap, linux-kernel, Andrew F . Davis

From: Mike Erdahl <m-erdahl@ti.com>

When going to suspend to ram mode (or rtc-only mode), the DDR regulator
must be told to stay on, else this rail will go down when the PMIC_EN
signal is deasserted.

Signed-off-by: Mike Erdahl <m-erdahl@ti.com>
Signed-off-by: Andrew F. Davis <afd@ti.com>
---
 arch/arm/boot/dts/am43x-epos-evm.dts | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/arch/arm/boot/dts/am43x-epos-evm.dts b/arch/arm/boot/dts/am43x-epos-evm.dts
index 7db5cf3facde..606b848d809f 100644
--- a/arch/arm/boot/dts/am43x-epos-evm.dts
+++ b/arch/arm/boot/dts/am43x-epos-evm.dts
@@ -620,6 +620,12 @@
 			regulator-name = "vdcdc3";
 			regulator-boot-on;
 			regulator-always-on;
+			regulator-state-mem {
+				regulator-on-in-suspend;
+			};
+			regulator-state-disk {
+				regulator-off-in-suspend;
+			};
 		};
 
 		dcdc4: regulator-dcdc4 {
-- 
2.21.0

^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH 2/5] ARM: dts: am43xx-epos-evm: Keep DCDC3 regulator on in suspend to memory
@ 2019-03-29 17:53   ` Andrew F. Davis
  0 siblings, 0 replies; 12+ messages in thread
From: Andrew F. Davis @ 2019-03-29 17:53 UTC (permalink / raw)
  To: Benoît Cousson, Tony Lindgren, Kevin Hilman
  Cc: linux-omap, linux-kernel, Andrew F . Davis

From: Mike Erdahl <m-erdahl@ti.com>

When going to suspend to ram mode (or rtc-only mode), the DDR regulator
must be told to stay on, else this rail will go down when the PMIC_EN
signal is deasserted.

Signed-off-by: Mike Erdahl <m-erdahl@ti.com>
Signed-off-by: Andrew F. Davis <afd@ti.com>
---
 arch/arm/boot/dts/am43x-epos-evm.dts | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/arch/arm/boot/dts/am43x-epos-evm.dts b/arch/arm/boot/dts/am43x-epos-evm.dts
index 7db5cf3facde..606b848d809f 100644
--- a/arch/arm/boot/dts/am43x-epos-evm.dts
+++ b/arch/arm/boot/dts/am43x-epos-evm.dts
@@ -620,6 +620,12 @@
 			regulator-name = "vdcdc3";
 			regulator-boot-on;
 			regulator-always-on;
+			regulator-state-mem {
+				regulator-on-in-suspend;
+			};
+			regulator-state-disk {
+				regulator-off-in-suspend;
+			};
 		};
 
 		dcdc4: regulator-dcdc4 {
-- 
2.21.0


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH 3/5] ARM: dts: am43xx-epos-evm: Add matrix keypad as wakeup source
  2019-03-29 17:53 ` Andrew F. Davis
@ 2019-03-29 17:53   ` Andrew F. Davis
  -1 siblings, 0 replies; 12+ messages in thread
From: Andrew F. Davis @ 2019-03-29 17:53 UTC (permalink / raw)
  To: Benoît Cousson, Tony Lindgren, Kevin Hilman
  Cc: linux-omap, linux-kernel, Andrew F . Davis

Mark matrix-keypad as a wakeup source.

Signed-off-by: Andrew F. Davis <afd@ti.com>
---
 arch/arm/boot/dts/am43x-epos-evm.dts | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/boot/dts/am43x-epos-evm.dts b/arch/arm/boot/dts/am43x-epos-evm.dts
index 606b848d809f..9b8b132b04e1 100644
--- a/arch/arm/boot/dts/am43x-epos-evm.dts
+++ b/arch/arm/boot/dts/am43x-epos-evm.dts
@@ -80,6 +80,7 @@
 		pinctrl-names = "default", "sleep";
 		pinctrl-0 = <&matrix_keypad_default>;
 		pinctrl-1 = <&matrix_keypad_sleep>;
+		wakeup-source;
 
 		row-gpios = <&gpio0 12 GPIO_ACTIVE_HIGH		/* Bank0, pin12 */
 			     &gpio0 13 GPIO_ACTIVE_HIGH		/* Bank0, pin13 */
-- 
2.21.0

^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH 3/5] ARM: dts: am43xx-epos-evm: Add matrix keypad as wakeup source
@ 2019-03-29 17:53   ` Andrew F. Davis
  0 siblings, 0 replies; 12+ messages in thread
From: Andrew F. Davis @ 2019-03-29 17:53 UTC (permalink / raw)
  To: Benoît Cousson, Tony Lindgren, Kevin Hilman
  Cc: linux-omap, linux-kernel, Andrew F . Davis

Mark matrix-keypad as a wakeup source.

Signed-off-by: Andrew F. Davis <afd@ti.com>
---
 arch/arm/boot/dts/am43x-epos-evm.dts | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/arm/boot/dts/am43x-epos-evm.dts b/arch/arm/boot/dts/am43x-epos-evm.dts
index 606b848d809f..9b8b132b04e1 100644
--- a/arch/arm/boot/dts/am43x-epos-evm.dts
+++ b/arch/arm/boot/dts/am43x-epos-evm.dts
@@ -80,6 +80,7 @@
 		pinctrl-names = "default", "sleep";
 		pinctrl-0 = <&matrix_keypad_default>;
 		pinctrl-1 = <&matrix_keypad_sleep>;
+		wakeup-source;
 
 		row-gpios = <&gpio0 12 GPIO_ACTIVE_HIGH		/* Bank0, pin12 */
 			     &gpio0 13 GPIO_ACTIVE_HIGH		/* Bank0, pin13 */
-- 
2.21.0


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH 4/5] ARM: OMAP: Wakeupgen: AM43xx HS devices should save context like non-HS
  2019-03-29 17:53 ` Andrew F. Davis
@ 2019-03-29 17:53   ` Andrew F. Davis
  -1 siblings, 0 replies; 12+ messages in thread
From: Andrew F. Davis @ 2019-03-29 17:53 UTC (permalink / raw)
  To: Benoît Cousson, Tony Lindgren, Kevin Hilman
  Cc: linux-omap, linux-kernel, Andrew F . Davis

Unlike some previous generation devices, AM43xx HS IRQ and Wakegen
context is handled by the ROM for us, and no secure service call
is needed or supported. Non-GP AM43xx devices should take the
same path as GP.

Signed-off-by: Andrew F. Davis <afd@ti.com>
---
 arch/arm/mach-omap2/omap-wakeupgen.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/arm/mach-omap2/omap-wakeupgen.c b/arch/arm/mach-omap2/omap-wakeupgen.c
index 17558be4bf0a..7dcbe1736f7e 100644
--- a/arch/arm/mach-omap2/omap-wakeupgen.c
+++ b/arch/arm/mach-omap2/omap-wakeupgen.c
@@ -436,13 +436,13 @@ static int irq_notifier(struct notifier_block *self, unsigned long cmd,	void *v)
 {
 	switch (cmd) {
 	case CPU_CLUSTER_PM_ENTER:
-		if (omap_type() == OMAP2_DEVICE_TYPE_GP)
+		if (omap_type() == OMAP2_DEVICE_TYPE_GP || soc_is_am43xx())
 			irq_save_context();
 		else
 			irq_save_secure_context();
 		break;
 	case CPU_CLUSTER_PM_EXIT:
-		if (omap_type() == OMAP2_DEVICE_TYPE_GP)
+		if (omap_type() == OMAP2_DEVICE_TYPE_GP || soc_is_am43xx())
 			irq_restore_context();
 		break;
 	}
-- 
2.21.0

^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH 4/5] ARM: OMAP: Wakeupgen: AM43xx HS devices should save context like non-HS
@ 2019-03-29 17:53   ` Andrew F. Davis
  0 siblings, 0 replies; 12+ messages in thread
From: Andrew F. Davis @ 2019-03-29 17:53 UTC (permalink / raw)
  To: Benoît Cousson, Tony Lindgren, Kevin Hilman
  Cc: linux-omap, linux-kernel, Andrew F . Davis

Unlike some previous generation devices, AM43xx HS IRQ and Wakegen
context is handled by the ROM for us, and no secure service call
is needed or supported. Non-GP AM43xx devices should take the
same path as GP.

Signed-off-by: Andrew F. Davis <afd@ti.com>
---
 arch/arm/mach-omap2/omap-wakeupgen.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/arm/mach-omap2/omap-wakeupgen.c b/arch/arm/mach-omap2/omap-wakeupgen.c
index 17558be4bf0a..7dcbe1736f7e 100644
--- a/arch/arm/mach-omap2/omap-wakeupgen.c
+++ b/arch/arm/mach-omap2/omap-wakeupgen.c
@@ -436,13 +436,13 @@ static int irq_notifier(struct notifier_block *self, unsigned long cmd,	void *v)
 {
 	switch (cmd) {
 	case CPU_CLUSTER_PM_ENTER:
-		if (omap_type() == OMAP2_DEVICE_TYPE_GP)
+		if (omap_type() == OMAP2_DEVICE_TYPE_GP || soc_is_am43xx())
 			irq_save_context();
 		else
 			irq_save_secure_context();
 		break;
 	case CPU_CLUSTER_PM_EXIT:
-		if (omap_type() == OMAP2_DEVICE_TYPE_GP)
+		if (omap_type() == OMAP2_DEVICE_TYPE_GP || soc_is_am43xx())
 			irq_restore_context();
 		break;
 	}
-- 
2.21.0


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH 5/5] ARM: OMAP2+: pm33xx-core: Do not Turn OFF CEFUSE as PPA may be using it
  2019-03-29 17:53 ` Andrew F. Davis
@ 2019-03-29 17:53   ` Andrew F. Davis
  -1 siblings, 0 replies; 12+ messages in thread
From: Andrew F. Davis @ 2019-03-29 17:53 UTC (permalink / raw)
  To: Benoît Cousson, Tony Lindgren, Kevin Hilman
  Cc: linux-omap, linux-kernel, Andrew F . Davis

From: Kabir Sahane <x0153567@ti.com>

This area is used to store keys by HSPPA in case of AM438x SOC. Leave it
active.

Signed-off-by: Kabir Sahane <x0153567@ti.com>
Signed-off-by: Andrew F. Davis <afd@ti.com>
---
 arch/arm/mach-omap2/pm33xx-core.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/arch/arm/mach-omap2/pm33xx-core.c b/arch/arm/mach-omap2/pm33xx-core.c
index 724cf5774a6c..c93b6efd565f 100644
--- a/arch/arm/mach-omap2/pm33xx-core.c
+++ b/arch/arm/mach-omap2/pm33xx-core.c
@@ -51,10 +51,12 @@ static int amx3_common_init(void)
 
 	/* CEFUSE domain can be turned off post bootup */
 	cefuse_pwrdm = pwrdm_lookup("cefuse_pwrdm");
-	if (cefuse_pwrdm)
-		omap_set_pwrdm_state(cefuse_pwrdm, PWRDM_POWER_OFF);
-	else
+	if (!cefuse_pwrdm)
 		pr_err("PM: Failed to get cefuse_pwrdm\n");
+	else if (omap_type() != OMAP2_DEVICE_TYPE_GP)
+		pr_info("PM: Leaving EFUSE power domain active\n");
+	else
+		omap_set_pwrdm_state(cefuse_pwrdm, PWRDM_POWER_OFF);
 
 	return 0;
 }
-- 
2.21.0

^ permalink raw reply related	[flat|nested] 12+ messages in thread

* [PATCH 5/5] ARM: OMAP2+: pm33xx-core: Do not Turn OFF CEFUSE as PPA may be using it
@ 2019-03-29 17:53   ` Andrew F. Davis
  0 siblings, 0 replies; 12+ messages in thread
From: Andrew F. Davis @ 2019-03-29 17:53 UTC (permalink / raw)
  To: Benoît Cousson, Tony Lindgren, Kevin Hilman
  Cc: linux-omap, linux-kernel, Andrew F . Davis

From: Kabir Sahane <x0153567@ti.com>

This area is used to store keys by HSPPA in case of AM438x SOC. Leave it
active.

Signed-off-by: Kabir Sahane <x0153567@ti.com>
Signed-off-by: Andrew F. Davis <afd@ti.com>
---
 arch/arm/mach-omap2/pm33xx-core.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/arch/arm/mach-omap2/pm33xx-core.c b/arch/arm/mach-omap2/pm33xx-core.c
index 724cf5774a6c..c93b6efd565f 100644
--- a/arch/arm/mach-omap2/pm33xx-core.c
+++ b/arch/arm/mach-omap2/pm33xx-core.c
@@ -51,10 +51,12 @@ static int amx3_common_init(void)
 
 	/* CEFUSE domain can be turned off post bootup */
 	cefuse_pwrdm = pwrdm_lookup("cefuse_pwrdm");
-	if (cefuse_pwrdm)
-		omap_set_pwrdm_state(cefuse_pwrdm, PWRDM_POWER_OFF);
-	else
+	if (!cefuse_pwrdm)
 		pr_err("PM: Failed to get cefuse_pwrdm\n");
+	else if (omap_type() != OMAP2_DEVICE_TYPE_GP)
+		pr_info("PM: Leaving EFUSE power domain active\n");
+	else
+		omap_set_pwrdm_state(cefuse_pwrdm, PWRDM_POWER_OFF);
 
 	return 0;
 }
-- 
2.21.0


^ permalink raw reply related	[flat|nested] 12+ messages in thread

* Re: [PATCH 1/5] ARM: dts: am43xx-epos-evm: Keep DCDC5 and DCDC6 always on
  2019-03-29 17:53 ` Andrew F. Davis
                   ` (4 preceding siblings ...)
  (?)
@ 2019-04-09 15:08 ` Tony Lindgren
  -1 siblings, 0 replies; 12+ messages in thread
From: Tony Lindgren @ 2019-04-09 15:08 UTC (permalink / raw)
  To: Andrew F. Davis
  Cc: Benoît Cousson, Kevin Hilman, linux-omap, linux-kernel

* Andrew F. Davis <afd@ti.com> [190329 10:53]:
> From: Kabir Sahane <x0153567@ti.com>
> 
> These regulator outputs are needed even in deep sleep modes to prevent
> low-voltage detection events. Make these always ON to avoid this.

Thanks applying the three dts changes into omap-for-v5.2/dt.

Regards,

Tony

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH 4/5] ARM: OMAP: Wakeupgen: AM43xx HS devices should save context like non-HS
  2019-03-29 17:53   ` Andrew F. Davis
  (?)
@ 2019-04-09 15:08   ` Tony Lindgren
  -1 siblings, 0 replies; 12+ messages in thread
From: Tony Lindgren @ 2019-04-09 15:08 UTC (permalink / raw)
  To: Andrew F. Davis
  Cc: Benoît Cousson, Kevin Hilman, linux-omap, linux-kernel

* Andrew F. Davis <afd@ti.com> [190329 17:53]:
> Unlike some previous generation devices, AM43xx HS IRQ and Wakegen
> context is handled by the ROM for us, and no secure service call
> is needed or supported. Non-GP AM43xx devices should take the
> same path as GP.

Applying the two SoC related changes into omap-for-v5.2/soc.

Tony

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2019-04-09 15:08 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-03-29 17:53 [PATCH 1/5] ARM: dts: am43xx-epos-evm: Keep DCDC5 and DCDC6 always on Andrew F. Davis
2019-03-29 17:53 ` Andrew F. Davis
2019-03-29 17:53 ` [PATCH 2/5] ARM: dts: am43xx-epos-evm: Keep DCDC3 regulator on in suspend to memory Andrew F. Davis
2019-03-29 17:53   ` Andrew F. Davis
2019-03-29 17:53 ` [PATCH 3/5] ARM: dts: am43xx-epos-evm: Add matrix keypad as wakeup source Andrew F. Davis
2019-03-29 17:53   ` Andrew F. Davis
2019-03-29 17:53 ` [PATCH 4/5] ARM: OMAP: Wakeupgen: AM43xx HS devices should save context like non-HS Andrew F. Davis
2019-03-29 17:53   ` Andrew F. Davis
2019-04-09 15:08   ` Tony Lindgren
2019-03-29 17:53 ` [PATCH 5/5] ARM: OMAP2+: pm33xx-core: Do not Turn OFF CEFUSE as PPA may be using it Andrew F. Davis
2019-03-29 17:53   ` Andrew F. Davis
2019-04-09 15:08 ` [PATCH 1/5] ARM: dts: am43xx-epos-evm: Keep DCDC5 and DCDC6 always on Tony Lindgren

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.