Send commitlog mailing list submissions to
[email protected]
To subscribe or unsubscribe via the World Wide Web, visit
http://lists.openmoko.org/mailman/listinfo/commitlog
or, via email, send a message with subject or body 'help' to
[EMAIL PROTECTED]
You can reach the person managing the list at
[EMAIL PROTECTED]
When replying, please edit your Subject line so it is more specific
than "Re: Contents of commitlog digest..."
Today's Topics:
1. r1589 - trunk/src/target/kernel/patches
([EMAIL PROTECTED])
2. r1590 - trunk/src/target/kernel/patches
([EMAIL PROTECTED])
3. r1591 - trunk/src/target/kernel/patches
([EMAIL PROTECTED])
4. r1592 - trunk/src/target/kernel/patches
([EMAIL PROTECTED])
--- Begin Message ---
Author: laforge
Date: 2007-04-01 10:30:06 +0200 (Sun, 01 Apr 2007)
New Revision: 1589
Modified:
trunk/src/target/kernel/patches/gta01-pcf50606.patch
Log:
* switch off power supplies that are not needed during SUSPEND
Modified: trunk/src/target/kernel/patches/gta01-pcf50606.patch
===================================================================
--- trunk/src/target/kernel/patches/gta01-pcf50606.patch 2007-03-31
18:46:54 UTC (rev 1588)
+++ trunk/src/target/kernel/patches/gta01-pcf50606.patch 2007-04-01
08:30:06 UTC (rev 1589)
@@ -3,8 +3,8 @@
Index: linux-2.6.20.4/drivers/i2c/chips/pcf50606.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.20.4/drivers/i2c/chips/pcf50606.c 2007-03-30
22:38:29.000000000 +0200
-@@ -0,0 +1,1856 @@
++++ linux-2.6.20.4/drivers/i2c/chips/pcf50606.c 2007-04-01
10:26:25.000000000 +0200
+@@ -0,0 +1,1860 @@
+/* Philips PCF50606 Power Management Unit (PMU) driver
+ *
+ * (C) 2006 by OpenMoko, Inc.
@@ -1732,6 +1732,7 @@
+{
+ struct i2c_client *client = to_i2c_client(dev);
+ struct pcf50606_data *pcf = i2c_get_clientdata(client);
++ int i;
+
+ /* The general idea is to power down all unused power supplies,
+ * and then mask all PCF50606 interrup sources but EXTONR, ONKEYF
@@ -1753,9 +1754,12 @@
+ pcf->standby_regs.adcc2 = __reg_read(pcf, PCF50606_REG_ADCC2);
+ pcf->standby_regs.pwmc1 = __reg_read(pcf, PCF50606_REG_PWMC1);
+
++ /* switch off power supplies that are not needed during suspend */
++ for (i = 0; i < __NUM_PCF50606_REGULATORS; i++) {
++ if (!(pcf->pdata->rails[i].flags & PMU_VRAIL_F_SUSPEND_ON))
++ pcf50606_onoff_set(pcf, i, 0);
++ }
+
-+ /* FIXME: switch off unneeded power supplies */
-+
+ pcf->standby_regs.int1m = __reg_read(pcf, PCF50606_REG_INT1M);
+ pcf->standby_regs.int2m = __reg_read(pcf, PCF50606_REG_INT2M);
+ pcf->standby_regs.int3m = __reg_read(pcf, PCF50606_REG_INT3M);
@@ -2203,8 +2207,8 @@
Index: linux-2.6.20.4/include/linux/pcf50606.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.20.4/include/linux/pcf50606.h 2007-03-30 22:26:05.000000000
+0200
-@@ -0,0 +1,87 @@
++++ linux-2.6.20.4/include/linux/pcf50606.h 2007-03-31 22:22:35.000000000
+0200
+@@ -0,0 +1,90 @@
+#ifndef _LINUX_PCF50606_H
+#define _LINUX_PCF50606_H
+
@@ -2251,8 +2255,11 @@
+extern void
+pcf50606_charge_fast(struct pcf50606_data *pcf, int on);
+
++#define PMU_VRAIL_F_SUSPEND_ON 0x00000001 /* Remains on during
suspend */
++#define PMU_VRAIL_F_UNUSED 0x00000002 /* This rail is not used */
+struct pmu_voltage_rail {
+ char *name;
++ unsigned int flags;
+ struct {
+ unsigned int init;
+ unsigned int max;
--- End Message ---
--- Begin Message ---
Author: laforge
Date: 2007-04-01 10:30:39 +0200 (Sun, 01 Apr 2007)
New Revision: 1590
Modified:
trunk/src/target/kernel/patches/gta01-core.patch
Log:
* correctly fill in pcf50606 platform data (for voltage limits and SUSPEND
configuration)
Modified: trunk/src/target/kernel/patches/gta01-core.patch
===================================================================
--- trunk/src/target/kernel/patches/gta01-core.patch 2007-04-01 08:30:06 UTC
(rev 1589)
+++ trunk/src/target/kernel/patches/gta01-core.patch 2007-04-01 08:30:39 UTC
(rev 1590)
@@ -3,8 +3,8 @@
Index: linux-2.6.20.4/arch/arm/mach-s3c2410/Kconfig
===================================================================
---- linux-2.6.20.4.orig/arch/arm/mach-s3c2410/Kconfig 2007-03-30
20:42:20.000000000 +0200
-+++ linux-2.6.20.4/arch/arm/mach-s3c2410/Kconfig 2007-03-30
22:46:27.000000000 +0200
+--- linux-2.6.20.4.orig/arch/arm/mach-s3c2410/Kconfig 2007-03-31
18:25:56.000000000 +0200
++++ linux-2.6.20.4/arch/arm/mach-s3c2410/Kconfig 2007-04-01
10:27:52.000000000 +0200
@@ -86,6 +86,14 @@
help
Say Y here if you are using the Armzone QT2410
@@ -22,8 +22,8 @@
select CPU_S3C2440
Index: linux-2.6.20.4/arch/arm/mach-s3c2410/Makefile
===================================================================
---- linux-2.6.20.4.orig/arch/arm/mach-s3c2410/Makefile 2007-03-30
20:42:20.000000000 +0200
-+++ linux-2.6.20.4/arch/arm/mach-s3c2410/Makefile 2007-03-30
22:46:27.000000000 +0200
+--- linux-2.6.20.4.orig/arch/arm/mach-s3c2410/Makefile 2007-03-31
18:25:56.000000000 +0200
++++ linux-2.6.20.4/arch/arm/mach-s3c2410/Makefile 2007-04-01
10:27:22.000000000 +0200
@@ -89,5 +89,6 @@
obj-$(CONFIG_MACH_NEXCODER_2440) += mach-nexcoder.o
obj-$(CONFIG_MACH_VSTMS) += mach-vstms.o
@@ -34,8 +34,8 @@
Index: linux-2.6.20.4/arch/arm/mach-s3c2410/mach-gta01.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.20.4/arch/arm/mach-s3c2410/mach-gta01.c 2007-03-30
22:47:43.000000000 +0200
-@@ -0,0 +1,579 @@
++++ linux-2.6.20.4/arch/arm/mach-s3c2410/mach-gta01.c 2007-04-01
10:27:37.000000000 +0200
+@@ -0,0 +1,723 @@
+/*
+ * linux/arch/arm/mach-s3c2410/mach-gta01.c
+ *
@@ -155,16 +155,159 @@
+ .r_fix_batt_par = 10000,
+ .r_sense_milli = 220,
+ .rails = {
++ [PCF50606_REGULATOR_D1REG] = {
++ .name = "bt_3v15",
++ .voltage = {
++ .init = 3150,
++ .max = 3150,
++ },
++ },
++ [PCF50606_REGULATOR_D2REG] = {
++ .name = "gl_2v5",
++ .voltage = {
++ .init = 2500,
++ .max = 2500,
++ },
++ },
++ [PCF50606_REGULATOR_D3REG] = {
++ .name = "stby_1v8",
++ .flags = PMU_VRAIL_F_SUSPEND_ON,
++ .voltage = {
++ .init = 1800,
++ .max = 2100,
++ },
++ },
+ [PCF50606_REGULATOR_DCD] = {
-+ .name = "dcd",
++ .name = "gl_1v5",
+ .voltage = {
++ .init = 1500,
++ .max = 1500,
++ },
++ },
++ [PCF50606_REGULATOR_DCDE] = {
++ .name = "io_3v3",
++ .flags = PMU_VRAIL_F_SUSPEND_ON,
++ .voltage = {
+ .init = 3300,
++ .max = 3330,
++ },
++ },
++ [PCF50606_REGULATOR_DCUD] = {
++ .name = "core_1v8",
++ .voltage = {
++ .init = 2100,
++ .max = 2100,
++ },
++ },
++ [PCF50606_REGULATOR_IOREG] = {
++ .name = "codec_3v3",
++ .voltage = {
++ .init = 3300,
+ .max = 3300,
+ },
+ },
++ [PCF50606_REGULATOR_LPREG] = {
++ .name = "lcm_3v3",
++ .voltage = {
++ .init = 3300,
++ .max = 3300,
++ },
++ }
+ },
+};
+
++static void mangle_pmu_pdata_by_system_rev(void)
++{
++ switch (system_rev) {
++ case GTA01Bv4_SYSTEM_REV:
++ break;
++ case GTA01Bv3_SYSTEM_REV:
++ case GTA01Bv2_SYSTEM_REV:
++ gta01_pcf_pdata.rails[PCF50606_REGULATOR_D3REG].name = "user1";
++ gta01_pcf_pdata.rails[PCF50606_REGULATOR_D3REG].flags =
++ PMU_VRAIL_F_UNUSED;
++ gta01_pcf_pdata.rails[PCF50606_REGULATOR_DCUD].flags =
++ PMU_VRAIL_F_SUSPEND_ON;
++ break;
++ case GTA01v04_SYSTEM_REV:
++ gta01_pcf_pdata.rails[PCF50606_REGULATOR_DCUD] = {
++ .name = "core_1v8"
++ .flags = PMU_VRAIL_F_SUSPEND_ON,
++ .voltage = {
++ .init = 1800,
++ .max = 1800,
++ },
++ };
++ gta01_pcf_pdata.rails[PCF50606_REGULATOR_D1REG] = {
++ .name = "vrf_3v",
++ .voltage = {
++ .init = 3000,
++ .max = 3000,
++ },
++ };
++ gta01_pcf_pdata.rails[PCF50606_REGULATOR_D3REG] = {
++ .name = "vtcxo_2v8",
++ .voltage = {
++ .init = 2800,
++ .max = 2800,
++ },
++ };
++ gta01_pcf_pdata.rails[PCF50606_REGULATOR_DCD] = {
++ .name = "gl_3v5",
++ .voltage = {
++ .init = 3500,
++ .max = 3500,
++ },
++ };
++ break;
++ case GTA01v3_SYSTEM_REV:
++ gta01_pcf_pdata.rails[PCF50606_REGULATOR_D1REG] = {
++ .name = "vrf_3v",
++ .voltage = {
++ .init = 3000,
++ .max = 3000,
++ },
++ };
++ gta01_pcf_pdata.rails[PCF50606_REGULATOR_D2REG] = {
++ .name = "sd_3v3",
++ .voltage = {
++ .init = 3300,
++ .max = 3300,
++ },
++ };
++ gta01_pcf_pdata.rails[PCF50606_REGULATOR_D3REG] = {
++ .name = "codec_3v3",
++ .voltage = {
++ .init = 3300,
++ .max = 3300,
++ },
++ };
++ gta01_pcf_pdata.rails[PCF50606_REGULATOR_DCD] = {
++ .name = "gpsio_3v3",
++ .voltage = {
++ .init = 3300,
++ .max = 3300,
++ },
++ };
++ gta01_pcf_pdata.rails[PCF50606_REGULATOR_DCUD] = {
++ .name = "core_1v8"
++ .flags = PMU_VRAIL_F_SUSPEND_ON,
++ .voltage = {
++ .init = 1800,
++ .max = 1800,
++ },
++ };
++ gta01_pcf_pdata.rails[PCF50606_REGULATOR_IOREG] = {
++ .name = "vtcxo_2v8"
++ .voltage = {
++ .init = 2800,
++ .max = 2800,
++ },
++ };
++ break;
++ }
++}
++
+static struct resource gta01_pmu_resources[] = {
+ [0] = {
+ .flags = IORESOURCE_IRQ,
@@ -598,6 +741,7 @@
+ gta01_led_resources[0].end = GTA01Bv4_GPIO_VIBRATOR_ON;
+ break;
+ }
++ mangle_pmu_pdata_by_system_rev();
+ platform_device_register(>a01_pmu_dev);
+ platform_device_register(>a01_led_dev);
+
@@ -618,7 +762,7 @@
Index: linux-2.6.20.4/include/asm-arm/arch-s3c2410/gta01.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.20.4/include/asm-arm/arch-s3c2410/gta01.h 2007-03-30
20:45:23.000000000 +0200
++++ linux-2.6.20.4/include/asm-arm/arch-s3c2410/gta01.h 2007-03-31
18:33:02.000000000 +0200
@@ -0,0 +1,69 @@
+#ifndef _GTA01_H
+#define _GTA01_H
--- End Message ---
--- Begin Message ---
Author: laforge
Date: 2007-04-01 10:50:04 +0200 (Sun, 01 Apr 2007)
New Revision: 1591
Modified:
trunk/src/target/kernel/patches/gta01-core.patch
Log:
introduce cfg_pmu_vrail() function, fix compile issue and saves code length
Modified: trunk/src/target/kernel/patches/gta01-core.patch
===================================================================
--- trunk/src/target/kernel/patches/gta01-core.patch 2007-04-01 08:30:39 UTC
(rev 1590)
+++ trunk/src/target/kernel/patches/gta01-core.patch 2007-04-01 08:50:04 UTC
(rev 1591)
@@ -3,8 +3,8 @@
Index: linux-2.6.20.4/arch/arm/mach-s3c2410/Kconfig
===================================================================
---- linux-2.6.20.4.orig/arch/arm/mach-s3c2410/Kconfig 2007-03-31
18:25:56.000000000 +0200
-+++ linux-2.6.20.4/arch/arm/mach-s3c2410/Kconfig 2007-04-01
10:27:52.000000000 +0200
+--- linux-2.6.20.4.orig/arch/arm/mach-s3c2410/Kconfig 2007-04-01
10:27:56.000000000 +0200
++++ linux-2.6.20.4/arch/arm/mach-s3c2410/Kconfig 2007-04-01
10:48:06.000000000 +0200
@@ -86,6 +86,14 @@
help
Say Y here if you are using the Armzone QT2410
@@ -22,8 +22,8 @@
select CPU_S3C2440
Index: linux-2.6.20.4/arch/arm/mach-s3c2410/Makefile
===================================================================
---- linux-2.6.20.4.orig/arch/arm/mach-s3c2410/Makefile 2007-03-31
18:25:56.000000000 +0200
-+++ linux-2.6.20.4/arch/arm/mach-s3c2410/Makefile 2007-04-01
10:27:22.000000000 +0200
+--- linux-2.6.20.4.orig/arch/arm/mach-s3c2410/Makefile 2007-04-01
10:27:56.000000000 +0200
++++ linux-2.6.20.4/arch/arm/mach-s3c2410/Makefile 2007-04-01
10:48:05.000000000 +0200
@@ -89,5 +89,6 @@
obj-$(CONFIG_MACH_NEXCODER_2440) += mach-nexcoder.o
obj-$(CONFIG_MACH_VSTMS) += mach-vstms.o
@@ -34,8 +34,8 @@
Index: linux-2.6.20.4/arch/arm/mach-s3c2410/mach-gta01.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.20.4/arch/arm/mach-s3c2410/mach-gta01.c 2007-04-01
10:27:37.000000000 +0200
-@@ -0,0 +1,723 @@
++++ linux-2.6.20.4/arch/arm/mach-s3c2410/mach-gta01.c 2007-04-01
10:48:17.000000000 +0200
+@@ -0,0 +1,681 @@
+/*
+ * linux/arch/arm/mach-s3c2410/mach-gta01.c
+ *
@@ -216,6 +216,16 @@
+ },
+};
+
++static void cfg_pmu_vrail(struct pmu_voltage_rail *vrail, char *name,
++ unsigned int flags, unsigned int init,
++ unsigned int max)
++{
++ vrail->name = name;
++ vrail->flags = flags;
++ vrail->voltage.init = init;
++ vrail->voltage.max = max;
++}
++
+static void mangle_pmu_pdata_by_system_rev(void)
+{
+ switch (system_rev) {
@@ -229,81 +239,29 @@
+ gta01_pcf_pdata.rails[PCF50606_REGULATOR_DCUD].flags =
+ PMU_VRAIL_F_SUSPEND_ON;
+ break;
-+ case GTA01v04_SYSTEM_REV:
-+ gta01_pcf_pdata.rails[PCF50606_REGULATOR_DCUD] = {
-+ .name = "core_1v8"
-+ .flags = PMU_VRAIL_F_SUSPEND_ON,
-+ .voltage = {
-+ .init = 1800,
-+ .max = 1800,
-+ },
-+ };
-+ gta01_pcf_pdata.rails[PCF50606_REGULATOR_D1REG] = {
-+ .name = "vrf_3v",
-+ .voltage = {
-+ .init = 3000,
-+ .max = 3000,
-+ },
-+ };
-+ gta01_pcf_pdata.rails[PCF50606_REGULATOR_D3REG] = {
-+ .name = "vtcxo_2v8",
-+ .voltage = {
-+ .init = 2800,
-+ .max = 2800,
-+ },
-+ };
-+ gta01_pcf_pdata.rails[PCF50606_REGULATOR_DCD] = {
-+ .name = "gl_3v5",
-+ .voltage = {
-+ .init = 3500,
-+ .max = 3500,
-+ },
-+ };
++ case GTA01v4_SYSTEM_REV:
++ cfg_pmu_vrail(>a01_pcf_pdata.rails[PCF50606_REGULATOR_DCUD],
++ "core_1v8", PMU_VRAIL_F_SUSPEND_ON, 1800, 1800);
++ cfg_pmu_vrail(>a01_pcf_pdata.rails[PCF50606_REGULATOR_D1REG],
++ "vrf_3v", 0, 3000, 3000);
++ cfg_pmu_vrail(>a01_pcf_pdata.rails[PCF50606_REGULATOR_D3REG],
++ "vtcxo_2v8", 0, 2800, 2800);
++ cfg_pmu_vrail(>a01_pcf_pdata.rails[PCF50606_REGULATOR_DCD],
++ "gl_3v5", 0, 3500, 3500);
+ break;
+ case GTA01v3_SYSTEM_REV:
-+ gta01_pcf_pdata.rails[PCF50606_REGULATOR_D1REG] = {
-+ .name = "vrf_3v",
-+ .voltage = {
-+ .init = 3000,
-+ .max = 3000,
-+ },
-+ };
-+ gta01_pcf_pdata.rails[PCF50606_REGULATOR_D2REG] = {
-+ .name = "sd_3v3",
-+ .voltage = {
-+ .init = 3300,
-+ .max = 3300,
-+ },
-+ };
-+ gta01_pcf_pdata.rails[PCF50606_REGULATOR_D3REG] = {
-+ .name = "codec_3v3",
-+ .voltage = {
-+ .init = 3300,
-+ .max = 3300,
-+ },
-+ };
-+ gta01_pcf_pdata.rails[PCF50606_REGULATOR_DCD] = {
-+ .name = "gpsio_3v3",
-+ .voltage = {
-+ .init = 3300,
-+ .max = 3300,
-+ },
-+ };
-+ gta01_pcf_pdata.rails[PCF50606_REGULATOR_DCUD] = {
-+ .name = "core_1v8"
-+ .flags = PMU_VRAIL_F_SUSPEND_ON,
-+ .voltage = {
-+ .init = 1800,
-+ .max = 1800,
-+ },
-+ };
-+ gta01_pcf_pdata.rails[PCF50606_REGULATOR_IOREG] = {
-+ .name = "vtcxo_2v8"
-+ .voltage = {
-+ .init = 2800,
-+ .max = 2800,
-+ },
-+ };
++ cfg_pmu_vrail(>a01_pcf_pdata.rails[PCF50606_REGULATOR_D1REG],
++ "vrf_3v", 0, 3000, 3000);
++ cfg_pmu_vrail(>a01_pcf_pdata.rails[PCF50606_REGULATOR_D2REG],
++ "sd_3v3", 0, 3300, 3300);
++ cfg_pmu_vrail(>a01_pcf_pdata.rails[PCF50606_REGULATOR_D3REG],
++ "codec_3v3", 0, 3300, 3300);
++ cfg_pmu_vrail(>a01_pcf_pdata.rails[PCF50606_REGULATOR_DCD],
++ "gpsio_3v3", 0, 3300, 3300);
++ cfg_pmu_vrail(>a01_pcf_pdata.rails[PCF50606_REGULATOR_DCUD],
++ "core_1v8", PMU_VRAIL_F_SUSPEND_ON, 1800, 1800);
++ cfg_pmu_vrail(>a01_pcf_pdata.rails[PCF50606_REGULATOR_IOREG],
++ "vtcxo_2v8", 0, 2800, 2800);
+ break;
+ }
+}
@@ -762,7 +720,7 @@
Index: linux-2.6.20.4/include/asm-arm/arch-s3c2410/gta01.h
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.20.4/include/asm-arm/arch-s3c2410/gta01.h 2007-03-31
18:33:02.000000000 +0200
++++ linux-2.6.20.4/include/asm-arm/arch-s3c2410/gta01.h 2007-04-01
10:29:43.000000000 +0200
@@ -0,0 +1,69 @@
+#ifndef _GTA01_H
+#define _GTA01_H
--- End Message ---
--- Begin Message ---
Author: laforge
Date: 2007-04-01 10:55:16 +0200 (Sun, 01 Apr 2007)
New Revision: 1592
Modified:
trunk/src/target/kernel/patches/gta01-pcf50606.patch
Log:
respect maximum values indicated int pcf50606 platform data
Modified: trunk/src/target/kernel/patches/gta01-pcf50606.patch
===================================================================
--- trunk/src/target/kernel/patches/gta01-pcf50606.patch 2007-04-01
08:50:04 UTC (rev 1591)
+++ trunk/src/target/kernel/patches/gta01-pcf50606.patch 2007-04-01
08:55:16 UTC (rev 1592)
@@ -3,8 +3,8 @@
Index: linux-2.6.20.4/drivers/i2c/chips/pcf50606.c
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.20.4/drivers/i2c/chips/pcf50606.c 2007-04-01
10:26:25.000000000 +0200
-@@ -0,0 +1,1860 @@
++++ linux-2.6.20.4/drivers/i2c/chips/pcf50606.c 2007-04-01
10:53:01.000000000 +0200
+@@ -0,0 +1,1863 @@
+/* Philips PCF50606 Power Management Unit (PMU) driver
+ *
+ * (C) 2006 by OpenMoko, Inc.
@@ -414,6 +414,9 @@
+ if (reg >= __NUM_PCF50606_REGULATORS)
+ return -EINVAL;
+
++ if (millivolts > pcf->pdata->rails[reg].voltage.max)
++ return -EINVAL;
++
+ switch (reg) {
+ case PCF50606_REGULATOR_DCD:
+ volt_bits = dcdc_voltage(millivolts);
--- End Message ---
_______________________________________________
commitlog mailing list
[email protected]
http://lists.openmoko.org/mailman/listinfo/commitlog