[oe-commits] org.oe.dev merge of '860b69bfa86360af41373424bf5de0df598ab909'

utx commit oe at amethyst.openembedded.net
Fri Mar 28 00:14:36 UTC 2008


merge of '860b69bfa86360af41373424bf5de0df598ab909'
     and 'da3f97933962edf6b59a6c431356796195acf199'

Author: utx at openembedded.org
Branch: org.openembedded.dev
Revision: c474f6f48b0333b791017b2d12c15831e6d2b873
ViewMTN: http://monotone.openembedded.org/revision/info/c474f6f48b0333b791017b2d12c15831e6d2b873
Files:
1
packages/linux/linux-rp-2.6.24/sharpsl-rc-r2.patch
packages/linux/linux-rp-2.6.24/sharpsl-rc-r1.patch
packages/linux/linux-rp_2.6.24.bb
classes/kernel.bbclass
packages/linux/linux.inc
Diffs:

#
# mt diff -r860b69bfa86360af41373424bf5de0df598ab909 -rc474f6f48b0333b791017b2d12c15831e6d2b873
#
#
#
# add_file "packages/linux/linux-rp-2.6.24/sharpsl-rc-r2.patch"
#  content [f62d8545ea16f4caf506219c894df3a90724b5c2]
# 
# patch "packages/linux/linux-rp-2.6.24/sharpsl-rc-r1.patch"
#  from [555dcdc80fa0d4419bbeaa955328961258cf607e]
#    to [c1ba9d58f22e96a7d5fd27cd59af335284d4de5c]
# 
# patch "packages/linux/linux-rp_2.6.24.bb"
#  from [51870430d0959e153e5ae362218b6f4167e36568]
#    to [5daa3c30b673211ee04cc9d19ae14faecaebad4e]
#
============================================================
--- packages/linux/linux-rp-2.6.24/sharpsl-rc-r2.patch	f62d8545ea16f4caf506219c894df3a90724b5c2
+++ packages/linux/linux-rp-2.6.24/sharpsl-rc-r2.patch	f62d8545ea16f4caf506219c894df3a90724b5c2
@@ -0,0 +1,180 @@
+This patch adds support for Sharp CE-RH2 on Akita and CE-RH1 on C7x0.
+
+This patch is a bit ugly:
+- Device specific functions should be moved to platform infrastructure.
+- Maybe define generic *_scoopexp functions handling Akita x Spitz differences.
+
+Index: linux-2.6.24/drivers/input/keyboard/sharpsl_rc.c
+===================================================================
+--- linux-2.6.24.orig/drivers/input/keyboard/sharpsl_rc.c	2008-03-07 20:47:28.000000000 +0000
++++ linux-2.6.24/drivers/input/keyboard/sharpsl_rc.c	2008-03-07 22:36:40.000000000 +0000
+@@ -21,12 +21,10 @@
+ #include <linux/module.h>
+ #include <linux/slab.h>
+ 
+-#ifdef CONFIG_MACH_SPITZ
++#include <asm/mach-types.h>
+ #include <asm/arch/spitz.h>
+-#endif
+-#ifdef CONFIG_MACH_CORGI
++#include <asm/arch/akita.h>
+ #include <asm/arch/corgi.h>
+-#endif
+ 
+ #include <asm/arch/hardware.h>
+ #include <asm/arch/pxa-regs.h>
+@@ -42,12 +40,8 @@
+ 	unsigned char key;
+ };
+ 
+-#ifdef CONFIG_MACH_SPITZ
+-#define REMOTE_AKIN_PULLUP SPITZ_SCP2_AKIN_PULLUP
+-#define REMOTE_SCOOP_DEVICE spitzscoop2_device
+-#define REMOTE_GPIO_INT SPITZ_GPIO_AK_INT
+-#define REMOTE_IRQ_INT SPITZ_IRQ_GPIO_AK_INT
+-static struct remote_control_key remote_keys[] = {
++static struct remote_control_key remote_keys_spitz[] = {
++	/* CE-RH2 values */
+ 	{ 25, 35, KEY_STOPCD},
+ 	{ 55, 65, KEY_PLAYPAUSE},
+ 	{ 85, 95, KEY_NEXTSONG},
+@@ -56,23 +50,15 @@
+ 	{ 180, 190, KEY_MUTE},
+ 	{ 215, 225, KEY_VOLUMEDOWN},
+ };
+-#endif
+-#ifdef CONFIG_MACH_CORGI
+-#define REMOTE_AKIN_PULLUP CORGI_SCP_AKIN_PULLUP
+-#define REMOTE_SCOOP_DEVICE corgiscoop_device
+-#define REMOTE_GPIO_INT CORGI_GPIO_AK_INT
+-#define REMOTE_IRQ_INT CORGI_IRQ_GPIO_AK_INT
+-static struct remote_control_key remote_keys[] = {
+-    //These need to be fixed for the CE-RH1's values
+-	{ 25, 35, KEY_STOPCD},
+-	{ 55, 65, KEY_PLAYPAUSE},
+-	{ 85, 95, KEY_NEXTSONG},
+-	{ 115, 125, KEY_VOLUMEUP},
+-	{ 145, 155, KEY_PREVIOUSSONG},
+-	{ 180, 190, KEY_MUTE},
+-	{ 215, 225, KEY_VOLUMEDOWN},
++static struct remote_control_key remote_keys_corgi[] = {
++	/* CE-RH1 values */
++	{ 27, 35, KEY_STOPCD},
++	{ 7, 13, KEY_PLAYPAUSE},
++	{ 77, 93, KEY_NEXTSONG},
++	{ 115, 132, KEY_VOLUMEUP},
++	{ 46, 58, KEY_PREVIOUSSONG},
++	{ 170, 186, KEY_VOLUMEDOWN},
+ };
+-#endif
+ 
+ #define RELEASE_HI      230
+ #define MAX_EARPHONE    6
+@@ -98,9 +84,17 @@
+ static int get_remocon_raw(void)
+ {
+ 	int i, val;
++	struct remote_control_key *remote_keys;
++
++	if (machine_is_borzoi() || machine_is_spitz() || machine_is_akita())
++		remote_keys = remote_keys_spitz;
++	else
++		remote_keys = remote_keys_corgi;
+ 
+ 	val = sharpsl_pm_pxa_read_max1111(MAX1111_REMCOM);
+-	for (i = 0; i < ARRAY_SIZE(remote_keys); ++i) {
++	for (i = 0; i < (machine_is_borzoi() || machine_is_spitz() || machine_is_akita() ?
++			 ARRAY_SIZE(remote_keys_spitz) : ARRAY_SIZE(remote_keys_corgi));
++			 ++i) {
+ 		if (val >= remote_keys[i].min
+ 			&& val <= remote_keys[i].max) {
+ 			printk("get_remocon_raw: VAL=%i, KEY=%i\n", val, remote_keys[i].key);
+@@ -121,8 +115,12 @@
+ 		data->state = 0;
+ 		data->last_key = 0;
+ 
+-		reset_scoop_gpio(&REMOTE_SCOOP_DEVICE.dev, REMOTE_AKIN_PULLUP);
+-
++		if (machine_is_borzoi() || machine_is_spitz())
++			reset_scoop_gpio(&platform_scoop_config->devs[1].dev, SPITZ_SCP2_AKIN_PULLUP);
++		else if (machine_is_akita())
++            		akita_reset_ioexp(&akitaioexp_device.dev, AKITA_IOEXP_AKIN_PULLUP);
++		else
++			reset_scoop_gpio(&platform_scoop_config->devs[0].dev, CORGI_SCP_AKIN_PULLUP);
+ 		mod_timer(&data->rctimer, jiffies + msecs_to_jiffies(RC_POLL_MS));
+ 	}
+ 	return IRQ_HANDLED;
+@@ -182,7 +180,12 @@
+ 	if (timer) {
+ 		mod_timer(&data->rctimer, jiffies + msecs_to_jiffies(RC_POLL_MS));
+ 	} else {
+-		set_scoop_gpio(&REMOTE_SCOOP_DEVICE.dev, REMOTE_AKIN_PULLUP);
++		if (machine_is_borzoi() || machine_is_spitz())
++			set_scoop_gpio(&platform_scoop_config->devs[1].dev, SPITZ_SCP2_AKIN_PULLUP);
++		else if (machine_is_akita())
++            		akita_set_ioexp(&akitaioexp_device.dev, AKITA_IOEXP_AKIN_PULLUP);
++		else
++			set_scoop_gpio(&platform_scoop_config->devs[0].dev, CORGI_SCP_AKIN_PULLUP);
+ 		data->handling_press = 0;
+ 	}
+ }
+@@ -192,6 +195,7 @@
+ 	struct sharpsl_rc *sharpsl_rc;
+ 	struct input_dev *input_dev;
+ 	int i, ret;
++	struct remote_control_key *remote_keys;
+ 
+ 	dev_dbg(&pdev->dev, "sharpsl_rc_probe\n");
+ 
+@@ -225,17 +229,32 @@
+ 
+ 	input_dev->evbit[0] = BIT(EV_KEY);
+ 
+-	for (i = 0; i <= ARRAY_SIZE(remote_keys); i++)
++	if (machine_is_borzoi() || machine_is_spitz() || machine_is_akita())
++		remote_keys = remote_keys_spitz;
++	else
++		remote_keys = remote_keys_corgi;
++	for (i = 0; i < (machine_is_borzoi() || machine_is_spitz() || machine_is_akita() ?
++			 ARRAY_SIZE(remote_keys_spitz) : ARRAY_SIZE(remote_keys_corgi));
++			 ++i)
+ 	  set_bit(remote_keys[i].key, input_dev->keybit);
+ 
+ 	input_register_device(sharpsl_rc->input);
+ 
+-	pxa_gpio_mode(REMOTE_GPIO_INT | GPIO_IN);
+-	ret = request_irq(REMOTE_IRQ_INT,
+-					  sharpsl_rc_interrupt,
+-					  IRQF_DISABLED | IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING | IRQF_SHARED,
+-					  "sharpsl_rc",
+-					  sharpsl_rc);
++	if (machine_is_borzoi() || machine_is_spitz() || machine_is_akita()) {
++		pxa_gpio_mode(SPITZ_GPIO_AK_INT | GPIO_IN);
++		ret = request_irq(SPITZ_IRQ_GPIO_AK_INT,
++				  sharpsl_rc_interrupt,
++				  IRQF_DISABLED | IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING | IRQF_SHARED,
++				  "sharpsl_rc",
++				  sharpsl_rc);
++	} else {
++		pxa_gpio_mode(CORGI_GPIO_AK_INT | GPIO_IN);
++		ret = request_irq(CORGI_IRQ_GPIO_AK_INT,
++				  sharpsl_rc_interrupt,
++				  IRQF_DISABLED | IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING | IRQF_SHARED,
++				  "sharpsl_rc",
++				  sharpsl_rc);
++	}
+ 	if (ret < 0) {
+ 		dev_dbg(&pdev->dev, "Can't get IRQ: %d!\n", i);
+ 		kfree(sharpsl_rc);
+@@ -252,7 +271,10 @@
+ 
+ 	dev_dbg(&pdev->dev, "sharpsl_rc_remove\n");
+ 
+-	free_irq(REMOTE_IRQ_INT, sharpsl_rc);
++	if (machine_is_borzoi() || machine_is_spitz() || machine_is_akita())
++		free_irq(SPITZ_IRQ_GPIO_AK_INT, sharpsl_rc);
++	else
++		free_irq(CORGI_IRQ_GPIO_AK_INT, sharpsl_rc);
+ 	del_timer_sync(&sharpsl_rc->rctimer);
+ 	input_unregister_device(sharpsl_rc->input);
+ 	kfree(sharpsl_rc);
============================================================
--- packages/linux/linux-rp-2.6.24/sharpsl-rc-r1.patch	555dcdc80fa0d4419bbeaa955328961258cf607e
+++ packages/linux/linux-rp-2.6.24/sharpsl-rc-r1.patch	c1ba9d58f22e96a7d5fd27cd59af335284d4de5c
@@ -1,3 +1,13 @@
+This patch adds support for Sharp CE-RH2 on Spitz.
+
+It is not clean enough to be upstreamed:
+- It is a bit syslog-noisy.
+- Does not support other Zaurus models.
+- Maybe split to more parts:
+  * MAX1111 driver
+  * linear input device
+  * virtual keyboard on top of linear input device
+
 Index: linux-2.6.24/arch/arm/mach-pxa/spitz.c
 ===================================================================
 --- linux-2.6.24.orig/arch/arm/mach-pxa/spitz.c	2008-03-10 17:05:37.000000000 +0000
============================================================
--- packages/linux/linux-rp_2.6.24.bb	51870430d0959e153e5ae362218b6f4167e36568
+++ packages/linux/linux-rp_2.6.24.bb	5daa3c30b673211ee04cc9d19ae14faecaebad4e
@@ -1,6 +1,6 @@ require linux-rp.inc
 require linux-rp.inc
 
-PR = "r5"
+PR = "r6"
 
 DEFAULT_PREFERENCE = "-1"
 DEFAULT_PREFERENCE_collie = "1"
@@ -183,6 +183,7 @@ SRC_URI_append_akita = "\
            file://mtd-module.patch;patch=1;status=external \
            file://wm8750-treble.patch;patch=1;status=external \
            file://sharpsl-rc-r1.patch;patch=1 \
+           file://sharpsl-rc-r2.patch;patch=1 \
            "
 
 SRC_URI_append_spitz = "\
@@ -190,8 +191,14 @@ SRC_URI_append_spitz = "\
            file://wm8750-treble.patch;patch=1;status=external \
            file://spitz_h_rewrite.patch;patch=1;status=external \
            file://sharpsl-rc-r1.patch;patch=1 \
+           file://sharpsl-rc-r2.patch;patch=1 \
            "
 
+SRC_URI_append_c7x0 = "\
+           file://sharpsl-rc-r1.patch;patch=1 \
+           file://sharpsl-rc-r2.patch;patch=1 \
+           "
+
 SRC_URI_append_htcuniversal ="\
 	file://htcuni-acx.patch;patch=1;status=external \
 	"


#
# mt diff -rda3f97933962edf6b59a6c431356796195acf199 -rc474f6f48b0333b791017b2d12c15831e6d2b873
#
#
#
# patch "classes/kernel.bbclass"
#  from [aa43796485b85a90de8e92d888cb27492a55b831]
#    to [b6e05ecebbfd152cbd0c654bcea62bbcf8f18352]
# 
# patch "packages/linux/linux.inc"
#  from [0321f5531f3d38ef343c01b13c7416df2e74e8ce]
#    to [05a28f69ba86f2b970e011440a9296697b6e57d8]
#
============================================================
--- classes/kernel.bbclass	aa43796485b85a90de8e92d888cb27492a55b831
+++ classes/kernel.bbclass	b6e05ecebbfd152cbd0c654bcea62bbcf8f18352
@@ -5,6 +5,8 @@ KERNEL_IMAGETYPE ?= "zImage"
 
 KERNEL_IMAGETYPE ?= "zImage"
 
+# Add dependency on mkimage for kernels that build a uImage
+
 python __anonymous () {
 
     import bb
@@ -12,7 +14,7 @@ python __anonymous () {
     kerneltype = bb.data.getVar('KERNEL_IMAGETYPE', d, 1) or ''
     if kerneltype == 'uImage':
     	depends = bb.data.getVar("DEPENDS", d, 1)
-    	depends = "%s u-boot-mkimage-native" % depends
+    	depends = "%s u-boot-mkimage-openmoko-native" % depends
     	bb.data.setVar("DEPENDS", depends, d)
 }
 
============================================================
--- packages/linux/linux.inc	0321f5531f3d38ef343c01b13c7416df2e74e8ce
+++ packages/linux/linux.inc	05a28f69ba86f2b970e011440a9296697b6e57d8
@@ -4,20 +4,6 @@ inherit kernel
 
 inherit kernel
 
-# Add dependency on mkimage for kernels that build a uImage
-
-python __anonymous () {
-
-    import bb
-
-    kerneltype = bb.data.getVar('KERNEL_IMAGETYPE', d, 1) or ''
-    if kerneltype == 'uImage':
-        depends = bb.data.getVar("DEPENDS", d, 1)
-        depends = "%s u-boot-mkimage-openmoko-native" % depends
-        bb.data.setVar("DEPENDS", depends, d)
-}
-
-
 RPSRC = "http://www.rpsys.net/openzaurus/patches/archive"
 
 # Specify the commandline for your device






More information about the Openembedded-commits mailing list