diff options
Diffstat (limited to 'target/linux/s3c24xx')
-rw-r--r-- | target/linux/s3c24xx/patches-2.6.28/005-dont-suspend-regulator.patch | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/target/linux/s3c24xx/patches-2.6.28/005-dont-suspend-regulator.patch b/target/linux/s3c24xx/patches-2.6.28/005-dont-suspend-regulator.patch new file mode 100644 index 0000000000..12204c847b --- /dev/null +++ b/target/linux/s3c24xx/patches-2.6.28/005-dont-suspend-regulator.patch @@ -0,0 +1,65 @@ +From: Balaji Rao <balajirrao@openmoko.org> +Date: Mon, 5 Jan 2009 10:33:28 +0000 (+0000) +Subject: pcf50633 remove suspend_enable/disable regulator functions +X-Git-Tag: fork-to-stable-2.6.29-rc2~142 +X-Git-Url: http://git.openmoko.org/?p=kernel.git;a=commitdiff_plain;h=276709515c384f4239c9479b56fcf008ae37eec8 + +pcf50633 remove suspend_enable/disable regulator functions + +Since we don't switch to PMU.standby, on suspend we should not +be defining these. + +Btw, this fixes the WSOD I observed on andy-tracking and also +gets rid of the regulator related backtrace seen upon resume. + +Signed-off-by: Balaji Rao <balajirrao@openmoko.org> +--- + +diff --git a/arch/arm/plat-s3c/pm.c b/arch/arm/plat-s3c/pm.c +index 422dea2..889f191 100644 +--- a/arch/arm/plat-s3c/pm.c ++++ b/arch/arm/plat-s3c/pm.c +@@ -18,7 +18,6 @@ + #include <linux/delay.h> + #include <linux/serial_core.h> + #include <linux/io.h> +-#include <linux/regulator/machine.h> + + #include <asm/cacheflush.h> + #include <mach/hardware.h> +@@ -353,22 +352,11 @@ static void s3c_pm_finish(void) + s3c_pm_check_cleanup(); + } + +-static int s3c_pm_begin(suspend_state_t state) +-{ +- int ret = 0; +- +-#ifdef CONFIG_REGULATOR +- ret = regulator_suspend_prepare(state); +-#endif +- return ret; +-} +- + static struct platform_suspend_ops s3c_pm_ops = { + .enter = s3c_pm_enter, + .prepare = s3c_pm_prepare, + .finish = s3c_pm_finish, + .valid = suspend_valid_only_mem, +- .begin = s3c_pm_begin, + }; + + /* s3c_pm_init +diff --git a/drivers/regulator/pcf50633-regulator.c b/drivers/regulator/pcf50633-regulator.c +index 343f43e..d284200 100644 +--- a/drivers/regulator/pcf50633-regulator.c ++++ b/drivers/regulator/pcf50633-regulator.c +@@ -249,8 +249,6 @@ struct regulator_ops pcf50633_regulator_ops = { + .enable = pcf50633_regulator_enable, + .disable = pcf50633_regulator_disable, + .is_enabled = pcf50633_regulator_is_enabled, +- .set_suspend_enable = pcf50633_regulator_enable, +- .set_suspend_disable = pcf50633_regulator_disable, + }; + + static struct regulator_desc regulators[] = { |