aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAngus Ainslie <nytowl@openmoko.org>2009-08-04 20:52:15 -0600
committerAngus Ainslie <nytowl@openmoko.org>2009-08-04 20:52:15 -0600
commitdeee9492705b1ce10cee7c719f1d482711c3ff3e (patch)
tree4cd1dbeea679b49bafe548f8a6534414d8cc8de5
parenta2b50e2283070cc7caa8458e90aab21abf31787c (diff)
downloadopenembedded-deee9492705b1ce10cee7c719f1d482711c3ff3e.tar.gz
linux-openmoko-2.6.31: update openwrt patches
-rw-r--r--recipes/linux/linux-openmoko-2.6.30.1/014-neo1973_mach.patch5
-rw-r--r--recipes/linux/linux-openmoko-2.6.30.1/015-mach-gta02.patch3
-rw-r--r--recipes/linux/linux-openmoko-2.6.30.1/055-gta02-leds.patch14
-rw-r--r--recipes/linux/linux-openmoko-2.6.30.1/056-pcf50633.patch106
-rw-r--r--recipes/linux/linux-openmoko-2.6.30.1/057-lis302dl.patch7
-rw-r--r--recipes/linux/linux-openmoko-2.6.30.1/130-fix-s3c_gpiolib_getchip.patch13
-rw-r--r--recipes/linux/linux-openmoko-2.6.30.1/openwrt-files.tgzbin321502 -> 591550 bytes
-rw-r--r--recipes/linux/linux-openmoko_2.6.30.1.bb5
8 files changed, 132 insertions, 21 deletions
diff --git a/recipes/linux/linux-openmoko-2.6.30.1/014-neo1973_mach.patch b/recipes/linux/linux-openmoko-2.6.30.1/014-neo1973_mach.patch
index 5513f980cd..926af21b83 100644
--- a/recipes/linux/linux-openmoko-2.6.30.1/014-neo1973_mach.patch
+++ b/recipes/linux/linux-openmoko-2.6.30.1/014-neo1973_mach.patch
@@ -23,7 +23,7 @@
endif
--- a/arch/arm/mach-s3c2442/Makefile
+++ b/arch/arm/mach-s3c2442/Makefile
-@@ -14,3 +14,9 @@ obj-$(CONFIG_CPU_S3C2442) += clock.o
+@@ -14,3 +14,8 @@ obj-$(CONFIG_CPU_S3C2442) += clock.o
# Machine support
@@ -31,8 +31,7 @@
+ gta02-pm-gsm.o \
+ gta02-pm-gps.o \
+ gta02-pm-bt.o \
-+ gta02-pm-wlan.o \
-+ gta02-shadow.o
++ gta02-pm-wlan.o
--- a/drivers/misc/Makefile
+++ b/drivers/misc/Makefile
@@ -21,3 +21,6 @@ obj-$(CONFIG_HP_ILO) += hpilo.o
diff --git a/recipes/linux/linux-openmoko-2.6.30.1/015-mach-gta02.patch b/recipes/linux/linux-openmoko-2.6.30.1/015-mach-gta02.patch
index 7d621545db..dae9ce6cbd 100644
--- a/recipes/linux/linux-openmoko-2.6.30.1/015-mach-gta02.patch
+++ b/recipes/linux/linux-openmoko-2.6.30.1/015-mach-gta02.patch
@@ -1,6 +1,6 @@
--- a/arch/arm/mach-s3c2442/Kconfig
+++ b/arch/arm/mach-s3c2442/Kconfig
-@@ -25,6 +25,20 @@ config SMDK2440_CPU2442
+@@ -25,6 +25,21 @@ config SMDK2440_CPU2442
depends on ARCH_S3C2440
select CPU_S3C2442
@@ -15,6 +15,7 @@
+ select S3C_PWM
+ select FIQ
+ select S3C_DEV_USB_HOST
++ select S3C24XX_GPIO_EXTRA64
+ help
+ Say Y here if you are using the Openmoko Freerunner GSM Phone
+
diff --git a/recipes/linux/linux-openmoko-2.6.30.1/055-gta02-leds.patch b/recipes/linux/linux-openmoko-2.6.30.1/055-gta02-leds.patch
index cf0b4fa250..7f5514503e 100644
--- a/recipes/linux/linux-openmoko-2.6.30.1/055-gta02-leds.patch
+++ b/recipes/linux/linux-openmoko-2.6.30.1/055-gta02-leds.patch
@@ -1,33 +1,25 @@
--- a/drivers/leds/Kconfig
+++ b/drivers/leds/Kconfig
-@@ -227,6 +227,19 @@ config LEDS_BD2802
+@@ -227,6 +227,12 @@ config LEDS_BD2802
This option enables support for BD2802GU RGB LED driver chips
accessed via the I2C bus.
+config LEDS_GTA02_VIBRATOR
-+ tristate "Vibrator Support for the Openmoko Freerunner GSM phone"
++ boolean "Vibrator Support for the Openmoko Freerunner GSM phone"
+ depends on LEDS_CLASS && MACH_NEO1973_GTA02
+ help
+ This option enables support for the vibrator on the Openmoko Freerunner.
+
-+config LEDS_GTA02
-+ tristate "LED Support for the Openmoko Freerunner GSM phone"
-+ depends on LEDS_CLASS && MACH_NEO1973_GTA02
-+ help
-+ This option enables support for the LEDs on the Openmoko Freerunner.
-+
-+
comment "LED Triggers"
config LEDS_TRIGGERS
--- a/drivers/leds/Makefile
+++ b/drivers/leds/Makefile
-@@ -30,6 +30,8 @@ obj-$(CONFIG_LEDS_PWM) += leds-pwm.o
+@@ -30,6 +30,7 @@ obj-$(CONFIG_LEDS_PWM) += leds-pwm.o
# LED SPI Drivers
obj-$(CONFIG_LEDS_DAC124S085) += leds-dac124s085.o
+obj-$(CONFIG_LEDS_GTA02_VIBRATOR) += leds-gta02-vibrator.o
-+obj-$(CONFIG_LEDS_GTA02) += leds-gta02.o
# LED Triggers
obj-$(CONFIG_LEDS_TRIGGER_TIMER) += ledtrig-timer.o
diff --git a/recipes/linux/linux-openmoko-2.6.30.1/056-pcf50633.patch b/recipes/linux/linux-openmoko-2.6.30.1/056-pcf50633.patch
index b1274f993c..84083b4f32 100644
--- a/recipes/linux/linux-openmoko-2.6.30.1/056-pcf50633.patch
+++ b/recipes/linux/linux-openmoko-2.6.30.1/056-pcf50633.patch
@@ -355,3 +355,109 @@
/* LED registers */
#define PCF50633_REG_LEDOUT 0x28
+diff --git a/drivers/regulator/pcf50633-regulator.c b/drivers/regulator/pcf50633-regulator.c
+index 8e14900..4809789 100644
+--- a/drivers/regulator/pcf50633-regulator.c
++++ b/drivers/regulator/pcf50633-regulator.c
+@@ -24,11 +24,12 @@
+ #include <linux/mfd/pcf50633/core.h>
+ #include <linux/mfd/pcf50633/pmic.h>
+
+-#define PCF50633_REGULATOR(_name, _id) \
++#define PCF50633_REGULATOR(_name, _id, _n) \
+ { \
+ .name = _name, \
+ .id = _id, \
+ .ops = &pcf50633_regulator_ops, \
++ .n_voltages = _n, \
+ .type = REGULATOR_VOLTAGE, \
+ .owner = THIS_MODULE, \
+ }
+@@ -193,6 +194,40 @@ static int pcf50633_regulator_get_voltage(struct regulator_dev *rdev)
+ return millivolts * 1000;
+ }
+
++static int pcf50633_regulator_list_voltage(struct regulator_dev *rdev,
++ unsigned int index)
++{
++ struct pcf50633 *pcf;
++ int regulator_id, millivolts;
++
++ pcf = rdev_get_drvdata(rdev);;
++
++ regulator_id = rdev_get_id(rdev);
++
++ switch (regulator_id) {
++ case PCF50633_REGULATOR_AUTO:
++ millivolts = auto_voltage_value(index + 0x2f);
++ break;
++ case PCF50633_REGULATOR_DOWN1:
++ case PCF50633_REGULATOR_DOWN2:
++ millivolts = down_voltage_value(index);
++ break;
++ case PCF50633_REGULATOR_LDO1:
++ case PCF50633_REGULATOR_LDO2:
++ case PCF50633_REGULATOR_LDO3:
++ case PCF50633_REGULATOR_LDO4:
++ case PCF50633_REGULATOR_LDO5:
++ case PCF50633_REGULATOR_LDO6:
++ case PCF50633_REGULATOR_HCLDO:
++ millivolts = ldo_voltage_value(index);
++ break;
++ default:
++ return -EINVAL;
++ }
++
++ return millivolts * 1000;
++}
++
+ static int pcf50633_regulator_enable(struct regulator_dev *rdev)
+ {
+ struct pcf50633 *pcf = rdev_get_drvdata(rdev);
+@@ -246,6 +281,7 @@ static int pcf50633_regulator_is_enabled(struct regulator_dev *rdev)
+ static struct regulator_ops pcf50633_regulator_ops = {
+ .set_voltage = pcf50633_regulator_set_voltage,
+ .get_voltage = pcf50633_regulator_get_voltage,
++ .list_voltage = pcf50633_regulator_list_voltage,
+ .enable = pcf50633_regulator_enable,
+ .disable = pcf50633_regulator_disable,
+ .is_enabled = pcf50633_regulator_is_enabled,
+@@ -253,27 +289,27 @@ static struct regulator_ops pcf50633_regulator_ops = {
+
+ static struct regulator_desc regulators[] = {
+ [PCF50633_REGULATOR_AUTO] =
+- PCF50633_REGULATOR("auto", PCF50633_REGULATOR_AUTO),
++ PCF50633_REGULATOR("auto", PCF50633_REGULATOR_AUTO, 80),
+ [PCF50633_REGULATOR_DOWN1] =
+- PCF50633_REGULATOR("down1", PCF50633_REGULATOR_DOWN1),
++ PCF50633_REGULATOR("down1", PCF50633_REGULATOR_DOWN1, 95),
+ [PCF50633_REGULATOR_DOWN2] =
+- PCF50633_REGULATOR("down2", PCF50633_REGULATOR_DOWN2),
++ PCF50633_REGULATOR("down2", PCF50633_REGULATOR_DOWN2, 95),
+ [PCF50633_REGULATOR_LDO1] =
+- PCF50633_REGULATOR("ldo1", PCF50633_REGULATOR_LDO1),
++ PCF50633_REGULATOR("ldo1", PCF50633_REGULATOR_LDO1, 27),
+ [PCF50633_REGULATOR_LDO2] =
+- PCF50633_REGULATOR("ldo2", PCF50633_REGULATOR_LDO2),
++ PCF50633_REGULATOR("ldo2", PCF50633_REGULATOR_LDO2, 27),
+ [PCF50633_REGULATOR_LDO3] =
+- PCF50633_REGULATOR("ldo3", PCF50633_REGULATOR_LDO3),
++ PCF50633_REGULATOR("ldo3", PCF50633_REGULATOR_LDO3, 27),
+ [PCF50633_REGULATOR_LDO4] =
+- PCF50633_REGULATOR("ldo4", PCF50633_REGULATOR_LDO4),
++ PCF50633_REGULATOR("ldo4", PCF50633_REGULATOR_LDO4, 27),
+ [PCF50633_REGULATOR_LDO5] =
+- PCF50633_REGULATOR("ldo5", PCF50633_REGULATOR_LDO5),
++ PCF50633_REGULATOR("ldo5", PCF50633_REGULATOR_LDO5, 27),
+ [PCF50633_REGULATOR_LDO6] =
+- PCF50633_REGULATOR("ldo6", PCF50633_REGULATOR_LDO6),
++ PCF50633_REGULATOR("ldo6", PCF50633_REGULATOR_LDO6, 27),
+ [PCF50633_REGULATOR_HCLDO] =
+- PCF50633_REGULATOR("hcldo", PCF50633_REGULATOR_HCLDO),
++ PCF50633_REGULATOR("hcldo", PCF50633_REGULATOR_HCLDO, 26),
+ [PCF50633_REGULATOR_MEMLDO] =
+- PCF50633_REGULATOR("memldo", PCF50633_REGULATOR_MEMLDO),
++ PCF50633_REGULATOR("memldo", PCF50633_REGULATOR_MEMLDO, 27),
+ };
+
+ static int __devinit pcf50633_regulator_probe(struct platform_device *pdev)
diff --git a/recipes/linux/linux-openmoko-2.6.30.1/057-lis302dl.patch b/recipes/linux/linux-openmoko-2.6.30.1/057-lis302dl.patch
index 92076996f0..ebb194bf3c 100644
--- a/recipes/linux/linux-openmoko-2.6.30.1/057-lis302dl.patch
+++ b/recipes/linux/linux-openmoko-2.6.30.1/057-lis302dl.patch
@@ -18,9 +18,8 @@
depends on MFD_PCF50633
--- a/drivers/input/misc/Makefile
+++ b/drivers/input/misc/Makefile
-@@ -25,3 +25,5 @@ obj-$(CONFIG_INPUT_SPARCSPKR) += sparcspkr.o
- obj-$(CONFIG_INPUT_UINPUT) += uinput.o
- obj-$(CONFIG_INPUT_WISTRON_BTNS) += wistron_btns.o
+@@ -25,3 +25,4 @@ obj-$(CONFIG_INPUT_UINPUT) += uinput.o
+ obj-$(CONFIG_INPUT_WISTRON_BTNS) += wistron_btns.o
obj-$(CONFIG_INPUT_YEALINK) += yealink.o
-+obj-$(CONFIG_INPUT_GPIO_BUTTONS) += gpio_buttons.o
+ obj-$(CONFIG_INPUT_GPIO_BUTTONS) += gpio_buttons.o
+obj-$(CONFIG_INPUT_LIS302DL) += lis302dl.o
diff --git a/recipes/linux/linux-openmoko-2.6.30.1/130-fix-s3c_gpiolib_getchip.patch b/recipes/linux/linux-openmoko-2.6.30.1/130-fix-s3c_gpiolib_getchip.patch
new file mode 100644
index 0000000000..96730014ed
--- /dev/null
+++ b/recipes/linux/linux-openmoko-2.6.30.1/130-fix-s3c_gpiolib_getchip.patch
@@ -0,0 +1,13 @@
+diff --git a/arch/arm/mach-s3c2410/include/mach/gpio-core.h b/arch/arm/mach-s3c2410/include/mach/gpio-core.h
+index 8fe1920..f8b879a 100644
+--- a/arch/arm/mach-s3c2410/include/mach/gpio-core.h
++++ b/arch/arm/mach-s3c2410/include/mach/gpio-core.h
+@@ -28,7 +28,7 @@ static inline struct s3c_gpio_chip *s3c_gpiolib_getchip(unsigned int pin)
+ return NULL;
+
+ chip = &s3c24xx_gpios[pin/32];
+- return (S3C2410_GPIO_OFFSET(pin) > chip->chip.ngpio) ? chip : NULL;
++ return (S3C2410_GPIO_OFFSET(pin) < chip->chip.ngpio) ? chip : NULL;
+ }
+
+ #endif /* __ASM_ARCH_GPIO_CORE_H */
diff --git a/recipes/linux/linux-openmoko-2.6.30.1/openwrt-files.tgz b/recipes/linux/linux-openmoko-2.6.30.1/openwrt-files.tgz
index 824cec62c2..cc5d68a3e4 100644
--- a/recipes/linux/linux-openmoko-2.6.30.1/openwrt-files.tgz
+++ b/recipes/linux/linux-openmoko-2.6.30.1/openwrt-files.tgz
Binary files differ
diff --git a/recipes/linux/linux-openmoko_2.6.30.1.bb b/recipes/linux/linux-openmoko_2.6.30.1.bb
index 8e5fd64189..9f09f6ab84 100644
--- a/recipes/linux/linux-openmoko_2.6.30.1.bb
+++ b/recipes/linux/linux-openmoko_2.6.30.1.bb
@@ -22,7 +22,7 @@ SRC_URI = "\
file://030-dont-override-logo-with-early-printks.patch;patch=1 \
file://040-rename-serialdevs.patch;patch=1 \
file://050-s3c2442-touchscreen.patch;patch=1 \
- file://051-gta02kbd.patch;patch=1 \
+# file://051-gta02kbd.patch;patch=1 \
file://052-touchscreen_filter.patch;patch=1 \
file://053-glamo.patch;patch=1 \
file://054-bq27000.patch;patch=1 \
@@ -38,7 +38,8 @@ SRC_URI = "\
file://100-udc-poll-vbus.patch;patch=1 \
file://110-serial.patch;patch=1 \
file://120-fix-wm8753-reg_cache.patch;patch=1 \
- file://750-glamo-headers.patch;patch=1 \
+ file://130-fix-s3c_gpiolib_getchip.patch;patch=1 \
+# file://750-glamo-headers.patch;patch=1 \
# file://150-ignore-init-argument.patch;patch=1 \
"