From debf7b4ff4a8d2910adade25a6a1f80e49eb779b Mon Sep 17 00:00:00 2001 From: craig Date: Mon, 4 Dec 2006 23:15:41 +0000 Subject: [PATCH] Linux 2.6.19 git-svn-id: http://svn.gumstix.com/gumstix-buildroot/trunk@1195 440079d4-f5dc-0310-964d-94f3b09ad5cf --- package/wifistix/bad-cast.patch | 13 + package/wifistix/get_wireless_stats-moved.patch | 24 ++ package/wifistix/no-more-config-h.patch | 24 ++ package/wifistix/series | 3 + package/wifistix/wifistix.mk | 2 +- .../add_input_randomness_export.patch | 16 +- .../basix-connex/kernel-patches/arch-config.patch | 12 +- .../basix-connex/kernel-patches/audio.patch | 18 +- .../kernel-patches/bkpxa-pxa-ac97.patch | 46 ++-- .../kernel-patches/bkpxa-pxa-cpu.patch | 14 +- .../kernel-patches/bkpxa-pxa-cpufreq.patch | 26 +- .../basix-connex/kernel-patches/board-init.patch | 4 +- .../kernel-patches/bugfix-i2c-include.patch | 6 +- .../kernel-patches/bugfix-mmc-clock.patch | 6 +- .../kernel-patches/bugfix-pxa-audio.patch | 12 +- .../kernel-patches/bugfix-pxa-cpufreq.patch | 6 +- .../kernel-patches/bugfix-serial-interrupt.patch | 12 +- .../bugfix-serial-register-status.patch | 20 +- .../kernel-patches/compact-flash.patch | 10 +- .../kernel-patches/compile-fix-pxa_cpufreq.patch | 6 +- .../kernel-patches/cpufreq-better-freqs.patch | 6 +- .../cpufreq-ondemand-by-default.patch | 12 +- .../basix-connex/kernel-patches/defconfig.patch | 4 +- .../disable-uncompress-message.patch | 12 +- .../kernel-patches/ethernet-config.patch | 6 +- .../basix-connex/kernel-patches/flash.patch | 18 +- .../basix-connex/kernel-patches/header.patch | 4 +- .../kernel-patches/iwmmxt-on-pxa255.patch | 6 +- .../kernel-patches/kconfig-arch-cleanup.patch | 36 +-- .../kernel-patches/kobject_get_path_export.patch | 14 +- .../kernel-patches/mach-types-fix.patch | 6 +- .../kernel-patches/misalignment-handling.patch | 14 +- .../kernel-patches/mmc-card-detect.patch | 12 +- .../kernel-patches/modular-init-bluetooth.patch | 24 +- .../kernel-patches/modular-init-smc91x.patch | 26 +- .../kernel-patches/modular-init-usb-gadget.patch | 24 +- .../basix-connex/kernel-patches/proc-gpio.patch | 31 ++- .../basix-connex/kernel-patches/pxa-udc-gpio.patch | 262 ++++----------------- .../kernel-patches/pxa255-gpio-count-bugfix.patch | 13 - .../basix-connex/kernel-patches/pxa2xx_udc.patch | 26 +- .../rmk-2022-2-rtctime-sa110-pxa255-driver.patch | 20 +- .../kernel-patches/serial-divisor.patch | 8 +- .../kernel-patches/serial-ether-addr.patch | 6 +- .../Gumstix/basix-connex/kernel-patches/series | 3 - .../kernel-patches/smc-ether-addr.patch | 6 +- .../kernel-patches/ucb1400-ac97-audio.patch | 98 ++++++-- .../kernel-patches/ucb1400-touchscreen.patch | 84 +++---- .../usb-ether-gadget-filter-bugfix.patch | 6 +- target/device/Gumstix/basix-connex/linux.mk | 2 +- 49 files changed, 496 insertions(+), 573 deletions(-) create mode 100644 package/wifistix/bad-cast.patch create mode 100644 package/wifistix/get_wireless_stats-moved.patch create mode 100644 package/wifistix/no-more-config-h.patch rewrite target/device/Gumstix/basix-connex/kernel-patches/pxa-udc-gpio.patch (80%) delete mode 100644 target/device/Gumstix/basix-connex/kernel-patches/pxa255-gpio-count-bugfix.patch diff --git a/package/wifistix/bad-cast.patch b/package/wifistix/bad-cast.patch new file mode 100644 index 0000000..5f4f48c --- /dev/null +++ b/package/wifistix/bad-cast.patch @@ -0,0 +1,13 @@ +Index: src_cf8385/wlan/wlan_wext.c +=================================================================== +--- src_cf8385.orig/wlan/wlan_wext.c ++++ src_cf8385/wlan/wlan_wext.c +@@ -1023,7 +1023,7 @@ static int wlan_txcontrol(wlan_private * + return -EFAULT; + } + copy_from_user(&data,wrq->u.data.pointer,sizeof(int)); +- (u32)Adapter->PktTxCtrl = data; ++ Adapter->PktTxCtrl = (u32)data; + } + + wrq->u.data.length = 1; diff --git a/package/wifistix/get_wireless_stats-moved.patch b/package/wifistix/get_wireless_stats-moved.patch new file mode 100644 index 0000000..01b71ee --- /dev/null +++ b/package/wifistix/get_wireless_stats-moved.patch @@ -0,0 +1,24 @@ +Index: src_cf8385/wlan/wlan_main.c +=================================================================== +--- src_cf8385.orig/wlan/wlan_main.c ++++ src_cf8385/wlan/wlan_main.c +@@ -912,7 +912,6 @@ static wlan_private *wlan_add_card(void + dev->watchdog_timeo = WLAN_WATCHDOG_TIMEOUT; + + #ifdef WIRELESS_EXT +- dev->get_wireless_stats = wlan_get_wireless_stats; + dev->wireless_handlers = (struct iw_handler_def *) &wlan_handler_def; + #endif + #endif /* linux */ +Index: src_cf8385/wlan/wlan_wext.c +=================================================================== +--- src_cf8385.orig/wlan/wlan_wext.c ++++ src_cf8385/wlan/wlan_wext.c +@@ -2738,6 +2738,7 @@ struct iw_handler_def wlan_handler_def = + standard:(iw_handler *) wlan_handler, + private:(iw_handler *) wlan_private_handler, + private_args:(struct iw_priv_args *) wlan_private_args, ++ get_wireless_stats:wlan_get_wireless_stats, + }; + + #ifdef STDCMD diff --git a/package/wifistix/no-more-config-h.patch b/package/wifistix/no-more-config-h.patch new file mode 100644 index 0000000..8bd7a14 --- /dev/null +++ b/package/wifistix/no-more-config-h.patch @@ -0,0 +1,24 @@ +Index: src_cf8385/io/mcf/cfio_io.h +=================================================================== +--- src_cf8385.orig/io/mcf/cfio_io.h ++++ src_cf8385/io/mcf/cfio_io.h +@@ -51,7 +51,6 @@ Change log: + #include + #include + #include +-#include + + #include + #include +Index: src_cf8385/os/linux/os_headers.h +=================================================================== +--- src_cf8385.orig/os/linux/os_headers.h ++++ src_cf8385/os/linux/os_headers.h +@@ -32,7 +32,6 @@ + #include + #include + #include +-#include + #include + + diff --git a/package/wifistix/series b/package/wifistix/series index 9e9d22b..b91aa71 100644 --- a/package/wifistix/series +++ b/package/wifistix/series @@ -3,3 +3,6 @@ marvell-devicetable.patch marvell-gumstix.patch sbi-no-inline.patch 2.6.17-new-pcmcia-layer.patch +no-more-config-h.patch +get_wireless_stats-moved.patch +bad-cast.patch diff --git a/package/wifistix/wifistix.mk b/package/wifistix/wifistix.mk index e640da6..e3848f1 100644 --- a/package/wifistix/wifistix.mk +++ b/package/wifistix/wifistix.mk @@ -5,7 +5,7 @@ ############################################################# CF8385_SITE:=http://files.gumstix.com CF8385_TARGET_MODULE=$(TARGET_DIR)/lib/modules/.cf8385 -MARVELL_BINARY_DRIVERS=marvell-binaries-2.6.18-3.tar +MARVELL_BINARY_DRIVERS=marvell-binaries-2.6.19-1.tar $(DL_DIR)/$(MARVELL_BINARY_DRIVERS): $(WGET) -P $(DL_DIR) $(CF8385_SITE)/$(MARVELL_BINARY_DRIVERS) diff --git a/target/device/Gumstix/basix-connex/kernel-patches/add_input_randomness_export.patch b/target/device/Gumstix/basix-connex/kernel-patches/add_input_randomness_export.patch index b9e5c3c..95d663a 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/add_input_randomness_export.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/add_input_randomness_export.patch @@ -1,13 +1,13 @@ Oddly, drivers/input/input.c seems to reference a symbol which is apparently in another module but not exported. -Index: linux-2.6.18gum/drivers/char/random.c +Index: linux-2.6.19/drivers/char/random.c =================================================================== ---- linux-2.6.18gum.orig/drivers/char/random.c -+++ linux-2.6.18gum/drivers/char/random.c -@@ -645,6 +645,7 @@ void add_input_randomness(unsigned int t - add_timer_randomness(&input_timer_state, - (type << 4) ^ code ^ (code >> 4) ^ value); +--- linux-2.6.19.orig/drivers/char/random.c ++++ linux-2.6.19/drivers/char/random.c +@@ -655,6 +655,7 @@ void add_interrupt_randomness(int irq) + DEBUG_ENT("irq event %d\n", irq); + add_timer_randomness(irq_timer_state[irq], 0x100 + irq); } +EXPORT_SYMBOL(add_input_randomness); - void add_interrupt_randomness(int irq) - { + #ifdef CONFIG_BLOCK + void add_disk_randomness(struct gendisk *disk) diff --git a/target/device/Gumstix/basix-connex/kernel-patches/arch-config.patch b/target/device/Gumstix/basix-connex/kernel-patches/arch-config.patch index b094209..efcef04 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/arch-config.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/arch-config.patch @@ -1,7 +1,7 @@ -Index: linux-2.6.18gum/arch/arm/mach-pxa/Kconfig +Index: linux-2.6.19/arch/arm/mach-pxa/Kconfig =================================================================== ---- linux-2.6.18gum.orig/arch/arm/mach-pxa/Kconfig -+++ linux-2.6.18gum/arch/arm/mach-pxa/Kconfig +--- linux-2.6.19.orig/arch/arm/mach-pxa/Kconfig ++++ linux-2.6.19/arch/arm/mach-pxa/Kconfig @@ -5,6 +5,10 @@ menu "Intel PXA2xx Implementations" choice prompt "Select target board" @@ -41,10 +41,10 @@ Index: linux-2.6.18gum/arch/arm/mach-pxa/Kconfig config PXA25x bool help -Index: linux-2.6.18gum/arch/arm/mach-pxa/Makefile +Index: linux-2.6.19/arch/arm/mach-pxa/Makefile =================================================================== ---- linux-2.6.18gum.orig/arch/arm/mach-pxa/Makefile -+++ linux-2.6.18gum/arch/arm/mach-pxa/Makefile +--- linux-2.6.19.orig/arch/arm/mach-pxa/Makefile ++++ linux-2.6.19/arch/arm/mach-pxa/Makefile @@ -8,6 +8,7 @@ obj-$(CONFIG_PXA25x) += pxa25x.o obj-$(CONFIG_PXA27x) += pxa27x.o diff --git a/target/device/Gumstix/basix-connex/kernel-patches/audio.patch b/target/device/Gumstix/basix-connex/kernel-patches/audio.patch index c3174d5..eb8389b 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/audio.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/audio.patch @@ -1,7 +1,7 @@ -Index: linux-2.6.18gum/sound/oss/ac97_codec.c +Index: linux-2.6.19/sound/oss/ac97_codec.c =================================================================== ---- linux-2.6.18gum.orig/sound/oss/ac97_codec.c -+++ linux-2.6.18gum/sound/oss/ac97_codec.c +--- linux-2.6.19.orig/sound/oss/ac97_codec.c ++++ linux-2.6.19/sound/oss/ac97_codec.c @@ -59,6 +59,9 @@ #define CODEC_ID_BUFSZ 14 @@ -336,10 +336,10 @@ Index: linux-2.6.18gum/sound/oss/ac97_codec.c } return new_rate; } -Index: linux-2.6.18gum/sound/oss/pxa-ac97.c +Index: linux-2.6.19/sound/oss/pxa-ac97.c =================================================================== ---- linux-2.6.18gum.orig/sound/oss/pxa-ac97.c -+++ linux-2.6.18gum/sound/oss/pxa-ac97.c +--- linux-2.6.19.orig/sound/oss/pxa-ac97.c ++++ linux-2.6.19/sound/oss/pxa-ac97.c @@ -21,6 +21,7 @@ #include #include @@ -420,10 +420,10 @@ Index: linux-2.6.18gum/sound/oss/pxa-ac97.c pxa_ac97_put(); } -Index: linux-2.6.18gum/sound/oss/pxa-audio.c +Index: linux-2.6.19/sound/oss/pxa-audio.c =================================================================== ---- linux-2.6.18gum.orig/sound/oss/pxa-audio.c -+++ linux-2.6.18gum/sound/oss/pxa-audio.c +--- linux-2.6.19.orig/sound/oss/pxa-audio.c ++++ linux-2.6.19/sound/oss/pxa-audio.c @@ -293,8 +293,6 @@ static int audio_write(struct file *file audio_stream_t *s = state->output_stream; int chunksize, ret = 0; diff --git a/target/device/Gumstix/basix-connex/kernel-patches/bkpxa-pxa-ac97.patch b/target/device/Gumstix/basix-connex/kernel-patches/bkpxa-pxa-ac97.patch index d501dd5..204b964 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/bkpxa-pxa-ac97.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/bkpxa-pxa-ac97.patch @@ -1,7 +1,7 @@ -Index: linux-2.6.18gum/include/linux/ac97_codec.h +Index: linux-2.6.19/include/linux/ac97_codec.h =================================================================== ---- linux-2.6.18gum.orig/include/linux/ac97_codec.h -+++ linux-2.6.18gum/include/linux/ac97_codec.h +--- linux-2.6.19.orig/include/linux/ac97_codec.h ++++ linux-2.6.19/include/linux/ac97_codec.h @@ -260,6 +260,7 @@ struct ac97_codec { u32 model; @@ -10,10 +10,10 @@ Index: linux-2.6.18gum/include/linux/ac97_codec.h struct ac97_ops *codec_ops; -Index: linux-2.6.18gum/sound/oss/Kconfig +Index: linux-2.6.19/sound/oss/Kconfig =================================================================== ---- linux-2.6.18gum.orig/sound/oss/Kconfig -+++ linux-2.6.18gum/sound/oss/Kconfig +--- linux-2.6.19.orig/sound/oss/Kconfig ++++ linux-2.6.19/sound/oss/Kconfig @@ -92,6 +92,14 @@ config SOUND_ES1371 slightly from OSS/Free, so PLEASE READ . @@ -29,7 +29,7 @@ Index: linux-2.6.18gum/sound/oss/Kconfig config SOUND_ICH tristate "Intel ICH (i8xx) audio support" depends on SOUND_PRIME && PCI -@@ -861,6 +869,9 @@ config SOUND_KAHLUA +@@ -857,6 +865,9 @@ config SOUND_KAHLUA tristate "XpressAudio Sound Blaster emulation" depends on SOUND_SB @@ -39,23 +39,23 @@ Index: linux-2.6.18gum/sound/oss/Kconfig config SOUND_SH_DAC_AUDIO tristate "SuperH DAC audio support" depends on SOUND_PRIME && CPU_SH3 -Index: linux-2.6.18gum/sound/oss/Makefile +Index: linux-2.6.19/sound/oss/Makefile =================================================================== ---- linux-2.6.18gum.orig/sound/oss/Makefile -+++ linux-2.6.18gum/sound/oss/Makefile -@@ -44,6 +44,8 @@ obj-$(CONFIG_SOUND_VIA82CXXX) += via82cx +--- linux-2.6.19.orig/sound/oss/Makefile ++++ linux-2.6.19/sound/oss/Makefile +@@ -37,6 +37,8 @@ obj-$(CONFIG_SOUND_VIA82CXXX) += via82cx ifeq ($(CONFIG_MIDI_VIA82CXXX),y) obj-$(CONFIG_SOUND_VIA82CXXX) += sound.o uart401.o endif +obj-$(CONFIG_SOUND_PXA_AC97) += pxa-ac97.o ac97_codec.o +obj-$(CONFIG_SOUND_PXA_AUDIO) += pxa-audio.o - obj-$(CONFIG_SOUND_YMFPCI) += ymfpci.o ac97_codec.o - ifeq ($(CONFIG_SOUND_YMFPCI_LEGACY),y) - obj-$(CONFIG_SOUND_YMFPCI) += opl3.o uart401.o -Index: linux-2.6.18gum/sound/oss/ac97_codec.c + obj-$(CONFIG_SOUND_MSNDCLAS) += msnd.o msnd_classic.o + obj-$(CONFIG_SOUND_MSNDPIN) += msnd.o msnd_pinnacle.o + obj-$(CONFIG_SOUND_VWSND) += vwsnd.o +Index: linux-2.6.19/sound/oss/ac97_codec.c =================================================================== ---- linux-2.6.18gum.orig/sound/oss/ac97_codec.c -+++ linux-2.6.18gum/sound/oss/ac97_codec.c +--- linux-2.6.19.orig/sound/oss/ac97_codec.c ++++ linux-2.6.19/sound/oss/ac97_codec.c @@ -84,6 +84,7 @@ static int crystal_digital_control(struc static int cmedia_init(struct ac97_codec * codec); static int cmedia_digital_control(struct ac97_codec *codec, int slots, int rate, int mode); @@ -127,10 +127,10 @@ Index: linux-2.6.18gum/sound/oss/ac97_codec.c EXPORT_SYMBOL(ac97_read_proc); EXPORT_SYMBOL(ac97_probe_codec); -Index: linux-2.6.18gum/sound/oss/pxa-ac97.c +Index: linux-2.6.19/sound/oss/pxa-ac97.c =================================================================== --- /dev/null -+++ linux-2.6.18gum/sound/oss/pxa-ac97.c ++++ linux-2.6.19/sound/oss/pxa-ac97.c @@ -0,0 +1,357 @@ +/* + * linux/drivers/sound/pxa-ac97.c -- AC97 interface for the Cotula chip @@ -489,10 +489,10 @@ Index: linux-2.6.18gum/sound/oss/pxa-ac97.c +MODULE_AUTHOR("Nicolas Pitre"); +MODULE_DESCRIPTION("AC97 interface for the Cotula chip"); +MODULE_LICENSE("GPL"); -Index: linux-2.6.18gum/sound/oss/pxa-audio.c +Index: linux-2.6.19/sound/oss/pxa-audio.c =================================================================== --- /dev/null -+++ linux-2.6.18gum/sound/oss/pxa-audio.c ++++ linux-2.6.19/sound/oss/pxa-audio.c @@ -0,0 +1,858 @@ +/* + * linux/drivers/sound/pxa-audio.c -- audio interface for the Cotula chip @@ -1352,10 +1352,10 @@ Index: linux-2.6.18gum/sound/oss/pxa-audio.c +MODULE_AUTHOR("Nicolas Pitre, MontaVista Software Inc."); +MODULE_DESCRIPTION("audio interface for the Cotula chip"); +MODULE_LICENSE("GPL"); -Index: linux-2.6.18gum/sound/oss/pxa-audio.h +Index: linux-2.6.19/sound/oss/pxa-audio.h =================================================================== --- /dev/null -+++ linux-2.6.18gum/sound/oss/pxa-audio.h ++++ linux-2.6.19/sound/oss/pxa-audio.h @@ -0,0 +1,54 @@ +/* + * linux/drivers/sound/pxa-audio.h -- audio interface for the Cotula chip diff --git a/target/device/Gumstix/basix-connex/kernel-patches/bkpxa-pxa-cpu.patch b/target/device/Gumstix/basix-connex/kernel-patches/bkpxa-pxa-cpu.patch index 311199a..e6eca1b 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/bkpxa-pxa-cpu.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/bkpxa-pxa-cpu.patch @@ -10,11 +10,11 @@ from hh.org-cvs: # Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher # -Index: linux-2.6.18gum/arch/arm/mm/proc-xscale.S +Index: linux-2.6.19/arch/arm/mm/proc-xscale.S =================================================================== ---- linux-2.6.18gum.orig/arch/arm/mm/proc-xscale.S -+++ linux-2.6.18gum/arch/arm/mm/proc-xscale.S -@@ -456,11 +456,62 @@ ENTRY(cpu_xscale_set_pte) +--- linux-2.6.19.orig/arch/arm/mm/proc-xscale.S ++++ linux-2.6.19/arch/arm/mm/proc-xscale.S +@@ -474,11 +474,62 @@ ENTRY(cpu_xscale_set_pte) movne r2, #0 @ no -> fault str r2, [r0] @ hardware version @@ -77,10 +77,10 @@ Index: linux-2.6.18gum/arch/arm/mm/proc-xscale.S .ltorg -Index: linux-2.6.18gum/include/asm-arm/arch-pxa/pxa-regs.h +Index: linux-2.6.19/include/asm-arm/arch-pxa/pxa-regs.h =================================================================== ---- linux-2.6.18gum.orig/include/asm-arm/arch-pxa/pxa-regs.h -+++ linux-2.6.18gum/include/asm-arm/arch-pxa/pxa-regs.h +--- linux-2.6.19.orig/include/asm-arm/arch-pxa/pxa-regs.h ++++ linux-2.6.19/include/asm-arm/arch-pxa/pxa-regs.h @@ -1349,6 +1349,7 @@ #define GPIO_ALT_FN_2_OUT 0x280 #define GPIO_ALT_FN_3_IN 0x300 diff --git a/target/device/Gumstix/basix-connex/kernel-patches/bkpxa-pxa-cpufreq.patch b/target/device/Gumstix/basix-connex/kernel-patches/bkpxa-pxa-cpufreq.patch index 7840385..612d190 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/bkpxa-pxa-cpufreq.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/bkpxa-pxa-cpufreq.patch @@ -6,11 +6,11 @@ added mods from Stefan Eletzhofer and Lothar Weissmann # Patch managed by http://www.mn-logistik.de/unsupported/pxa250/patcher # -Index: linux-2.6.18gum/arch/arm/Kconfig +Index: linux-2.6.19/arch/arm/Kconfig =================================================================== ---- linux-2.6.18gum.orig/arch/arm/Kconfig -+++ linux-2.6.18gum/arch/arm/Kconfig -@@ -690,7 +690,7 @@ config XIP_PHYS_ADDR +--- linux-2.6.19.orig/arch/arm/Kconfig ++++ linux-2.6.19/arch/arm/Kconfig +@@ -716,7 +716,7 @@ config XIP_PHYS_ADDR endmenu @@ -19,7 +19,7 @@ Index: linux-2.6.18gum/arch/arm/Kconfig menu "CPU Frequency scaling" -@@ -719,6 +719,12 @@ config CPU_FREQ_INTEGRATOR +@@ -745,6 +745,12 @@ config CPU_FREQ_INTEGRATOR endmenu @@ -32,10 +32,10 @@ Index: linux-2.6.18gum/arch/arm/Kconfig endif menu "Floating point emulation" -Index: linux-2.6.18gum/arch/arm/mach-pxa/Makefile +Index: linux-2.6.19/arch/arm/mach-pxa/Makefile =================================================================== ---- linux-2.6.18gum.orig/arch/arm/mach-pxa/Makefile -+++ linux-2.6.18gum/arch/arm/mach-pxa/Makefile +--- linux-2.6.19.orig/arch/arm/mach-pxa/Makefile ++++ linux-2.6.19/arch/arm/mach-pxa/Makefile @@ -32,6 +32,7 @@ obj-$(CONFIG_LEDS) += $(led-y) # Misc features obj-$(CONFIG_PM) += pm.o sleep.o @@ -44,10 +44,10 @@ Index: linux-2.6.18gum/arch/arm/mach-pxa/Makefile ifeq ($(CONFIG_PXA27x),y) obj-$(CONFIG_PM) += standby.o -Index: linux-2.6.18gum/arch/arm/mach-pxa/cpu-pxa.c +Index: linux-2.6.19/arch/arm/mach-pxa/cpu-pxa.c =================================================================== --- /dev/null -+++ linux-2.6.18gum/arch/arm/mach-pxa/cpu-pxa.c ++++ linux-2.6.19/arch/arm/mach-pxa/cpu-pxa.c @@ -0,0 +1,321 @@ +/* + * linux/arch/arm/mach-pxa/cpu-pxa.c @@ -370,10 +370,10 @@ Index: linux-2.6.18gum/arch/arm/mach-pxa/cpu-pxa.c +module_init(pxa_cpu_init); +module_exit(pxa_cpu_exit); + -Index: linux-2.6.18gum/Documentation/cpu-freq/user-guide.txt +Index: linux-2.6.19/Documentation/cpu-freq/user-guide.txt =================================================================== ---- linux-2.6.18gum.orig/Documentation/cpu-freq/user-guide.txt -+++ linux-2.6.18gum/Documentation/cpu-freq/user-guide.txt +--- linux-2.6.19.orig/Documentation/cpu-freq/user-guide.txt ++++ linux-2.6.19/Documentation/cpu-freq/user-guide.txt @@ -18,7 +18,7 @@ Contents: --------- diff --git a/target/device/Gumstix/basix-connex/kernel-patches/board-init.patch b/target/device/Gumstix/basix-connex/kernel-patches/board-init.patch index ebcd9d8..fd2800e 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/board-init.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/board-init.patch @@ -1,7 +1,7 @@ -Index: linux-2.6.18gum/arch/arm/mach-pxa/gumstix.c +Index: linux-2.6.19/arch/arm/mach-pxa/gumstix.c =================================================================== --- /dev/null -+++ linux-2.6.18gum/arch/arm/mach-pxa/gumstix.c ++++ linux-2.6.19/arch/arm/mach-pxa/gumstix.c @@ -0,0 +1,93 @@ +/* + * linux/arch/arm/mach-pxa/gumstix.c diff --git a/target/device/Gumstix/basix-connex/kernel-patches/bugfix-i2c-include.patch b/target/device/Gumstix/basix-connex/kernel-patches/bugfix-i2c-include.patch index d73d496..66d2ec3 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/bugfix-i2c-include.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/bugfix-i2c-include.patch @@ -1,7 +1,7 @@ -Index: linux-2.6.18gum/drivers/i2c/busses/i2c-pxa.c +Index: linux-2.6.19/drivers/i2c/busses/i2c-pxa.c =================================================================== ---- linux-2.6.18gum.orig/drivers/i2c/busses/i2c-pxa.c -+++ linux-2.6.18gum/drivers/i2c/busses/i2c-pxa.c +--- linux-2.6.19.orig/drivers/i2c/busses/i2c-pxa.c ++++ linux-2.6.19/drivers/i2c/busses/i2c-pxa.c @@ -32,6 +32,7 @@ #include #include diff --git a/target/device/Gumstix/basix-connex/kernel-patches/bugfix-mmc-clock.patch b/target/device/Gumstix/basix-connex/kernel-patches/bugfix-mmc-clock.patch index 2ece30b..d5da43c 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/bugfix-mmc-clock.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/bugfix-mmc-clock.patch @@ -1,7 +1,7 @@ -Index: linux-2.6.18gum/drivers/mmc/pxamci.c +Index: linux-2.6.19/drivers/mmc/pxamci.c =================================================================== ---- linux-2.6.18gum.orig/drivers/mmc/pxamci.c -+++ linux-2.6.18gum/drivers/mmc/pxamci.c +--- linux-2.6.19.orig/drivers/mmc/pxamci.c ++++ linux-2.6.19/drivers/mmc/pxamci.c @@ -366,8 +366,7 @@ static void pxamci_set_ios(struct mmc_ho if (ios->clock) { diff --git a/target/device/Gumstix/basix-connex/kernel-patches/bugfix-pxa-audio.patch b/target/device/Gumstix/basix-connex/kernel-patches/bugfix-pxa-audio.patch index 95a360e..c3d22d1 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/bugfix-pxa-audio.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/bugfix-pxa-audio.patch @@ -1,7 +1,7 @@ -Index: linux-2.6.18gum/sound/oss/pxa-audio.c +Index: linux-2.6.19/sound/oss/pxa-audio.c =================================================================== ---- linux-2.6.18gum.orig/sound/oss/pxa-audio.c -+++ linux-2.6.18gum/sound/oss/pxa-audio.c +--- linux-2.6.19.orig/sound/oss/pxa-audio.c ++++ linux-2.6.19/sound/oss/pxa-audio.c @@ -731,7 +731,7 @@ static int audio_mmap(struct file *file, audio_buf_t *buf = &s->buffers[i]; if (!buf->master) @@ -11,10 +11,10 @@ Index: linux-2.6.18gum/sound/oss/pxa-audio.c buf->master, vma->vm_page_prot); if (ret) return ret; -Index: linux-2.6.18gum/sound/oss/pxa-audio.h +Index: linux-2.6.19/sound/oss/pxa-audio.h =================================================================== ---- linux-2.6.18gum.orig/sound/oss/pxa-audio.h -+++ linux-2.6.18gum/sound/oss/pxa-audio.h +--- linux-2.6.19.orig/sound/oss/pxa-audio.h ++++ linux-2.6.19/sound/oss/pxa-audio.h @@ -52,3 +52,7 @@ typedef struct { extern int pxa_audio_attach(struct inode *inode, struct file *file, audio_state_t *state); diff --git a/target/device/Gumstix/basix-connex/kernel-patches/bugfix-pxa-cpufreq.patch b/target/device/Gumstix/basix-connex/kernel-patches/bugfix-pxa-cpufreq.patch index d1b85a9..2f29081 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/bugfix-pxa-cpufreq.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/bugfix-pxa-cpufreq.patch @@ -1,7 +1,7 @@ -Index: linux-2.6.18gum/arch/arm/mach-pxa/cpu-pxa.c +Index: linux-2.6.19/arch/arm/mach-pxa/cpu-pxa.c =================================================================== ---- linux-2.6.18gum.orig/arch/arm/mach-pxa/cpu-pxa.c -+++ linux-2.6.18gum/arch/arm/mach-pxa/cpu-pxa.c +--- linux-2.6.19.orig/arch/arm/mach-pxa/cpu-pxa.c ++++ linux-2.6.19/arch/arm/mach-pxa/cpu-pxa.c @@ -60,7 +60,7 @@ typedef struct /* Define the refresh period in mSec for the SDRAM and the number of rows */ diff --git a/target/device/Gumstix/basix-connex/kernel-patches/bugfix-serial-interrupt.patch b/target/device/Gumstix/basix-connex/kernel-patches/bugfix-serial-interrupt.patch index cd10631..2f48567 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/bugfix-serial-interrupt.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/bugfix-serial-interrupt.patch @@ -1,9 +1,9 @@ -Index: linux-2.6.18gum/drivers/serial/pxa.c +Index: linux-2.6.19/drivers/serial/pxa.c =================================================================== ---- linux-2.6.18gum.orig/drivers/serial/pxa.c -+++ linux-2.6.18gum/drivers/serial/pxa.c -@@ -237,15 +237,19 @@ serial_pxa_irq(int irq, void *dev_id, st - struct uart_pxa_port *up = (struct uart_pxa_port *)dev_id; +--- linux-2.6.19.orig/drivers/serial/pxa.c ++++ linux-2.6.19/drivers/serial/pxa.c +@@ -235,15 +235,19 @@ static inline irqreturn_t serial_pxa_irq + struct uart_pxa_port *up = dev_id; unsigned int iir, lsr; + serial_out(up, UART_MCR, serial_in(up, UART_MCR) & ~UART_MCR_RTS); // Clear RTS @@ -15,7 +15,7 @@ Index: linux-2.6.18gum/drivers/serial/pxa.c + } lsr = serial_in(up, UART_LSR); if (lsr & UART_LSR_DR) - receive_chars(up, &lsr, regs); + receive_chars(up, &lsr); check_modem_status(up); if (lsr & UART_LSR_THRE) transmit_chars(up); diff --git a/target/device/Gumstix/basix-connex/kernel-patches/bugfix-serial-register-status.patch b/target/device/Gumstix/basix-connex/kernel-patches/bugfix-serial-register-status.patch index b920bb3..c394248 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/bugfix-serial-register-status.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/bugfix-serial-register-status.patch @@ -1,7 +1,7 @@ -Index: linux-2.6.18gum/drivers/serial/pxa.c +Index: linux-2.6.19/drivers/serial/pxa.c =================================================================== ---- linux-2.6.18gum.orig/drivers/serial/pxa.c -+++ linux-2.6.18gum/drivers/serial/pxa.c +--- linux-2.6.19.orig/drivers/serial/pxa.c ++++ linux-2.6.19/drivers/serial/pxa.c @@ -57,6 +57,8 @@ struct uart_pxa_port { unsigned int lsr_break_flag; unsigned int cken; @@ -11,7 +11,7 @@ Index: linux-2.6.18gum/drivers/serial/pxa.c }; static inline unsigned int serial_in(struct uart_pxa_port *up, int offset) -@@ -160,6 +162,7 @@ receive_chars(struct uart_pxa_port *up, +@@ -159,6 +161,7 @@ static inline void receive_chars(struct ignore_char: *status = serial_in(up, UART_LSR); @@ -19,7 +19,7 @@ Index: linux-2.6.18gum/drivers/serial/pxa.c } while ((*status & UART_LSR_DR) && (max_count-- > 0)); tty_flip_buffer_push(tty); } -@@ -212,7 +215,7 @@ static inline void check_modem_status(st +@@ -211,7 +214,7 @@ static inline void check_modem_status(st int status; status = serial_in(up, UART_MSR); @@ -28,15 +28,15 @@ Index: linux-2.6.18gum/drivers/serial/pxa.c if ((status & UART_MSR_ANY_DELTA) == 0) return; -@@ -244,6 +247,7 @@ serial_pxa_irq(int irq, void *dev_id, st +@@ -242,6 +245,7 @@ static inline irqreturn_t serial_pxa_irq //printk(KERN_WARNING "serial_pxa_irq: odd -- interrupt triggered, but no interrupt in IIR: %08x\n",iir); } lsr = serial_in(up, UART_LSR); + up->lsr = lsr; if (lsr & UART_LSR_DR) - receive_chars(up, &lsr, regs); + receive_chars(up, &lsr); check_modem_status(up); -@@ -260,7 +264,7 @@ static unsigned int serial_pxa_tx_empty( +@@ -258,7 +262,7 @@ static unsigned int serial_pxa_tx_empty( unsigned int ret; spin_lock_irqsave(&up->port.lock, flags); @@ -45,7 +45,7 @@ Index: linux-2.6.18gum/drivers/serial/pxa.c spin_unlock_irqrestore(&up->port.lock, flags); return ret; -@@ -272,7 +276,7 @@ static unsigned int serial_pxa_get_mctrl +@@ -270,7 +274,7 @@ static unsigned int serial_pxa_get_mctrl unsigned char status; unsigned int ret; @@ -54,7 +54,7 @@ Index: linux-2.6.18gum/drivers/serial/pxa.c ret = 0; if (status & UART_MSR_DCD) -@@ -402,10 +406,10 @@ static int serial_pxa_startup(struct uar +@@ -400,10 +404,10 @@ static int serial_pxa_startup(struct uar /* * And clear the interrupt registers again for luck. */ diff --git a/target/device/Gumstix/basix-connex/kernel-patches/compact-flash.patch b/target/device/Gumstix/basix-connex/kernel-patches/compact-flash.patch index 624aad4..38067d9 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/compact-flash.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/compact-flash.patch @@ -1,17 +1,17 @@ -Index: linux-2.6.18gum/drivers/pcmcia/Makefile +Index: linux-2.6.19/drivers/pcmcia/Makefile =================================================================== ---- linux-2.6.18gum.orig/drivers/pcmcia/Makefile -+++ linux-2.6.18gum/drivers/pcmcia/Makefile +--- linux-2.6.19.orig/drivers/pcmcia/Makefile ++++ linux-2.6.19/drivers/pcmcia/Makefile @@ -69,4 +69,4 @@ sa1100_cs-$(CONFIG_SA1100_SIMPAD) += sa pxa2xx_cs-$(CONFIG_ARCH_LUBBOCK) += pxa2xx_lubbock.o sa1111_generic.o pxa2xx_cs-$(CONFIG_MACH_MAINSTONE) += pxa2xx_mainstone.o pxa2xx_cs-$(CONFIG_PXA_SHARPSL) += pxa2xx_sharpsl.o - +pxa2xx_cs-$(CONFIG_ARCH_GUMSTIX) += pxa2xx_gumstix.o -Index: linux-2.6.18gum/drivers/pcmcia/pxa2xx_gumstix.c +Index: linux-2.6.19/drivers/pcmcia/pxa2xx_gumstix.c =================================================================== --- /dev/null -+++ linux-2.6.18gum/drivers/pcmcia/pxa2xx_gumstix.c ++++ linux-2.6.19/drivers/pcmcia/pxa2xx_gumstix.c @@ -0,0 +1,246 @@ +/* + * linux/drivers/pcmcia/pxa2xx_gumstix.c diff --git a/target/device/Gumstix/basix-connex/kernel-patches/compile-fix-pxa_cpufreq.patch b/target/device/Gumstix/basix-connex/kernel-patches/compile-fix-pxa_cpufreq.patch index b7d8b4e..2d9ef2f 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/compile-fix-pxa_cpufreq.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/compile-fix-pxa_cpufreq.patch @@ -1,7 +1,7 @@ -Index: linux-2.6.18gum/arch/arm/mach-pxa/cpu-pxa.c +Index: linux-2.6.19/arch/arm/mach-pxa/cpu-pxa.c =================================================================== ---- linux-2.6.18gum.orig/arch/arm/mach-pxa/cpu-pxa.c 2006-11-02 17:50:00.000000000 -0300 -+++ linux-2.6.18gum/arch/arm/mach-pxa/cpu-pxa.c 2006-11-02 17:51:08.000000000 -0300 +--- linux-2.6.19.orig/arch/arm/mach-pxa/cpu-pxa.c ++++ linux-2.6.19/arch/arm/mach-pxa/cpu-pxa.c @@ -42,7 +42,7 @@ #define DEBUG 0 diff --git a/target/device/Gumstix/basix-connex/kernel-patches/cpufreq-better-freqs.patch b/target/device/Gumstix/basix-connex/kernel-patches/cpufreq-better-freqs.patch index 0a61c77..bf0f6c7 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/cpufreq-better-freqs.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/cpufreq-better-freqs.patch @@ -1,7 +1,7 @@ -Index: linux-2.6.18gum/arch/arm/mach-pxa/cpu-pxa.c +Index: linux-2.6.19/arch/arm/mach-pxa/cpu-pxa.c =================================================================== ---- linux-2.6.18gum.orig/arch/arm/mach-pxa/cpu-pxa.c -+++ linux-2.6.18gum/arch/arm/mach-pxa/cpu-pxa.c +--- linux-2.6.19.orig/arch/arm/mach-pxa/cpu-pxa.c ++++ linux-2.6.19/arch/arm/mach-pxa/cpu-pxa.c @@ -65,8 +65,8 @@ typedef struct #define CCLKCFG_TURBO 0x1 diff --git a/target/device/Gumstix/basix-connex/kernel-patches/cpufreq-ondemand-by-default.patch b/target/device/Gumstix/basix-connex/kernel-patches/cpufreq-ondemand-by-default.patch index 7a83b5e..0afa04b 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/cpufreq-ondemand-by-default.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/cpufreq-ondemand-by-default.patch @@ -1,7 +1,7 @@ -Index: linux-2.6.18gum/drivers/cpufreq/Kconfig +Index: linux-2.6.19/drivers/cpufreq/Kconfig =================================================================== ---- linux-2.6.18gum.orig/drivers/cpufreq/Kconfig -+++ linux-2.6.18gum/drivers/cpufreq/Kconfig +--- linux-2.6.19.orig/drivers/cpufreq/Kconfig ++++ linux-2.6.19/drivers/cpufreq/Kconfig @@ -52,7 +52,7 @@ config CPU_FREQ_STAT_DETAILS choice @@ -26,10 +26,10 @@ Index: linux-2.6.18gum/drivers/cpufreq/Kconfig endchoice config CPU_FREQ_GOV_PERFORMANCE -Index: linux-2.6.18gum/include/linux/cpufreq.h +Index: linux-2.6.19/include/linux/cpufreq.h =================================================================== ---- linux-2.6.18gum.orig/include/linux/cpufreq.h -+++ linux-2.6.18gum/include/linux/cpufreq.h +--- linux-2.6.19.orig/include/linux/cpufreq.h ++++ linux-2.6.19/include/linux/cpufreq.h @@ -281,6 +281,9 @@ extern struct cpufreq_governor cpufreq_g #elif defined(CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE) extern struct cpufreq_governor cpufreq_gov_userspace; diff --git a/target/device/Gumstix/basix-connex/kernel-patches/defconfig.patch b/target/device/Gumstix/basix-connex/kernel-patches/defconfig.patch index a60132e..62d0b11 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/defconfig.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/defconfig.patch @@ -1,7 +1,7 @@ -Index: linux-2.6.18gum/arch/arm/configs/gumstix_defconfig +Index: linux-2.6.19/arch/arm/configs/gumstix_defconfig =================================================================== --- /dev/null -+++ linux-2.6.18gum/arch/arm/configs/gumstix_defconfig ++++ linux-2.6.19/arch/arm/configs/gumstix_defconfig @@ -0,0 +1,761 @@ +# +# Automatically generated make config: don't edit diff --git a/target/device/Gumstix/basix-connex/kernel-patches/disable-uncompress-message.patch b/target/device/Gumstix/basix-connex/kernel-patches/disable-uncompress-message.patch index ef87b47..c7feff6 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/disable-uncompress-message.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/disable-uncompress-message.patch @@ -1,8 +1,8 @@ -Index: linux-2.6.18gum/arch/arm/boot/compressed/misc.c +Index: linux-2.6.19/arch/arm/boot/compressed/misc.c =================================================================== ---- linux-2.6.18gum.orig/arch/arm/boot/compressed/misc.c -+++ linux-2.6.18gum/arch/arm/boot/compressed/misc.c -@@ -301,7 +301,6 @@ void flush_window(void) +--- linux-2.6.19.orig/arch/arm/boot/compressed/misc.c ++++ linux-2.6.19/arch/arm/boot/compressed/misc.c +@@ -322,7 +322,6 @@ void flush_window(void) bytes_out += (ulg)outcnt; output_ptr += (ulg)outcnt; outcnt = 0; @@ -10,7 +10,7 @@ Index: linux-2.6.18gum/arch/arm/boot/compressed/misc.c } #ifndef arch_error -@@ -333,9 +332,7 @@ decompress_kernel(ulg output_start, ulg +@@ -354,9 +353,7 @@ decompress_kernel(ulg output_start, ulg arch_decomp_setup(); makecrc(); @@ -20,7 +20,7 @@ Index: linux-2.6.18gum/arch/arm/boot/compressed/misc.c return output_ptr; } #else -@@ -347,9 +344,7 @@ int main() +@@ -368,9 +365,7 @@ int main() output_data = output_buffer; makecrc(); diff --git a/target/device/Gumstix/basix-connex/kernel-patches/ethernet-config.patch b/target/device/Gumstix/basix-connex/kernel-patches/ethernet-config.patch index 0a87ef0..36fd72d 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/ethernet-config.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/ethernet-config.patch @@ -1,7 +1,7 @@ -Index: linux-2.6.18gum/drivers/net/smc91x.h +Index: linux-2.6.19/drivers/net/smc91x.h =================================================================== ---- linux-2.6.18gum.orig/drivers/net/smc91x.h -+++ linux-2.6.18gum/drivers/net/smc91x.h +--- linux-2.6.19.orig/drivers/net/smc91x.h ++++ linux-2.6.19/drivers/net/smc91x.h @@ -55,6 +55,21 @@ #define SMC_insw(a, r, p, l) readsw((a) + (r), p, l) #define SMC_outsw(a, r, p, l) writesw((a) + (r), p, l) diff --git a/target/device/Gumstix/basix-connex/kernel-patches/flash.patch b/target/device/Gumstix/basix-connex/kernel-patches/flash.patch index fd4f0f1..61f4a43 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/flash.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/flash.patch @@ -1,7 +1,7 @@ -Index: linux-2.6.18gum/drivers/mtd/maps/gumstix-flash.c +Index: linux-2.6.19/drivers/mtd/maps/gumstix-flash.c =================================================================== --- /dev/null -+++ linux-2.6.18gum/drivers/mtd/maps/gumstix-flash.c ++++ linux-2.6.19/drivers/mtd/maps/gumstix-flash.c @@ -0,0 +1,136 @@ +/* + * Map driver for the Gumstix platform @@ -139,10 +139,10 @@ Index: linux-2.6.18gum/drivers/mtd/maps/gumstix-flash.c +MODULE_LICENSE("GPL"); +MODULE_AUTHOR("Gumstix, Inc. "); +MODULE_DESCRIPTION("MTD map driver for the Gumstix Platform"); -Index: linux-2.6.18gum/drivers/mtd/maps/Kconfig +Index: linux-2.6.19/drivers/mtd/maps/Kconfig =================================================================== ---- linux-2.6.18gum.orig/drivers/mtd/maps/Kconfig -+++ linux-2.6.18gum/drivers/mtd/maps/Kconfig +--- linux-2.6.19.orig/drivers/mtd/maps/Kconfig ++++ linux-2.6.19/drivers/mtd/maps/Kconfig @@ -122,6 +122,13 @@ config MTD_SBC_GXX More info at . @@ -157,11 +157,11 @@ Index: linux-2.6.18gum/drivers/mtd/maps/Kconfig config MTD_LUBBOCK tristate "CFI Flash device mapped on Intel Lubbock XScale eval board" depends on ARCH_LUBBOCK && MTD_CFI_INTELEXT && MTD_PARTITIONS -Index: linux-2.6.18gum/drivers/mtd/maps/Makefile +Index: linux-2.6.19/drivers/mtd/maps/Makefile =================================================================== ---- linux-2.6.18gum.orig/drivers/mtd/maps/Makefile -+++ linux-2.6.18gum/drivers/mtd/maps/Makefile -@@ -21,6 +21,7 @@ obj-$(CONFIG_MTD_AMD76XROM) += amd76xrom +--- linux-2.6.19.orig/drivers/mtd/maps/Makefile ++++ linux-2.6.19/drivers/mtd/maps/Makefile +@@ -20,6 +20,7 @@ obj-$(CONFIG_MTD_AMD76XROM) += amd76xrom obj-$(CONFIG_MTD_ICHXROM) += ichxrom.o obj-$(CONFIG_MTD_TSUNAMI) += tsunami_flash.o obj-$(CONFIG_MTD_LUBBOCK) += lubbock-flash.o diff --git a/target/device/Gumstix/basix-connex/kernel-patches/header.patch b/target/device/Gumstix/basix-connex/kernel-patches/header.patch index e40506a..eb8978e 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/header.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/header.patch @@ -1,7 +1,7 @@ -Index: linux-2.6.18gum/include/asm-arm/arch-pxa/gumstix.h +Index: linux-2.6.19/include/asm-arm/arch-pxa/gumstix.h =================================================================== --- /dev/null -+++ linux-2.6.18gum/include/asm-arm/arch-pxa/gumstix.h ++++ linux-2.6.19/include/asm-arm/arch-pxa/gumstix.h @@ -0,0 +1,86 @@ +/* + * linux/include/asm-arm/arch-pxa/gumstix.h diff --git a/target/device/Gumstix/basix-connex/kernel-patches/iwmmxt-on-pxa255.patch b/target/device/Gumstix/basix-connex/kernel-patches/iwmmxt-on-pxa255.patch index 66b6afd..622a1c5 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/iwmmxt-on-pxa255.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/iwmmxt-on-pxa255.patch @@ -1,7 +1,7 @@ -Index: linux-2.6.18gum/arch/arm/mach-pxa/Kconfig +Index: linux-2.6.19/arch/arm/mach-pxa/Kconfig =================================================================== ---- linux-2.6.18gum.orig/arch/arm/mach-pxa/Kconfig -+++ linux-2.6.18gum/arch/arm/mach-pxa/Kconfig +--- linux-2.6.19.orig/arch/arm/mach-pxa/Kconfig ++++ linux-2.6.19/arch/arm/mach-pxa/Kconfig @@ -8,6 +8,7 @@ choice config ARCH_GUMSTIX bool "Gumstix Platform" diff --git a/target/device/Gumstix/basix-connex/kernel-patches/kconfig-arch-cleanup.patch b/target/device/Gumstix/basix-connex/kernel-patches/kconfig-arch-cleanup.patch index 39750bf..b510d9b 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/kconfig-arch-cleanup.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/kconfig-arch-cleanup.patch @@ -1,7 +1,7 @@ -Index: linux-2.6.18gum/arch/arm/mach-clps711x/Kconfig +Index: linux-2.6.19/arch/arm/mach-clps711x/Kconfig =================================================================== ---- linux-2.6.18gum.orig/arch/arm/mach-clps711x/Kconfig -+++ linux-2.6.18gum/arch/arm/mach-clps711x/Kconfig +--- linux-2.6.19.orig/arch/arm/mach-clps711x/Kconfig ++++ linux-2.6.19/arch/arm/mach-clps711x/Kconfig @@ -1,6 +1,7 @@ if ARCH_CLPS711X @@ -10,10 +10,10 @@ Index: linux-2.6.18gum/arch/arm/mach-clps711x/Kconfig config ARCH_AUTCPU12 bool "AUTCPU12" -Index: linux-2.6.18gum/arch/arm/mach-footbridge/Kconfig +Index: linux-2.6.19/arch/arm/mach-footbridge/Kconfig =================================================================== ---- linux-2.6.18gum.orig/arch/arm/mach-footbridge/Kconfig -+++ linux-2.6.18gum/arch/arm/mach-footbridge/Kconfig +--- linux-2.6.19.orig/arch/arm/mach-footbridge/Kconfig ++++ linux-2.6.19/arch/arm/mach-footbridge/Kconfig @@ -1,6 +1,7 @@ if ARCH_FOOTBRIDGE @@ -22,22 +22,10 @@ Index: linux-2.6.18gum/arch/arm/mach-footbridge/Kconfig config ARCH_CATS bool "CATS" -Index: linux-2.6.18gum/arch/arm/mach-iop3xx/Kconfig +Index: linux-2.6.19/arch/arm/mach-lh7a40x/Kconfig =================================================================== ---- linux-2.6.18gum.orig/arch/arm/mach-iop3xx/Kconfig -+++ linux-2.6.18gum/arch/arm/mach-iop3xx/Kconfig -@@ -1,6 +1,7 @@ - if ARCH_IOP3XX - - menu "IOP3xx Implementation Options" -+ depends on ARCH_IOP3XX - - comment "IOP3xx Platform Types" - -Index: linux-2.6.18gum/arch/arm/mach-lh7a40x/Kconfig -=================================================================== ---- linux-2.6.18gum.orig/arch/arm/mach-lh7a40x/Kconfig -+++ linux-2.6.18gum/arch/arm/mach-lh7a40x/Kconfig +--- linux-2.6.19.orig/arch/arm/mach-lh7a40x/Kconfig ++++ linux-2.6.19/arch/arm/mach-lh7a40x/Kconfig @@ -1,6 +1,7 @@ if ARCH_LH7A40X @@ -46,10 +34,10 @@ Index: linux-2.6.18gum/arch/arm/mach-lh7a40x/Kconfig config MACH_KEV7A400 bool "KEV7A400" -Index: linux-2.6.18gum/arch/arm/mach-sa1100/Kconfig +Index: linux-2.6.19/arch/arm/mach-sa1100/Kconfig =================================================================== ---- linux-2.6.18gum.orig/arch/arm/mach-sa1100/Kconfig -+++ linux-2.6.18gum/arch/arm/mach-sa1100/Kconfig +--- linux-2.6.19.orig/arch/arm/mach-sa1100/Kconfig ++++ linux-2.6.19/arch/arm/mach-sa1100/Kconfig @@ -1,6 +1,7 @@ if ARCH_SA1100 diff --git a/target/device/Gumstix/basix-connex/kernel-patches/kobject_get_path_export.patch b/target/device/Gumstix/basix-connex/kernel-patches/kobject_get_path_export.patch index d19f8d5..dade047 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/kobject_get_path_export.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/kobject_get_path_export.patch @@ -1,13 +1,13 @@ Oddly, devices/input/input.c seems to reference a symbol which is in another module but is not exported. -Index: linux-2.6.18gum/lib/kobject.c +Index: linux-2.6.19/lib/kobject.c =================================================================== ---- linux-2.6.18gum.orig/lib/kobject.c -+++ linux-2.6.18gum/lib/kobject.c -@@ -119,6 +119,7 @@ char *kobject_get_path(struct kobject *k - - return path; +--- linux-2.6.19.orig/lib/kobject.c ++++ linux-2.6.19/lib/kobject.c +@@ -132,6 +132,7 @@ void kobject_init(struct kobject * kobj) + init_waitqueue_head(&kobj->poll); + kobj->kset = kset_get(kobj->kset); } +EXPORT_SYMBOL(kobject_get_path); + /** - * kobject_init - initialize object. diff --git a/target/device/Gumstix/basix-connex/kernel-patches/mach-types-fix.patch b/target/device/Gumstix/basix-connex/kernel-patches/mach-types-fix.patch index 25531df..9c4e466 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/mach-types-fix.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/mach-types-fix.patch @@ -1,7 +1,7 @@ -Index: linux-2.6.18gum/arch/arm/tools/mach-types +Index: linux-2.6.19/arch/arm/tools/mach-types =================================================================== ---- linux-2.6.18gum.orig/arch/arm/tools/mach-types -+++ linux-2.6.18gum/arch/arm/tools/mach-types +--- linux-2.6.19.orig/arch/arm/tools/mach-types ++++ linux-2.6.19/arch/arm/tools/mach-types @@ -387,7 +387,7 @@ s5c7375 ARCH_S5C7375 S5C7375 369 spearhead ARCH_SPEARHEAD SPEARHEAD 370 pantera ARCH_PANTERA PANTERA 371 diff --git a/target/device/Gumstix/basix-connex/kernel-patches/misalignment-handling.patch b/target/device/Gumstix/basix-connex/kernel-patches/misalignment-handling.patch index 836d98c..54028f6 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/misalignment-handling.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/misalignment-handling.patch @@ -1,8 +1,8 @@ Change the default alingment handling to not be silent failure -Index: linux-2.6.18gum/arch/arm/mm/alignment.c +Index: linux-2.6.19/arch/arm/mm/alignment.c =================================================================== ---- linux-2.6.18gum.orig/arch/arm/mm/alignment.c -+++ linux-2.6.18gum/arch/arm/mm/alignment.c +--- linux-2.6.19.orig/arch/arm/mm/alignment.c ++++ linux-2.6.19/arch/arm/mm/alignment.c @@ -797,6 +797,8 @@ static int __init alignment_init(void) res->write_proc = proc_alignment_write; #endif @@ -12,11 +12,11 @@ Index: linux-2.6.18gum/arch/arm/mm/alignment.c hook_fault_code(1, do_alignment, SIGILL, "alignment exception"); hook_fault_code(3, do_alignment, SIGILL, "alignment exception"); -Index: linux-2.6.18gum/arch/arm/Kconfig +Index: linux-2.6.19/arch/arm/Kconfig =================================================================== ---- linux-2.6.18gum.orig/arch/arm/Kconfig -+++ linux-2.6.18gum/arch/arm/Kconfig -@@ -614,6 +614,19 @@ config ALIGNMENT_TRAP +--- linux-2.6.19.orig/arch/arm/Kconfig ++++ linux-2.6.19/arch/arm/Kconfig +@@ -639,6 +639,19 @@ config ALIGNMENT_TRAP correct operation of some network protocols. With an IP-only configuration it is safe to say N, otherwise say Y. diff --git a/target/device/Gumstix/basix-connex/kernel-patches/mmc-card-detect.patch b/target/device/Gumstix/basix-connex/kernel-patches/mmc-card-detect.patch index d748eab..2ccee59 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/mmc-card-detect.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/mmc-card-detect.patch @@ -1,7 +1,7 @@ -Index: linux-2.6.18gum/arch/arm/mach-pxa/gumstix.c +Index: linux-2.6.19/arch/arm/mach-pxa/gumstix.c =================================================================== ---- linux-2.6.18gum.orig/arch/arm/mach-pxa/gumstix.c -+++ linux-2.6.18gum/arch/arm/mach-pxa/gumstix.c +--- linux-2.6.19.orig/arch/arm/mach-pxa/gumstix.c ++++ linux-2.6.19/arch/arm/mach-pxa/gumstix.c @@ -29,19 +29,51 @@ #include "generic.h" @@ -57,10 +57,10 @@ Index: linux-2.6.18gum/arch/arm/mach-pxa/gumstix.c }; static int gumstix_udc_is_connected(void) -Index: linux-2.6.18gum/include/asm-arm/arch-pxa/gumstix.h +Index: linux-2.6.19/include/asm-arm/arch-pxa/gumstix.h =================================================================== ---- linux-2.6.18gum.orig/include/asm-arm/arch-pxa/gumstix.h -+++ linux-2.6.18gum/include/asm-arm/arch-pxa/gumstix.h +--- linux-2.6.19.orig/include/asm-arm/arch-pxa/gumstix.h ++++ linux-2.6.19/include/asm-arm/arch-pxa/gumstix.h @@ -36,6 +36,12 @@ #define GPIO_GUMSTIX_USB_GPIOx_CON_MD (GPIO_GUMSTIX_USB_GPIOx | GPIO_OUT) #define GPIO_GUMSTIX_USB_GPIOx_DIS_MD (GPIO_GUMSTIX_USB_GPIOx | GPIO_IN) diff --git a/target/device/Gumstix/basix-connex/kernel-patches/modular-init-bluetooth.patch b/target/device/Gumstix/basix-connex/kernel-patches/modular-init-bluetooth.patch index 508f317..0a8a75e 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/modular-init-bluetooth.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/modular-init-bluetooth.patch @@ -1,7 +1,7 @@ -Index: linux-2.6.18gum/net/bluetooth/Kconfig +Index: linux-2.6.19/net/bluetooth/Kconfig =================================================================== ---- linux-2.6.18gum.orig/net/bluetooth/Kconfig -+++ linux-2.6.18gum/net/bluetooth/Kconfig +--- linux-2.6.19.orig/net/bluetooth/Kconfig ++++ linux-2.6.19/net/bluetooth/Kconfig @@ -30,6 +30,12 @@ menuconfig BT Bluetooth kernel modules are provided in the BlueZ packages. For more information, see . @@ -15,10 +15,10 @@ Index: linux-2.6.18gum/net/bluetooth/Kconfig config BT_L2CAP tristate "L2CAP protocol support" depends on BT -Index: linux-2.6.18gum/net/bluetooth/Makefile +Index: linux-2.6.19/net/bluetooth/Makefile =================================================================== ---- linux-2.6.18gum.orig/net/bluetooth/Makefile -+++ linux-2.6.18gum/net/bluetooth/Makefile +--- linux-2.6.19.orig/net/bluetooth/Makefile ++++ linux-2.6.19/net/bluetooth/Makefile @@ -9,5 +9,6 @@ obj-$(CONFIG_BT_RFCOMM) += rfcomm/ obj-$(CONFIG_BT_BNEP) += bnep/ obj-$(CONFIG_BT_CMTP) += cmtp/ @@ -26,11 +26,11 @@ Index: linux-2.6.18gum/net/bluetooth/Makefile +obj-$(CONFIG_BT_GUMSTIX)+= gumstix_bluetooth.o bluetooth-objs := af_bluetooth.o hci_core.o hci_conn.o hci_event.o hci_sock.o hci_sysfs.o lib.o -Index: linux-2.6.18gum/net/bluetooth/af_bluetooth.c +Index: linux-2.6.19/net/bluetooth/af_bluetooth.c =================================================================== ---- linux-2.6.18gum.orig/net/bluetooth/af_bluetooth.c -+++ linux-2.6.18gum/net/bluetooth/af_bluetooth.c -@@ -305,12 +305,20 @@ static struct net_proto_family bt_sock_f +--- linux-2.6.19.orig/net/bluetooth/af_bluetooth.c ++++ linux-2.6.19/net/bluetooth/af_bluetooth.c +@@ -327,12 +327,20 @@ static struct net_proto_family bt_sock_f .create = bt_sock_create, }; @@ -51,10 +51,10 @@ Index: linux-2.6.18gum/net/bluetooth/af_bluetooth.c err = bt_sysfs_init(); if (err < 0) return err; -Index: linux-2.6.18gum/net/bluetooth/gumstix_bluetooth.c +Index: linux-2.6.19/net/bluetooth/gumstix_bluetooth.c =================================================================== --- /dev/null -+++ linux-2.6.18gum/net/bluetooth/gumstix_bluetooth.c ++++ linux-2.6.19/net/bluetooth/gumstix_bluetooth.c @@ -0,0 +1,50 @@ +/* + * Gumstix bluetooth module intialization driver diff --git a/target/device/Gumstix/basix-connex/kernel-patches/modular-init-smc91x.patch b/target/device/Gumstix/basix-connex/kernel-patches/modular-init-smc91x.patch index 197b127..55db1c1 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/modular-init-smc91x.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/modular-init-smc91x.patch @@ -1,8 +1,8 @@ -Index: linux-2.6.18gum/drivers/net/Kconfig +Index: linux-2.6.19/drivers/net/Kconfig =================================================================== ---- linux-2.6.18gum.orig/drivers/net/Kconfig -+++ linux-2.6.18gum/drivers/net/Kconfig -@@ -838,6 +838,12 @@ config SMC91X +--- linux-2.6.19.orig/drivers/net/Kconfig ++++ linux-2.6.19/drivers/net/Kconfig +@@ -835,6 +835,12 @@ config SMC91X module, say M here and read as well as . @@ -15,11 +15,11 @@ Index: linux-2.6.18gum/drivers/net/Kconfig config SMC9194 tristate "SMC 9194 support" depends on NET_VENDOR_SMC && (ISA || MAC && BROKEN) -Index: linux-2.6.18gum/drivers/net/Makefile +Index: linux-2.6.19/drivers/net/Makefile =================================================================== ---- linux-2.6.18gum.orig/drivers/net/Makefile -+++ linux-2.6.18gum/drivers/net/Makefile -@@ -202,6 +202,7 @@ obj-$(CONFIG_SMC911X) += smc911x.o +--- linux-2.6.19.orig/drivers/net/Makefile ++++ linux-2.6.19/drivers/net/Makefile +@@ -197,6 +197,7 @@ obj-$(CONFIG_SMC911X) += smc911x.o obj-$(CONFIG_DM9000) += dm9000.o obj-$(CONFIG_FEC_8XX) += fec_8xx/ @@ -27,10 +27,10 @@ Index: linux-2.6.18gum/drivers/net/Makefile obj-$(CONFIG_ARM) += arm/ obj-$(CONFIG_DEV_APPLETALK) += appletalk/ obj-$(CONFIG_TR) += tokenring/ -Index: linux-2.6.18gum/drivers/net/smc91x.c +Index: linux-2.6.19/drivers/net/smc91x.c =================================================================== ---- linux-2.6.18gum.orig/drivers/net/smc91x.c -+++ linux-2.6.18gum/drivers/net/smc91x.c +--- linux-2.6.19.orig/drivers/net/smc91x.c ++++ linux-2.6.19/drivers/net/smc91x.c @@ -2361,6 +2361,10 @@ static struct platform_driver smc_driver }, }; @@ -53,10 +53,10 @@ Index: linux-2.6.18gum/drivers/net/smc91x.c return platform_driver_register(&smc_driver); } -Index: linux-2.6.18gum/drivers/net/gumstix-smc91x.c +Index: linux-2.6.19/drivers/net/gumstix-smc91x.c =================================================================== --- /dev/null -+++ linux-2.6.18gum/drivers/net/gumstix-smc91x.c ++++ linux-2.6.19/drivers/net/gumstix-smc91x.c @@ -0,0 +1,143 @@ +/* + * Gumstix SMC91C111 chip intialization driver diff --git a/target/device/Gumstix/basix-connex/kernel-patches/modular-init-usb-gadget.patch b/target/device/Gumstix/basix-connex/kernel-patches/modular-init-usb-gadget.patch index 9ce35bd..c045f54 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/modular-init-usb-gadget.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/modular-init-usb-gadget.patch @@ -1,7 +1,7 @@ -Index: linux-2.6.18gum/drivers/usb/gadget/Kconfig +Index: linux-2.6.19/drivers/usb/gadget/Kconfig =================================================================== ---- linux-2.6.18gum.orig/drivers/usb/gadget/Kconfig -+++ linux-2.6.18gum/drivers/usb/gadget/Kconfig +--- linux-2.6.19.orig/drivers/usb/gadget/Kconfig ++++ linux-2.6.19/drivers/usb/gadget/Kconfig @@ -56,6 +56,14 @@ config USB_GADGET_DEBUG_FILES config USB_GADGET_SELECTED boolean @@ -17,10 +17,10 @@ Index: linux-2.6.18gum/drivers/usb/gadget/Kconfig # # USB Peripheral Controller Support # -Index: linux-2.6.18gum/drivers/usb/gadget/Makefile +Index: linux-2.6.19/drivers/usb/gadget/Makefile =================================================================== ---- linux-2.6.18gum.orig/drivers/usb/gadget/Makefile -+++ linux-2.6.18gum/drivers/usb/gadget/Makefile +--- linux-2.6.19.orig/drivers/usb/gadget/Makefile ++++ linux-2.6.19/drivers/usb/gadget/Makefile @@ -8,6 +8,7 @@ obj-$(CONFIG_USB_GOKU) += goku_udc.o obj-$(CONFIG_USB_OMAP) += omap_udc.o obj-$(CONFIG_USB_LH7A40X) += lh7a40x_udc.o @@ -29,11 +29,11 @@ Index: linux-2.6.18gum/drivers/usb/gadget/Makefile # # USB gadget drivers -Index: linux-2.6.18gum/drivers/usb/gadget/pxa2xx_udc.c +Index: linux-2.6.19/drivers/usb/gadget/pxa2xx_udc.c =================================================================== ---- linux-2.6.18gum.orig/drivers/usb/gadget/pxa2xx_udc.c -+++ linux-2.6.18gum/drivers/usb/gadget/pxa2xx_udc.c -@@ -2687,8 +2687,16 @@ static struct platform_driver udc_driver +--- linux-2.6.19.orig/drivers/usb/gadget/pxa2xx_udc.c ++++ linux-2.6.19/drivers/usb/gadget/pxa2xx_udc.c +@@ -2752,8 +2752,16 @@ static struct platform_driver udc_driver }, }; @@ -50,10 +50,10 @@ Index: linux-2.6.18gum/drivers/usb/gadget/pxa2xx_udc.c printk(KERN_INFO "%s: version %s\n", driver_name, DRIVER_VERSION); return platform_driver_register(&udc_driver); } -Index: linux-2.6.18gum/drivers/usb/gadget/gumstix_gadget.c +Index: linux-2.6.19/drivers/usb/gadget/gumstix_gadget.c =================================================================== --- /dev/null -+++ linux-2.6.18gum/drivers/usb/gadget/gumstix_gadget.c ++++ linux-2.6.19/drivers/usb/gadget/gumstix_gadget.c @@ -0,0 +1,49 @@ +/* + * Gumstix USB gadget intialization driver diff --git a/target/device/Gumstix/basix-connex/kernel-patches/proc-gpio.patch b/target/device/Gumstix/basix-connex/kernel-patches/proc-gpio.patch index ad543c7..252f088 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/proc-gpio.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/proc-gpio.patch @@ -1,8 +1,8 @@ -Index: linux-2.6.18gum/arch/arm/Kconfig +Index: linux-2.6.19gum/arch/arm/Kconfig =================================================================== ---- linux-2.6.18gum.orig/arch/arm/Kconfig -+++ linux-2.6.18gum/arch/arm/Kconfig -@@ -411,6 +411,8 @@ config PCI_HOST_VIA82C505 +--- linux-2.6.19gum.orig/arch/arm/Kconfig ++++ linux-2.6.19gum/arch/arm/Kconfig +@@ -435,6 +435,8 @@ config PCI_HOST_VIA82C505 depends on PCI && ARCH_SHARK default y @@ -11,19 +11,19 @@ Index: linux-2.6.18gum/arch/arm/Kconfig source "drivers/pci/Kconfig" source "drivers/pcmcia/Kconfig" -Index: linux-2.6.18gum/drivers/Makefile +Index: linux-2.6.19gum/drivers/Makefile =================================================================== ---- linux-2.6.18gum.orig/drivers/Makefile -+++ linux-2.6.18gum/drivers/Makefile -@@ -76,3 +76,4 @@ obj-$(CONFIG_CRYPTO) += crypto/ +--- linux-2.6.19gum.orig/drivers/Makefile ++++ linux-2.6.19gum/drivers/Makefile +@@ -77,3 +77,4 @@ obj-$(CONFIG_CRYPTO) += crypto/ obj-$(CONFIG_SUPERH) += sh/ obj-$(CONFIG_GENERIC_TIME) += clocksource/ obj-$(CONFIG_DMA_ENGINE) += dma/ +obj-$(CONFIG_PROC_GPIO) += gpio/ -Index: linux-2.6.18gum/drivers/gpio/Kconfig +Index: linux-2.6.19gum/drivers/gpio/Kconfig =================================================================== --- /dev/null -+++ linux-2.6.18gum/drivers/gpio/Kconfig ++++ linux-2.6.19gum/drivers/gpio/Kconfig @@ -0,0 +1,6 @@ +config PROC_GPIO + tristate "GPIO /proc interface" @@ -31,19 +31,19 @@ Index: linux-2.6.18gum/drivers/gpio/Kconfig + help + This enables an interface under /proc/gpio which allows reading or setting + of any GPIO, and also changing the GPIO alt function mode of any line. -Index: linux-2.6.18gum/drivers/gpio/Makefile +Index: linux-2.6.19gum/drivers/gpio/Makefile =================================================================== --- /dev/null -+++ linux-2.6.18gum/drivers/gpio/Makefile ++++ linux-2.6.19gum/drivers/gpio/Makefile @@ -0,0 +1,3 @@ +# Expose GPIOs under /proc +obj-$(CONFIG_PROC_GPIO) += proc_gpio.o + -Index: linux-2.6.18gum/drivers/gpio/proc_gpio.c +Index: linux-2.6.19gum/drivers/gpio/proc_gpio.c =================================================================== --- /dev/null -+++ linux-2.6.18gum/drivers/gpio/proc_gpio.c -@@ -0,0 +1,355 @@ ++++ linux-2.6.19gum/drivers/gpio/proc_gpio.c +@@ -0,0 +1,354 @@ +/* + * + * PXA25x GPIOs exposed under /proc for reading and writing @@ -53,7 +53,6 @@ Index: linux-2.6.18gum/drivers/gpio/proc_gpio.c + * + */ + -+#include +#include +#include +#include diff --git a/target/device/Gumstix/basix-connex/kernel-patches/pxa-udc-gpio.patch b/target/device/Gumstix/basix-connex/kernel-patches/pxa-udc-gpio.patch dissimilarity index 80% index fb5c771..9a20534 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/pxa-udc-gpio.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/pxa-udc-gpio.patch @@ -1,220 +1,42 @@ -Index: linux-2.6.18gum/arch/arm/mach-pxa/gumstix.c -=================================================================== ---- linux-2.6.18gum.orig/arch/arm/mach-pxa/gumstix.c -+++ linux-2.6.18gum/arch/arm/mach-pxa/gumstix.c -@@ -25,7 +25,7 @@ - #include - #include - #include --#include -+#include - - #include "generic.h" - -@@ -76,26 +76,9 @@ static struct pxamci_platform_data gumst - .exit = gumstix_mci_exit, - }; - --static int gumstix_udc_is_connected(void) --{ -- return !! (GPLR(GPIO_GUMSTIX_USB_GPIOn) & GPIO_bit(GPIO_GUMSTIX_USB_GPIOn)); --} -- --static void gumstix_udc_command(int connect_command) --{ -- if (connect_command == PXA2XX_UDC_CMD_CONNECT) { -- pxa_gpio_mode(GPIO_GUMSTIX_USB_GPIOx_CON_MD); -- GPSR(GPIO_GUMSTIX_USB_GPIOx) = GPIO_bit(GPIO_GUMSTIX_USB_GPIOx); -- } -- if (connect_command == PXA2XX_UDC_CMD_DISCONNECT) { -- GPCR(GPIO_GUMSTIX_USB_GPIOx) = GPIO_bit(GPIO_GUMSTIX_USB_GPIOx); -- pxa_gpio_mode(GPIO_GUMSTIX_USB_GPIOx_DIS_MD); -- } --} -- - static struct pxa2xx_udc_mach_info gumstix_udc_info __initdata = { -- .udc_is_connected = gumstix_udc_is_connected, -- .udc_command = gumstix_udc_command, -+ .gpio_vbus = GPIO_GUMSTIX_USB_GPIOn, -+ .gpio_pullup = GPIO_GUMSTIX_USB_GPIOx, - }; - - static struct platform_device gum_audio_device = { -Index: linux-2.6.18gum/drivers/usb/gadget/pxa2xx_udc.c -=================================================================== ---- linux-2.6.18gum.orig/drivers/usb/gadget/pxa2xx_udc.c -+++ linux-2.6.18gum/drivers/usb/gadget/pxa2xx_udc.c -@@ -146,6 +146,39 @@ module_param(fifo_mode, ushort, 0); - MODULE_PARM_DESC (fifo_mode, "pxa2xx udc fifo mode"); - #endif - -+/* one GPIO should be used to detect VBUS from the host */ -+static int is_vbus_present(void) -+{ -+ struct pxa2xx_udc_mach_info *mach = the_controller->mach; -+ -+ if (mach->gpio_vbus) -+ return pxa_gpio_get(mach->gpio_vbus); -+ if (mach->udc_is_connected) -+ return mach->udc_is_connected(); -+ return 1; -+} -+ -+/* one GPIO should control a D+ pullup, so host sees this device (or not) */ -+static void pullup_off(void) -+{ -+ struct pxa2xx_udc_mach_info *mach = the_controller->mach; -+ -+ if (mach->gpio_pullup) -+ pxa_gpio_set(mach->gpio_pullup, 0); -+ else if (mach->udc_command) -+ mach->udc_command(PXA2XX_UDC_CMD_DISCONNECT); -+} -+ -+static void pullup_on(void) -+{ -+ struct pxa2xx_udc_mach_info *mach = the_controller->mach; -+ -+ if (mach->gpio_pullup) -+ pxa_gpio_set(mach->gpio_pullup, 1); -+ else if (mach->udc_command) -+ mach->udc_command(PXA2XX_UDC_CMD_CONNECT); -+} -+ - /* --------------------------------------------------------------------------- - * endpoint related parts of the api to the usb controller hardware, - * used by gadget driver; and the inner talker-to-hardware core. -@@ -1726,6 +1759,16 @@ lubbock_vbus_irq(int irq, void *_dev, st - - #endif - -+static irqreturn_t -+udc_vbus_irq(int irq, void *_dev, struct pt_regs *r) -+{ -+ struct pxa2xx_udc *dev = _dev; -+ int vbus = pxa_gpio_get(dev->mach->gpio_vbus); -+ -+ pxa2xx_udc_vbus_session(&dev->gadget, vbus); -+ return IRQ_HANDLED; -+} -+ - - /*-------------------------------------------------------------------------*/ - -@@ -2443,7 +2486,7 @@ static struct pxa2xx_udc memory = { - static int __init pxa2xx_udc_probe(struct platform_device *pdev) - { - struct pxa2xx_udc *dev = &memory; -- int retval, out_dma = 1; -+ int retval, out_dma = 1, vbus_irq; - u32 chiprev; - - /* insist on Intel/ARM/XScale */ -@@ -2543,6 +2586,17 @@ static int __init pxa2xx_udc_probe(struc - dev->dev = &pdev->dev; - dev->mach = pdev->dev.platform_data; - -+ if (dev->mach->gpio_vbus) { -+ vbus_irq = IRQ_GPIO(dev->mach->gpio_vbus & GPIO_MD_MASK_NR); -+ pxa_gpio_mode((dev->mach->gpio_vbus & GPIO_MD_MASK_NR) -+ | GPIO_IN); -+ set_irq_type(vbus_irq, IRQT_BOTHEDGE); -+ } else -+ vbus_irq = 0; -+ if (dev->mach->gpio_pullup) -+ pxa_gpio_mode((dev->mach->gpio_pullup & GPIO_MD_MASK_NR) -+ | GPIO_OUT | GPIO_DFLT_LOW); -+ - init_timer(&dev->timer); - dev->timer.function = udc_watchdog; - dev->timer.data = (unsigned long) dev; -@@ -2597,8 +2651,19 @@ lubbock_fail0: - HEX_DISPLAY(dev->stats.irqs); - LUB_DISC_BLNK_LED &= 0xff; - #endif -- } -+ } else - #endif -+ if (vbus_irq) { -+ retval = request_irq(vbus_irq, udc_vbus_irq, -+ SA_INTERRUPT | SA_SAMPLE_RANDOM, -+ driver_name, dev); -+ if (retval != 0) { -+ printk(KERN_ERR "%s: can't get irq %i, err %d\n", -+ driver_name, vbus_irq, retval); -+ free_irq(IRQ_USB, dev); -+ return -EBUSY; -+ } -+ } - create_proc_files(); - - return 0; -@@ -2627,6 +2692,9 @@ static int __exit pxa2xx_udc_remove(stru - free_irq(LUBBOCK_USB_IRQ, dev); - } - #endif -+ -+ if (dev->mach->gpio_vbus) free_irq(IRQ_GPIO(dev->mach->gpio_vbus), dev); -+ - platform_set_drvdata(pdev, NULL); - the_controller = NULL; - return 0; -Index: linux-2.6.18gum/drivers/usb/gadget/pxa2xx_udc.h -=================================================================== ---- linux-2.6.18gum.orig/drivers/usb/gadget/pxa2xx_udc.h -+++ linux-2.6.18gum/drivers/usb/gadget/pxa2xx_udc.h -@@ -177,27 +177,19 @@ struct pxa2xx_udc { - - static struct pxa2xx_udc *the_controller; - --/* one GPIO should be used to detect VBUS from the host */ --static inline int is_vbus_present(void) -+static inline int pxa_gpio_get(unsigned gpio) - { -- if (!the_controller->mach->udc_is_connected) -- return 1; -- return the_controller->mach->udc_is_connected(); -+ return (GPLR(gpio) & GPIO_bit(gpio)) != 0; - } - --/* one GPIO should control a D+ pullup, so host sees this device (or not) */ --static inline void pullup_off(void) -+static inline void pxa_gpio_set(unsigned gpio, int is_on) - { -- if (!the_controller->mach->udc_command) -- return; -- the_controller->mach->udc_command(PXA2XX_UDC_CMD_DISCONNECT); --} -+ int mask = GPIO_bit(gpio); - --static inline void pullup_on(void) --{ -- if (!the_controller->mach->udc_command) -- return; -- the_controller->mach->udc_command(PXA2XX_UDC_CMD_CONNECT); -+ if (is_on) -+ GPSR(gpio) = mask; -+ else -+ GPCR(gpio) = mask; - } - - /*-------------------------------------------------------------------------*/ -Index: linux-2.6.18gum/include/asm-arm/arch-pxa/udc.h -=================================================================== ---- linux-2.6.18gum.orig/include/asm-arm/arch-pxa/udc.h -+++ linux-2.6.18gum/include/asm-arm/arch-pxa/udc.h -@@ -12,6 +12,14 @@ struct pxa2xx_udc_mach_info { - void (*udc_command)(int cmd); - #define PXA2XX_UDC_CMD_CONNECT 0 /* let host see us */ - #define PXA2XX_UDC_CMD_DISCONNECT 1 /* so host won't see us */ -+ -+ /* Boards following the design guidelines in the developer's manual, -+ * with on-chip GPIOs not Lubbock's wierd hardware, can have a sane -+ * VBUS IRQ and omit the methods above. Store the GPIO number -+ * here; for GPIO 0, also mask in one of the pxa_gpio_mode() bits. -+ */ -+ u16 gpio_vbus; /* high == vbus present */ -+ u16 gpio_pullup; /* high == pullup activated */ - }; - - extern void pxa_set_udc_info(struct pxa2xx_udc_mach_info *info); +Index: linux-2.6.19/arch/arm/mach-pxa/gumstix.c +=================================================================== +--- linux-2.6.19.orig/arch/arm/mach-pxa/gumstix.c ++++ linux-2.6.19/arch/arm/mach-pxa/gumstix.c +@@ -25,7 +25,7 @@ + #include + #include + #include +-#include ++#include + + #include "generic.h" + +@@ -76,26 +76,9 @@ static struct pxamci_platform_data gumst + .exit = gumstix_mci_exit, + }; + +-static int gumstix_udc_is_connected(void) +-{ +- return !! (GPLR(GPIO_GUMSTIX_USB_GPIOn) & GPIO_bit(GPIO_GUMSTIX_USB_GPIOn)); +-} +- +-static void gumstix_udc_command(int connect_command) +-{ +- if (connect_command == PXA2XX_UDC_CMD_CONNECT) { +- pxa_gpio_mode(GPIO_GUMSTIX_USB_GPIOx_CON_MD); +- GPSR(GPIO_GUMSTIX_USB_GPIOx) = GPIO_bit(GPIO_GUMSTIX_USB_GPIOx); +- } +- if (connect_command == PXA2XX_UDC_CMD_DISCONNECT) { +- GPCR(GPIO_GUMSTIX_USB_GPIOx) = GPIO_bit(GPIO_GUMSTIX_USB_GPIOx); +- pxa_gpio_mode(GPIO_GUMSTIX_USB_GPIOx_DIS_MD); +- } +-} +- + static struct pxa2xx_udc_mach_info gumstix_udc_info __initdata = { +- .udc_is_connected = gumstix_udc_is_connected, +- .udc_command = gumstix_udc_command, ++ .gpio_vbus = GPIO_GUMSTIX_USB_GPIOn, ++ .gpio_pullup = GPIO_GUMSTIX_USB_GPIOx, + }; + + static struct platform_device gum_audio_device = { diff --git a/target/device/Gumstix/basix-connex/kernel-patches/pxa255-gpio-count-bugfix.patch b/target/device/Gumstix/basix-connex/kernel-patches/pxa255-gpio-count-bugfix.patch deleted file mode 100644 index 727e5e3..0000000 --- a/target/device/Gumstix/basix-connex/kernel-patches/pxa255-gpio-count-bugfix.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: linux-2.6.18gum/include/asm-arm/arch-pxa/irqs.h -=================================================================== ---- linux-2.6.18gum.orig/include/asm-arm/arch-pxa/irqs.h -+++ linux-2.6.18gum/include/asm-arm/arch-pxa/irqs.h -@@ -73,7 +73,7 @@ - #define IRQ_TO_GPIO(i) (((i) < IRQ_GPIO(2)) ? ((i) - IRQ_GPIO0) : IRQ_TO_GPIO_2_x(i)) - - #if defined(CONFIG_PXA25x) --#define PXA_LAST_GPIO 80 -+#define PXA_LAST_GPIO 84 - #elif defined(CONFIG_PXA27x) - #define PXA_LAST_GPIO 127 - #endif diff --git a/target/device/Gumstix/basix-connex/kernel-patches/pxa2xx_udc.patch b/target/device/Gumstix/basix-connex/kernel-patches/pxa2xx_udc.patch index dc7d7aa..1381835 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/pxa2xx_udc.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/pxa2xx_udc.patch @@ -1,7 +1,7 @@ -Index: linux-2.6.18gum/drivers/usb/gadget/pxa2xx_udc.c +Index: linux-2.6.19gum/drivers/usb/gadget/pxa2xx_udc.c =================================================================== ---- linux-2.6.18gum.orig/drivers/usb/gadget/pxa2xx_udc.c -+++ linux-2.6.18gum/drivers/usb/gadget/pxa2xx_udc.c +--- linux-2.6.19gum.orig/drivers/usb/gadget/pxa2xx_udc.c ++++ linux-2.6.19gum/drivers/usb/gadget/pxa2xx_udc.c @@ -52,6 +52,7 @@ #include #include @@ -21,7 +21,16 @@ Index: linux-2.6.18gum/drivers/usb/gadget/pxa2xx_udc.c #include "pxa2xx_udc.h" -@@ -2499,6 +2504,41 @@ static int __init pxa2xx_udc_probe(struc +@@ -2477,7 +2482,7 @@ static struct pxa2xx_udc memory = { + /* + * probe - binds to the platform device + */ +-static int __init pxa2xx_udc_probe(struct platform_device *pdev) ++static int pxa2xx_udc_probe(struct platform_device *pdev) + { + struct pxa2xx_udc *dev = &memory; + int retval, out_dma = 1, vbus_irq; +@@ -2541,6 +2546,41 @@ static int __init pxa2xx_udc_probe(struc } #endif @@ -63,3 +72,12 @@ Index: linux-2.6.18gum/drivers/usb/gadget/pxa2xx_udc.c /* other non-static parts of init */ dev->dev = &pdev->dev; dev->mach = pdev->dev.platform_data; +@@ -2632,7 +2672,7 @@ static void pxa2xx_udc_shutdown(struct p + pullup_off(); + } + +-static int __exit pxa2xx_udc_remove(struct platform_device *pdev) ++static int pxa2xx_udc_remove(struct platform_device *pdev) + { + struct pxa2xx_udc *dev = platform_get_drvdata(pdev); + diff --git a/target/device/Gumstix/basix-connex/kernel-patches/rmk-2022-2-rtctime-sa110-pxa255-driver.patch b/target/device/Gumstix/basix-connex/kernel-patches/rmk-2022-2-rtctime-sa110-pxa255-driver.patch index d682f51..2b5d3e0 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/rmk-2022-2-rtctime-sa110-pxa255-driver.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/rmk-2022-2-rtctime-sa110-pxa255-driver.patch @@ -1,7 +1,7 @@ -Index: linux-2.6.18gum/drivers/char/sa1100-rtc.c +Index: linux-2.6.19/drivers/char/sa1100-rtc.c =================================================================== --- /dev/null -+++ linux-2.6.18gum/drivers/char/sa1100-rtc.c ++++ linux-2.6.19/drivers/char/sa1100-rtc.c @@ -0,0 +1,297 @@ +/* + * Real Time Clock interface for Linux on StrongARM SA1100 @@ -300,11 +300,11 @@ Index: linux-2.6.18gum/drivers/char/sa1100-rtc.c +MODULE_AUTHOR("Nils Faerber "); +MODULE_DESCRIPTION("SA1100 Realtime Clock Driver (RTC)"); +MODULE_LICENSE("GPL"); /* so says the header */ -Index: linux-2.6.18gum/drivers/char/Makefile +Index: linux-2.6.19/drivers/char/Makefile =================================================================== ---- linux-2.6.18gum.orig/drivers/char/Makefile -+++ linux-2.6.18gum/drivers/char/Makefile -@@ -63,6 +63,7 @@ obj-$(CONFIG_RTC) += rtc.o +--- linux-2.6.19.orig/drivers/char/Makefile ++++ linux-2.6.19/drivers/char/Makefile +@@ -66,6 +66,7 @@ obj-$(CONFIG_RTC) += rtc.o obj-$(CONFIG_HPET) += hpet.o obj-$(CONFIG_GEN_RTC) += genrtc.o obj-$(CONFIG_EFI_RTC) += efirtc.o @@ -312,11 +312,11 @@ Index: linux-2.6.18gum/drivers/char/Makefile obj-$(CONFIG_SGI_DS1286) += ds1286.o obj-$(CONFIG_SGI_IP27_RTC) += ip27-rtc.o obj-$(CONFIG_DS1302) += ds1302.o -Index: linux-2.6.18gum/drivers/char/Kconfig +Index: linux-2.6.19/drivers/char/Kconfig =================================================================== ---- linux-2.6.18gum.orig/drivers/char/Kconfig -+++ linux-2.6.18gum/drivers/char/Kconfig -@@ -816,6 +816,10 @@ config COBALT_LCD +--- linux-2.6.19.orig/drivers/char/Kconfig ++++ linux-2.6.19/drivers/char/Kconfig +@@ -800,6 +800,10 @@ config COBALT_LCD This option enables support for the LCD display and buttons found on Cobalt systems through a misc device. diff --git a/target/device/Gumstix/basix-connex/kernel-patches/serial-divisor.patch b/target/device/Gumstix/basix-connex/kernel-patches/serial-divisor.patch index 4aa4723..44ec478 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/serial-divisor.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/serial-divisor.patch @@ -1,7 +1,7 @@ -Index: linux-2.6.18gum/drivers/serial/pxa.c +Index: linux-2.6.19/drivers/serial/pxa.c =================================================================== ---- linux-2.6.18gum.orig/drivers/serial/pxa.c -+++ linux-2.6.18gum/drivers/serial/pxa.c +--- linux-2.6.19.orig/drivers/serial/pxa.c ++++ linux-2.6.19/drivers/serial/pxa.c @@ -41,6 +41,7 @@ #include #include @@ -10,7 +10,7 @@ Index: linux-2.6.18gum/drivers/serial/pxa.c #include #include -@@ -580,8 +581,16 @@ static void serial_pxa_config_port(struc +@@ -577,8 +578,16 @@ static void serial_pxa_config_port(struc static int serial_pxa_verify_port(struct uart_port *port, struct serial_struct *ser) { diff --git a/target/device/Gumstix/basix-connex/kernel-patches/serial-ether-addr.patch b/target/device/Gumstix/basix-connex/kernel-patches/serial-ether-addr.patch index 29c9b2d..701f148 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/serial-ether-addr.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/serial-ether-addr.patch @@ -1,7 +1,7 @@ -Index: linux-2.6.18gum/drivers/usb/gadget/ether.c +Index: linux-2.6.19/drivers/usb/gadget/ether.c =================================================================== ---- linux-2.6.18gum.orig/drivers/usb/gadget/ether.c -+++ linux-2.6.18gum/drivers/usb/gadget/ether.c +--- linux-2.6.19.orig/drivers/usb/gadget/ether.c ++++ linux-2.6.19/drivers/usb/gadget/ether.c @@ -2184,6 +2184,29 @@ static u8 __devinit nibble (unsigned cha return 0; } diff --git a/target/device/Gumstix/basix-connex/kernel-patches/series b/target/device/Gumstix/basix-connex/kernel-patches/series index a1728fc..3a93f99 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/series +++ b/target/device/Gumstix/basix-connex/kernel-patches/series @@ -5,7 +5,6 @@ compact-flash.patch defconfig.patch flash.patch kconfig-arch-cleanup.patch -pxa255-gpio-count-bugfix.patch pxa2xx_udc.patch bkpxa-pxa-cpu.patch bkpxa-pxa-cpufreq.patch @@ -29,8 +28,6 @@ bugfix-serial-interrupt.patch bugfix-serial-register-status.patch mach-types-fix.patch ucb1400-touchscreen.patch -add_input_randomness_export.patch -kobject_get_path_export.patch ucb1400-ac97-audio.patch disable-uncompress-message.patch serial-divisor.patch diff --git a/target/device/Gumstix/basix-connex/kernel-patches/smc-ether-addr.patch b/target/device/Gumstix/basix-connex/kernel-patches/smc-ether-addr.patch index 02c6f22..8479527 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/smc-ether-addr.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/smc-ether-addr.patch @@ -1,7 +1,7 @@ -Index: linux-2.6.18gum/drivers/net/smc91x.c +Index: linux-2.6.19/drivers/net/smc91x.c =================================================================== ---- linux-2.6.18gum.orig/drivers/net/smc91x.c -+++ linux-2.6.18gum/drivers/net/smc91x.c +--- linux-2.6.19.orig/drivers/net/smc91x.c ++++ linux-2.6.19/drivers/net/smc91x.c @@ -1813,6 +1813,30 @@ static int __init smc_findirq(void __iom return probe_irq_off(cookie); } diff --git a/target/device/Gumstix/basix-connex/kernel-patches/ucb1400-ac97-audio.patch b/target/device/Gumstix/basix-connex/kernel-patches/ucb1400-ac97-audio.patch index 9ccaada..1608f03 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/ucb1400-ac97-audio.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/ucb1400-ac97-audio.patch @@ -1,20 +1,20 @@ -Index: linux-2.6.18gum/sound/pci/ac97/ac97_codec.c +Index: linux-2.6.19gum/sound/pci/ac97/ac97_codec.c =================================================================== ---- linux-2.6.18gum.orig/sound/pci/ac97/ac97_codec.c -+++ linux-2.6.18gum/sound/pci/ac97/ac97_codec.c -@@ -151,7 +151,7 @@ static const struct ac97_codec_id snd_ac +--- linux-2.6.19gum.orig/sound/pci/ac97/ac97_codec.c ++++ linux-2.6.19gum/sound/pci/ac97/ac97_codec.c +@@ -157,7 +157,7 @@ static const struct ac97_codec_id snd_ac { 0x4e534300, 0xffffffff, "LM4540,43,45,46,48", NULL, NULL }, // only guess --jk { 0x4e534331, 0xffffffff, "LM4549", NULL, NULL }, { 0x4e534350, 0xffffffff, "LM4550", patch_lm4550, NULL }, // volume wrap fix --{ 0x50534304, 0xffffffff, "UCB1400", NULL, NULL }, +-{ 0x50534304, 0xffffffff, "UCB1400", patch_ucb1400, NULL }, +{ 0x50534304, 0xffffffff, "UCB1400", patch_ucb1400, NULL, AC97_HAS_NO_STD_PCM }, { 0x53494c20, 0xffffffe0, "Si3036,8", mpatch_si3036, mpatch_si3036, AC97_MODEM_PATCH }, { 0x54524102, 0xffffffff, "TR28022", NULL, NULL }, { 0x54524106, 0xffffffff, "TR28026", NULL, NULL }, -Index: linux-2.6.18gum/sound/pci/ac97/ac97_patch.c +Index: linux-2.6.19gum/sound/pci/ac97/ac97_patch.c =================================================================== ---- linux-2.6.18gum.orig/sound/pci/ac97/ac97_patch.c -+++ linux-2.6.18gum/sound/pci/ac97/ac97_patch.c +--- linux-2.6.19gum.orig/sound/pci/ac97/ac97_patch.c ++++ linux-2.6.19gum/sound/pci/ac97/ac97_patch.c @@ -29,6 +29,10 @@ #include #include @@ -26,7 +26,7 @@ Index: linux-2.6.18gum/sound/pci/ac97/ac97_patch.c #include #include #include -@@ -377,6 +381,225 @@ int patch_yamaha_ymf753(struct snd_ac97 +@@ -392,6 +396,242 @@ int patch_yamaha_ymf753(struct snd_ac97 } /* @@ -44,8 +44,11 @@ Index: linux-2.6.18gum/sound/pci/ac97/ac97_patch.c + AC97_SINGLE("DC Filter", AC97_UCB1400_FCSR1, 4, 1, 0), + AC97_SINGLE("Hi-pass Filter", AC97_UCB1400_FCSR1, 3, 1, 0), + AC97_SINGLE("ADC Filter", AC97_UCB1400_FCSR2, 12, 1, 0), ++ AC97_SINGLE("Smart Low Power Mode", AC97_UCB1400_FCSR2, 4, 3, 0), +}; + ++#ifdef CONFIG_PROC_FS ++ +#define NUM_GPIO_LINES 10 + +static struct proc_dir_entry *proc_gpio_parent; @@ -200,9 +203,25 @@ Index: linux-2.6.18gum/sound/pci/ac97/ac97_patch.c + return len; +} + ++static int patch_ucb1400_specific(struct snd_ac97 * ac97) ++{ ++ int idx, err; ++ for (idx = 0; idx < ARRAY_SIZE(ucb1400_snd_ac97_controls); idx++) ++ if ((err = snd_ctl_add(ac97->bus->card, snd_ctl_new1(&ucb1400_snd_ac97_controls[idx], ac97))) < 0) ++ return err; ++ return 0; ++} ++ ++#endif ++ ++static struct snd_ac97_build_ops patch_ucb1400_ops = { ++ .build_specific = patch_ucb1400_specific, ++}; ++ +int patch_ucb1400(struct snd_ac97 * ac97) +{ -+ int err, i; ++#ifdef CONFIG_PROC_FS ++ int i; + + proc_gpio_parent = create_proc_entry("gpio", S_IFDIR | S_IRUGO | S_IXUGO, NULL); + if(!proc_gpio_parent) return 0; @@ -218,11 +237,9 @@ Index: linux-2.6.18gum/sound/pci/ac97/ac97_patch.c + proc_gpios[i]->write_proc = proc_ucb1400_ac97_gpio_write; + } + } ++#endif + -+ for(i = 0; i < ARRAY_SIZE(ucb1400_snd_ac97_controls); i++) { -+ if((err = snd_ctl_add(ac97->bus->card, snd_ac97_cnew(&ucb1400_snd_ac97_controls[i], ac97))) < 0) -+ return err; -+ } ++ ac97->build_ops = &patch_ucb1400_ops; + + snd_ac97_write_cache(ac97, AC97_UCB1400_FCSR1, + (0 << 11) | // 0 base boost @@ -252,14 +269,45 @@ Index: linux-2.6.18gum/sound/pci/ac97/ac97_patch.c * May 2, 2003 Liam Girdwood * removed broken wolfson00 patch. * added support for WM9705,WM9708,WM9709,WM9710,WM9711,WM9712 and WM9717. -Index: linux-2.6.18gum/sound/pci/ac97/ac97_patch.h -=================================================================== ---- linux-2.6.18gum.orig/sound/pci/ac97/ac97_patch.h -+++ linux-2.6.18gum/sound/pci/ac97/ac97_patch.h -@@ -58,5 +58,6 @@ int patch_cm9780(struct snd_ac97 * ac97) - int patch_vt1616(struct snd_ac97 * ac97); - int patch_vt1617a(struct snd_ac97 * ac97); - int patch_it2646(struct snd_ac97 * ac97); -+int patch_ucb1400(struct snd_ac97 * ac97); - int mpatch_si3036(struct snd_ac97 * ac97); - int patch_lm4550(struct snd_ac97 * ac97); +@@ -2929,41 +3169,3 @@ int patch_lm4550(struct snd_ac97 *ac97) + ac97->res_table = lm4550_restbl; + return 0; + } +- +-/* +- * UCB1400 codec (http://www.semiconductors.philips.com/acrobat_download/datasheets/UCB1400-02.pdf) +- */ +-static const struct snd_kcontrol_new snd_ac97_controls_ucb1400[] = { +-/* enable/disable headphone driver which allows direct connection to +- stereo headphone without the use of external DC blocking +- capacitors */ +-AC97_SINGLE("Headphone Driver", 0x6a, 6, 1, 0), +-/* Filter used to compensate the DC offset is added in the ADC to remove idle +- tones from the audio band. */ +-AC97_SINGLE("DC Filter", 0x6a, 4, 1, 0), +-/* Control smart-low-power mode feature. Allows automatic power down +- of unused blocks in the ADC analog front end and the PLL. */ +-AC97_SINGLE("Smart Low Power Mode", 0x6c, 4, 3, 0), +-}; +- +-static int patch_ucb1400_specific(struct snd_ac97 * ac97) +-{ +- int idx, err; +- for (idx = 0; idx < ARRAY_SIZE(snd_ac97_controls_ucb1400); idx++) +- if ((err = snd_ctl_add(ac97->bus->card, snd_ctl_new1(&snd_ac97_controls_ucb1400[idx], ac97))) < 0) +- return err; +- return 0; +-} +- +-static struct snd_ac97_build_ops patch_ucb1400_ops = { +- .build_specific = patch_ucb1400_specific, +-}; +- +-int patch_ucb1400(struct snd_ac97 * ac97) +-{ +- ac97->build_ops = &patch_ucb1400_ops; +- /* enable headphone driver and smart low power mode by default */ +- snd_ac97_write(ac97, 0x6a, 0x0050); +- snd_ac97_write(ac97, 0x6c, 0x0030); +- return 0; +-} diff --git a/target/device/Gumstix/basix-connex/kernel-patches/ucb1400-touchscreen.patch b/target/device/Gumstix/basix-connex/kernel-patches/ucb1400-touchscreen.patch index 4d2d9c7..06d8080 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/ucb1400-touchscreen.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/ucb1400-touchscreen.patch @@ -10,10 +10,10 @@ Actually, I think Kconfig should probably separate the notion of the touchscreen driver and the AC97-MCP layer thing; but that problem is basically in the underlying mcp-based ucb1x00 driver layout in the first place. -Index: linux-2.6.18gum/drivers/mfd/Makefile +Index: linux-2.6.19/drivers/mfd/Makefile =================================================================== ---- linux-2.6.18gum.orig/drivers/mfd/Makefile -+++ linux-2.6.18gum/drivers/mfd/Makefile +--- linux-2.6.19.orig/drivers/mfd/Makefile ++++ linux-2.6.19/drivers/mfd/Makefile @@ -10,3 +10,6 @@ obj-$(CONFIG_MCP_UCB1200_TS) += ucb1x00- ifeq ($(CONFIG_SA1100_ASSABET),y) obj-$(CONFIG_MCP_UCB1200) += ucb1x00-assabet.o @@ -21,10 +21,10 @@ Index: linux-2.6.18gum/drivers/mfd/Makefile + +obj-$(CONFIG_TOUCHSCREEN_UCB1400) += mcp-ac97.o ucb1x00-core.o ucb1x00-ts.o + -Index: linux-2.6.18gum/drivers/mfd/mcp-core.c +Index: linux-2.6.19/drivers/mfd/mcp-core.c =================================================================== ---- linux-2.6.18gum.orig/drivers/mfd/mcp-core.c -+++ linux-2.6.18gum/drivers/mfd/mcp-core.c +--- linux-2.6.19.orig/drivers/mfd/mcp-core.c ++++ linux-2.6.19/drivers/mfd/mcp-core.c @@ -18,7 +18,6 @@ #include #include @@ -41,10 +41,10 @@ Index: linux-2.6.18gum/drivers/mfd/mcp-core.c } return mcp; } -Index: linux-2.6.18gum/drivers/mfd/mcp-sa11x0.c +Index: linux-2.6.19/drivers/mfd/mcp-sa11x0.c =================================================================== ---- linux-2.6.18gum.orig/drivers/mfd/mcp-sa11x0.c -+++ linux-2.6.18gum/drivers/mfd/mcp-sa11x0.c +--- linux-2.6.19.orig/drivers/mfd/mcp-sa11x0.c ++++ linux-2.6.19/drivers/mfd/mcp-sa11x0.c @@ -31,8 +31,12 @@ #include "mcp.h" @@ -75,10 +75,10 @@ Index: linux-2.6.18gum/drivers/mfd/mcp-sa11x0.c platform_set_drvdata(pdev, mcp); -Index: linux-2.6.18gum/drivers/mfd/mcp.h +Index: linux-2.6.19/drivers/mfd/mcp.h =================================================================== ---- linux-2.6.18gum.orig/drivers/mfd/mcp.h -+++ linux-2.6.18gum/drivers/mfd/mcp.h +--- linux-2.6.19.orig/drivers/mfd/mcp.h ++++ linux-2.6.19/drivers/mfd/mcp.h @@ -19,11 +19,8 @@ struct mcp { int use_count; unsigned int sclk_rate; @@ -92,10 +92,10 @@ Index: linux-2.6.18gum/drivers/mfd/mcp.h }; struct mcp_ops { -Index: linux-2.6.18gum/drivers/mfd/ucb1x00-assabet.c +Index: linux-2.6.19/drivers/mfd/ucb1x00-assabet.c =================================================================== ---- linux-2.6.18gum.orig/drivers/mfd/ucb1x00-assabet.c -+++ linux-2.6.18gum/drivers/mfd/ucb1x00-assabet.c +--- linux-2.6.19.orig/drivers/mfd/ucb1x00-assabet.c ++++ linux-2.6.19/drivers/mfd/ucb1x00-assabet.c @@ -15,8 +15,6 @@ #include #include @@ -105,10 +105,10 @@ Index: linux-2.6.18gum/drivers/mfd/ucb1x00-assabet.c #include "ucb1x00.h" #define UCB1X00_ATTR(name,input)\ -Index: linux-2.6.18gum/drivers/mfd/ucb1x00-core.c +Index: linux-2.6.19/drivers/mfd/ucb1x00-core.c =================================================================== ---- linux-2.6.18gum.orig/drivers/mfd/ucb1x00-core.c -+++ linux-2.6.18gum/drivers/mfd/ucb1x00-core.c +--- linux-2.6.19.orig/drivers/mfd/ucb1x00-core.c ++++ linux-2.6.19/drivers/mfd/ucb1x00-core.c @@ -22,14 +22,18 @@ #include #include @@ -358,10 +358,10 @@ Index: linux-2.6.18gum/drivers/mfd/ucb1x00-core.c free_irq(ucb->irq, ucb); class_device_unregister(&ucb->cdev); } -Index: linux-2.6.18gum/drivers/mfd/ucb1x00-ts.c +Index: linux-2.6.19/drivers/mfd/ucb1x00-ts.c =================================================================== ---- linux-2.6.18gum.orig/drivers/mfd/ucb1x00-ts.c -+++ linux-2.6.18gum/drivers/mfd/ucb1x00-ts.c +--- linux-2.6.19.orig/drivers/mfd/ucb1x00-ts.c ++++ linux-2.6.19/drivers/mfd/ucb1x00-ts.c @@ -32,10 +32,8 @@ #include #include @@ -383,7 +383,7 @@ Index: linux-2.6.18gum/drivers/mfd/ucb1x00-ts.c struct task_struct *rtask; u16 x_res; u16 y_res; -@@ -204,7 +202,6 @@ static int ucb1x00_thread(void *_ts) +@@ -207,7 +205,6 @@ static int ucb1x00_thread(void *_ts) { struct ucb1x00_ts *ts = _ts; struct task_struct *tsk = current; @@ -391,7 +391,7 @@ Index: linux-2.6.18gum/drivers/mfd/ucb1x00-ts.c int valid; /* -@@ -216,10 +213,8 @@ static int ucb1x00_thread(void *_ts) +@@ -219,10 +216,8 @@ static int ucb1x00_thread(void *_ts) valid = 0; @@ -402,7 +402,7 @@ Index: linux-2.6.18gum/drivers/mfd/ucb1x00-ts.c ts->restart = 0; -@@ -241,8 +236,6 @@ static int ucb1x00_thread(void *_ts) +@@ -244,8 +239,6 @@ static int ucb1x00_thread(void *_ts) if (ucb1x00_ts_pen_down(ts)) { @@ -411,7 +411,7 @@ Index: linux-2.6.18gum/drivers/mfd/ucb1x00-ts.c ucb1x00_enable_irq(ts->ucb, UCB_IRQ_TSPX, machine_is_collie() ? UCB_RISING : UCB_FALLING); ucb1x00_disable(ts->ucb); -@@ -255,7 +248,15 @@ static int ucb1x00_thread(void *_ts) +@@ -258,7 +251,15 @@ static int ucb1x00_thread(void *_ts) valid = 0; } @@ -428,7 +428,7 @@ Index: linux-2.6.18gum/drivers/mfd/ucb1x00-ts.c } else { ucb1x00_disable(ts->ucb); -@@ -270,16 +271,12 @@ static int ucb1x00_thread(void *_ts) +@@ -273,16 +274,12 @@ static int ucb1x00_thread(void *_ts) } set_task_state(tsk, TASK_INTERRUPTIBLE); @@ -446,16 +446,16 @@ Index: linux-2.6.18gum/drivers/mfd/ucb1x00-ts.c ts->rtask = NULL; return 0; } -@@ -292,7 +289,7 @@ static void ucb1x00_ts_irq(int idx, void - { +@@ -296,7 +293,7 @@ static void ucb1x00_ts_irq(int idx, void struct ucb1x00_ts *ts = id; + ucb1x00_disable_irq(ts->ucb, UCB_IRQ_TSPX, UCB_FALLING); - wake_up(&ts->irq_wait); + complete(&ts->irq_wait); } static int ucb1x00_ts_open(struct input_dev *idev) -@@ -302,7 +299,7 @@ static int ucb1x00_ts_open(struct input_ +@@ -306,7 +303,7 @@ static int ucb1x00_ts_open(struct input_ BUG_ON(ts->rtask); @@ -464,7 +464,7 @@ Index: linux-2.6.18gum/drivers/mfd/ucb1x00-ts.c ret = ucb1x00_hook_irq(ts->ucb, UCB_IRQ_TSPX, ucb1x00_ts_irq, ts); if (ret < 0) goto out; -@@ -357,7 +354,7 @@ static int ucb1x00_ts_resume(struct ucb1 +@@ -361,7 +358,7 @@ static int ucb1x00_ts_resume(struct ucb1 * after sleep. */ ts->restart = 1; @@ -473,10 +473,10 @@ Index: linux-2.6.18gum/drivers/mfd/ucb1x00-ts.c } return 0; } -Index: linux-2.6.18gum/drivers/mfd/ucb1x00.h +Index: linux-2.6.19/drivers/mfd/ucb1x00.h =================================================================== ---- linux-2.6.18gum.orig/drivers/mfd/ucb1x00.h -+++ linux-2.6.18gum/drivers/mfd/ucb1x00.h +--- linux-2.6.19.orig/drivers/mfd/ucb1x00.h ++++ linux-2.6.19/drivers/mfd/ucb1x00.h @@ -94,6 +94,7 @@ #define UCB_ID 0x0c #define UCB_ID_1200 0x1004 @@ -502,10 +502,10 @@ Index: linux-2.6.18gum/drivers/mfd/ucb1x00.h }; struct ucb1x00_driver; -Index: linux-2.6.18gum/drivers/mfd/mcp-ac97.c +Index: linux-2.6.19/drivers/mfd/mcp-ac97.c =================================================================== --- /dev/null -+++ linux-2.6.18gum/drivers/mfd/mcp-ac97.c ++++ linux-2.6.19/drivers/mfd/mcp-ac97.c @@ -0,0 +1,153 @@ +/* + * linux/drivers/misc/mcp-ac97.c @@ -660,10 +660,10 @@ Index: linux-2.6.18gum/drivers/mfd/mcp-ac97.c +EXPORT_SYMBOL(mcp_driver_unregister); + +MODULE_LICENSE("GPL"); -Index: linux-2.6.18gum/drivers/input/touchscreen/Kconfig +Index: linux-2.6.19/drivers/input/touchscreen/Kconfig =================================================================== ---- linux-2.6.18gum.orig/drivers/input/touchscreen/Kconfig -+++ linux-2.6.18gum/drivers/input/touchscreen/Kconfig +--- linux-2.6.19.orig/drivers/input/touchscreen/Kconfig ++++ linux-2.6.19/drivers/input/touchscreen/Kconfig @@ -24,6 +24,25 @@ config TOUCHSCREEN_ADS7846 To compile this driver as a module, choose M here: the module will be called ads7846. @@ -690,11 +690,11 @@ Index: linux-2.6.18gum/drivers/input/touchscreen/Kconfig config TOUCHSCREEN_BITSY tristate "Compaq iPAQ H3600 (Bitsy) touchscreen" depends on SA1100_BITSY -Index: linux-2.6.18gum/drivers/input/Kconfig +Index: linux-2.6.19/drivers/input/Kconfig =================================================================== ---- linux-2.6.18gum.orig/drivers/input/Kconfig -+++ linux-2.6.18gum/drivers/input/Kconfig -@@ -87,7 +87,7 @@ config INPUT_JOYDEV +--- linux-2.6.19.orig/drivers/input/Kconfig ++++ linux-2.6.19/drivers/input/Kconfig +@@ -101,7 +101,7 @@ config INPUT_JOYDEV module will be called joydev. config INPUT_TSDEV diff --git a/target/device/Gumstix/basix-connex/kernel-patches/usb-ether-gadget-filter-bugfix.patch b/target/device/Gumstix/basix-connex/kernel-patches/usb-ether-gadget-filter-bugfix.patch index 50e866b..6718dfe 100644 --- a/target/device/Gumstix/basix-connex/kernel-patches/usb-ether-gadget-filter-bugfix.patch +++ b/target/device/Gumstix/basix-connex/kernel-patches/usb-ether-gadget-filter-bugfix.patch @@ -1,7 +1,7 @@ -Index: linux-2.6.18gum/drivers/usb/gadget/ether.c +Index: linux-2.6.19/drivers/usb/gadget/ether.c =================================================================== ---- linux-2.6.18gum.orig/drivers/usb/gadget/ether.c -+++ linux-2.6.18gum/drivers/usb/gadget/ether.c +--- linux-2.6.19.orig/drivers/usb/gadget/ether.c ++++ linux-2.6.19/drivers/usb/gadget/ether.c @@ -1890,28 +1890,6 @@ static int eth_start_xmit (struct sk_buf struct usb_request *req = NULL; unsigned long flags; diff --git a/target/device/Gumstix/basix-connex/linux.mk b/target/device/Gumstix/basix-connex/linux.mk index 91a71e8..0fedcad 100644 --- a/target/device/Gumstix/basix-connex/linux.mk +++ b/target/device/Gumstix/basix-connex/linux.mk @@ -22,7 +22,7 @@ ifneq ($(filter $(TARGETS),linux),) # Version of Linux to download and then apply patches to -DOWNLOAD_LINUX_VERSION=2.6.18 +DOWNLOAD_LINUX_VERSION=2.6.19 # Version of Linux AFTER patches LINUX_VERSION=$(DOWNLOAD_LINUX_VERSION)gum -- 2.11.4.GIT