summaryrefslogtreecommitdiffstats
path: root/target/linux/s3c24xx/patches-2.6.26/1200-From-c221bb27c8e22daa451e26353140777223d397d2-Mon-Se.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/s3c24xx/patches-2.6.26/1200-From-c221bb27c8e22daa451e26353140777223d397d2-Mon-Se.patch')
-rwxr-xr-xtarget/linux/s3c24xx/patches-2.6.26/1200-From-c221bb27c8e22daa451e26353140777223d397d2-Mon-Se.patch72
1 files changed, 72 insertions, 0 deletions
diff --git a/target/linux/s3c24xx/patches-2.6.26/1200-From-c221bb27c8e22daa451e26353140777223d397d2-Mon-Se.patch b/target/linux/s3c24xx/patches-2.6.26/1200-From-c221bb27c8e22daa451e26353140777223d397d2-Mon-Se.patch
new file mode 100755
index 0000000000..3331ed8ab7
--- /dev/null
+++ b/target/linux/s3c24xx/patches-2.6.26/1200-From-c221bb27c8e22daa451e26353140777223d397d2-Mon-Se.patch
@@ -0,0 +1,72 @@
+From 1e8163901ed89e4849a1c9e304d140e043cc2b9f Mon Sep 17 00:00:00 2001
+From: Holger Freyther <zecke@openmoko.org>
+Date: Fri, 25 Jul 2008 23:06:17 +0100
+Subject: [PATCH] From c221bb27c8e22daa451e26353140777223d397d2 Mon Sep 17 00:00:00 2001
+ Subject: [PATCH] [pcf50633] Report more events to userspace using the default callback
+
+Signed-Off-By: Holger Freyther <zecke@openmoko.org>
+---
+ drivers/i2c/chips/pcf50633.c | 20 +++++++++++++++-----
+ include/linux/pcf506xx.h | 1 +
+ 2 files changed, 16 insertions(+), 5 deletions(-)
+
+diff --git a/drivers/i2c/chips/pcf50633.c b/drivers/i2c/chips/pcf50633.c
+index 4be6cd3..ead4273 100644
+--- a/drivers/i2c/chips/pcf50633.c
++++ b/drivers/i2c/chips/pcf50633.c
+@@ -1036,25 +1036,35 @@ static void pcf50633_work(struct work_struct *work)
+ * this is really "battery not pulling current" -- it can
+ * appear with no battery attached
+ */
+- /* FIXME: signal this to userspace */
++ if (pcf->pdata->cb)
++ pcf->pdata->cb(&pcf->client.dev,
++ PCF50633_FEAT_MBC, PMU_EVT_CHARGER_CHANGE);
+ }
+ if (pcfirq[2] & PCF50633_INT3_THLIMON) {
+ DEBUGPC("THLIMON ");
+ pcf->flags |= PCF50633_F_CHG_PROT;
+- /* FIXME: signal this to userspace */
++ if (pcf->pdata->cb)
++ pcf->pdata->cb(&pcf->client.dev,
++ PCF50633_FEAT_MBC, PMU_EVT_CHARGER_CHANGE);
+ }
+ if (pcfirq[2] & PCF50633_INT3_THLIMOFF) {
+ DEBUGPC("THLIMOFF ");
+ pcf->flags &= ~PCF50633_F_CHG_PROT;
+- /* FIXME: signal this to userspace */
++ if (pcf->pdata->cb)
++ pcf->pdata->cb(&pcf->client.dev,
++ PCF50633_FEAT_MBC, PMU_EVT_CHARGER_CHANGE);
+ }
+ if (pcfirq[2] & PCF50633_INT3_USBLIMON) {
+ DEBUGPC("USBLIMON ");
+- /* FIXME: signal this to userspace */
++ if (pcf->pdata->cb)
++ pcf->pdata->cb(&pcf->client.dev,
++ PCF50633_FEAT_MBC, PMU_EVT_CHARGER_CHANGE);
+ }
+ if (pcfirq[2] & PCF50633_INT3_USBLIMOFF) {
+ DEBUGPC("USBLIMOFF ");
+- /* FIXME: signal this to userspace */
++ if (pcf->pdata->cb)
++ pcf->pdata->cb(&pcf->client.dev,
++ PCF50633_FEAT_MBC, PMU_EVT_CHARGER_CHANGE);
+ }
+ if (pcfirq[2] & PCF50633_INT3_ADCRDY) {
+ /* ADC result ready */
+diff --git a/include/linux/pcf506xx.h b/include/linux/pcf506xx.h
+index a1365e0..459b160 100644
+--- a/include/linux/pcf506xx.h
++++ b/include/linux/pcf506xx.h
+@@ -23,6 +23,7 @@ enum pmu_event {
+ #endif
+ PMU_EVT_CHARGER_ACTIVE,
+ PMU_EVT_CHARGER_IDLE,
++ PMU_EVT_CHARGER_CHANGE,
+ __NUM_PMU_EVTS
+ };
+
+--
+1.5.6.3
+