r4131 - branches/src/target/kernel/2.6.24.x/patches

werner at sita.openmoko.org werner at sita.openmoko.org
Thu Feb 28 13:16:44 CET 2008


Author: werner
Date: 2008-02-28 13:16:41 +0100 (Thu, 28 Feb 2008)
New Revision: 4131

Modified:
   branches/src/target/kernel/2.6.24.x/patches/gta02-core.patch
   branches/src/target/kernel/2.6.24.x/patches/pcf50633.patch
Log:
From: matt_hsu <matt_hsu at openmoko.org>
[PATCH] bug-889-8secs.patch

This patch introduces a power-down when the POWER button is held for
8 seconds, which fixed this bug:
http://bugzilla.openmoko.org/cgi-bin/bugzilla/show_bug.cgi?id=889



Modified: branches/src/target/kernel/2.6.24.x/patches/gta02-core.patch
===================================================================
--- branches/src/target/kernel/2.6.24.x/patches/gta02-core.patch	2008-02-28 11:51:34 UTC (rev 4130)
+++ branches/src/target/kernel/2.6.24.x/patches/gta02-core.patch	2008-02-28 12:16:41 UTC (rev 4131)
@@ -2,7 +2,7 @@
 ===================================================================
 --- /dev/null
 +++ linux-2.6.24/arch/arm/mach-s3c2440/mach-gta02.c
-@@ -0,0 +1,822 @@
+@@ -0,0 +1,823 @@
 +/*
 + * linux/arch/arm/mach-s3c2440/mach-gta02.c
 + *
@@ -155,7 +155,8 @@
 +			  PCF50633_FEAT_BATVOLT |
 +			  PCF50633_FEAT_BATTEMP |
 +			  PCF50633_FEAT_PWM_BL,
-+	.onkey_seconds_required = 3,
++	.onkey_seconds_sig_init = 4,
++	.onkey_seconds_shutdown = 8,
 +	.cb		= &pmu_callback,
 +	.r_fix_batt	= 10000,
 +	.r_fix_batt_par	= 10000,
@@ -932,7 +933,7 @@
 ===================================================================
 --- linux-2.6.24.orig/arch/arm/mach-s3c2440/Kconfig
 +++ linux-2.6.24/arch/arm/mach-s3c2440/Kconfig
-@@ -74,5 +74,20 @@
+@@ -74,5 +74,20 @@ config MACH_HXD8
  	help
  	   Say Y here if you are using the FIC Neo1973 GSM Phone
  
@@ -957,7 +958,7 @@
 ===================================================================
 --- linux-2.6.24.orig/arch/arm/mach-s3c2440/Makefile
 +++ linux-2.6.24/arch/arm/mach-s3c2440/Makefile
-@@ -22,3 +22,4 @@
+@@ -22,3 +22,4 @@ obj-$(CONFIG_MACH_RX3715)	+= mach-rx3715
  obj-$(CONFIG_ARCH_S3C2440)	+= mach-smdk2440.o
  obj-$(CONFIG_MACH_NEXCODER_2440) += mach-nexcoder.o
  obj-$(CONFIG_MACH_HXD8)		+= mach-hxd8.o
@@ -966,7 +967,7 @@
 ===================================================================
 --- linux-2.6.24.orig/drivers/leds/leds-neo1973-vibrator.c
 +++ linux-2.6.24/drivers/leds/leds-neo1973-vibrator.c
-@@ -113,7 +113,7 @@
+@@ -113,7 +113,7 @@ static int __init neo1973_vib_probe(stru
  	struct resource *r;
  	int rc;
  
@@ -979,7 +980,7 @@
 ===================================================================
 --- linux-2.6.24.orig/sound/soc/s3c24xx/neo1973_wm8753.c
 +++ linux-2.6.24/sound/soc/s3c24xx/neo1973_wm8753.c
-@@ -672,6 +672,12 @@
+@@ -672,6 +672,12 @@ static int __init neo1973_init(void)
  {
  	int ret;
  
@@ -992,7 +993,7 @@
  	neo1973_snd_device = platform_device_alloc("soc-audio", -1);
  	if (!neo1973_snd_device)
  		return -ENOMEM;
-@@ -700,5 +706,5 @@
+@@ -700,5 +706,5 @@ module_exit(neo1973_exit);
  
  /* Module information */
  MODULE_AUTHOR("Graeme Gregory, graeme.gregory at wolfsonmicro.com, www.wolfsonmicro.com");

Modified: branches/src/target/kernel/2.6.24.x/patches/pcf50633.patch
===================================================================
--- branches/src/target/kernel/2.6.24.x/patches/pcf50633.patch	2008-02-28 11:51:34 UTC (rev 4130)
+++ branches/src/target/kernel/2.6.24.x/patches/pcf50633.patch	2008-02-28 12:16:41 UTC (rev 4131)
@@ -34,7 +34,7 @@
 ===================================================================
 --- /dev/null
 +++ linux-2.6.24/drivers/i2c/chips/pcf50633.c
-@@ -0,0 +1,1958 @@
+@@ -0,0 +1,1963 @@
 +/* Philips PCF50633 Power Management Unit (PMU) driver
 + *
 + * (C) 2006-2007 by OpenMoko, Inc.
@@ -494,8 +494,8 @@
 +/* go into 'STANDBY' mode, i.e. power off the main CPU and peripherals */
 +void pcf50633_go_standby(void)
 +{
-+	reg_write(pcf50633_global, PCF50633_REG_OOCSHDWN,
-+		  PCF50633_OOCSHDWN_GOSTDBY);
++	reg_set_bit_mask(pcf50633_global, PCF50633_REG_OOCSHDWN,
++		  PCF50633_OOCSHDWN_GOSTDBY, PCF50633_OOCSHDWN_GOSTDBY);
 +}
 +EXPORT_SYMBOL_GPL(pcf50633_go_standby);
 +
@@ -707,12 +707,17 @@
 +				reg_read(pcf, PCF50633_REG_OOCSTAT));
 +			pcf->onkey_seconds++;
 +			if (pcf->onkey_seconds >=
-+			    pcf->pdata->onkey_seconds_required) {
++			    pcf->pdata->onkey_seconds_sig_init) {
 +				/* Ask init to do 'ctrlaltdel' */
 +				DEBUGPC("SIGINT(init) ");
 +				kill_proc(1, SIGINT, 1);
 +				/* FIXME: what if userspace doesn't shut down? */
 +			}
++			if (pcf->onkey_seconds >=
++				pcf->pdata->onkey_seconds_shutdown) {
++				DEBUGPC("Power Off ");
++				pcf50633_go_standby();
++			}
 +		}
 +	}
 +
@@ -1997,7 +2002,7 @@
 ===================================================================
 --- /dev/null
 +++ linux-2.6.24/include/linux/pcf50633.h
-@@ -0,0 +1,113 @@
+@@ -0,0 +1,114 @@
 +#ifndef _LINUX_PCF50633_H
 +#define _LINUX_PCF50633_H
 +
@@ -2093,7 +2098,8 @@
 +struct pcf50633_platform_data {
 +	/* general */
 +	unsigned int used_features;
-+	unsigned int onkey_seconds_required;
++	unsigned int onkey_seconds_sig_init;
++	unsigned int onkey_seconds_shutdown;
 +
 +	/* voltage regulator related */
 +	struct pmu_voltage_rail rails[__NUM_PCF50633_REGULATORS];





More information about the commitlog mailing list