public inbox for linux-omap@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 1/6] omap3: pm: re-program the sleep state of TRITON resources by modifying the REMAP register
@ 2010-01-19 17:35 x0080970
  2010-01-20 15:28 ` Mike Rapoport
  2010-01-21 22:53 ` Kevin Hilman
  0 siblings, 2 replies; 7+ messages in thread
From: x0080970 @ 2010-01-19 17:35 UTC (permalink / raw)
  To: linux-omap; +Cc: Lesly A M, Nishanth Menon, David Derrick, Samuel Ortiz

From: Lesly A M <x0080970@ti.com>

omap3: pm: re-program the sleep state of TRITON resources by modifying the REMAP register

Removed the warning print with checking order of scripts, since the order
is not important. Only the values configured in the register, which is pointing to
the starting address of each sequence should be correct.

Signed-off-by: Lesly A M <x0080970@ti.com>
Cc: Nishanth Menon <nm@ti.com>
Cc: David Derrick <dderrick@ti.com>
Cc: Samuel Ortiz <sameo@linux.intel.com>

---
 drivers/mfd/twl4030-power.c |   30 +++++++++++++++++++++++-------
 1 file changed, 23 insertions(+), 7 deletions(-)

Index: linux-omap-pm/drivers/mfd/twl4030-power.c
===================================================================
--- linux-omap-pm.orig/drivers/mfd/twl4030-power.c	2010-01-19 19:18:56.000000000 +0530
+++ linux-omap-pm/drivers/mfd/twl4030-power.c	2010-01-19 19:19:02.000000000 +0530
@@ -416,14 +416,35 @@
 		return err;
 	}
 
-	return 0;
+
+	/* Set the remap sleep cmd */
+	err = twl_i2c_read_u8(TWL4030_MODULE_PM_RECEIVER, &remap,
+					rconfig_addr + REMAP_OFFSET);
+	if (err < 0) {
+		printk(KERN_ERR "TWL4030 Resource %d remap could not read\n",
+							rconfig->resource);
+		return err;
+	}
+
+	if (rconfig->remap_sleep >= 0) {
+		remap &= ~SLEEP_STATE_MASK;
+		remap |= rconfig->remap_sleep;
+	}
+
+	err = twl_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER, remap,
+				rconfig_addr + REMAP_OFFSET);
+	if (err < 0) {
+		pr_err("TWL4030 failed to program remap sleep cmd \n");
+		return err;
+	}
+
+	return err;
 }
 
 static int __init load_twl4030_script(struct twl4030_script *tscript,
 	       u8 address)
 {
 	int err;
-	static int order;
 
 	/* Make sure the script isn't going beyond last valid address (0x3f) */
 	if ((address + tscript->size) > END_OF_SCRIPT) {
@@ -444,7 +465,6 @@
 		err = twl4030_config_wakeup12_sequence(address);
 		if (err)
 			goto out;
-		order = 1;
 	}
 	if (tscript->flags & TWL4030_WAKEUP3_SCRIPT) {
 		err = twl4030_config_wakeup3_sequence(address);
@@ -452,10 +472,6 @@
 			goto out;
 	}
 	if (tscript->flags & TWL4030_SLEEP_SCRIPT)
-		if (order)
-			pr_warning("TWL4030: Bad order of scripts (sleep "\
-					"script before wakeup) Leads to boot"\
-					"failure on some boards\n");
 		err = twl4030_config_sleep_sequence(address);
 out:
 	return err;

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

end of thread, other threads:[~2010-01-22 16:42 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-01-19 17:35 [PATCH v2 1/6] omap3: pm: re-program the sleep state of TRITON resources by modifying the REMAP register x0080970
2010-01-20 15:28 ` Mike Rapoport
2010-01-21  6:10   ` Lesly AM
2010-01-21 23:30     ` Mike Turquette
2010-01-22  0:10       ` Kevin Hilman
2010-01-22 16:41         ` Mike Turquette
2010-01-21 22:53 ` Kevin Hilman

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox