diff options
Diffstat (limited to 'packages/linux/linux-ezx-2.6.23/patches/mux-ifdef-ezx-features.patch')
-rw-r--r-- | packages/linux/linux-ezx-2.6.23/patches/mux-ifdef-ezx-features.patch | 99 |
1 files changed, 99 insertions, 0 deletions
diff --git a/packages/linux/linux-ezx-2.6.23/patches/mux-ifdef-ezx-features.patch b/packages/linux/linux-ezx-2.6.23/patches/mux-ifdef-ezx-features.patch new file mode 100644 index 0000000000..a3a6a8249a --- /dev/null +++ b/packages/linux/linux-ezx-2.6.23/patches/mux-ifdef-ezx-features.patch @@ -0,0 +1,99 @@ +Index: linux-2.6.21/drivers/char/ts0710_mux_usb.c +=================================================================== +--- linux-2.6.21.orig/drivers/char/ts0710_mux_usb.c 2007-09-28 23:37:33.000000000 +0200 ++++ linux-2.6.21/drivers/char/ts0710_mux_usb.c 2007-09-28 23:37:45.000000000 +0200 +@@ -35,10 +35,14 @@ + #include <linux/list.h> + #include <linux/errno.h> + #include <asm/uaccess.h> ++ ++#ifdef CONFIG_PXA_EZX + #include <asm/hardware.h> + #include <asm/arch/hardware.h> + #include <asm/arch-pxa/pxa-regs.h> + #include <asm/arch-pxa/ezx.h> ++#endif ++ + #include <linux/slab.h> + #include <linux/miscdevice.h> + #include <linux/init.h> +@@ -341,8 +345,10 @@ + + static void wakeup_timeout(unsigned long data) + { ++#ifdef CONFIG_PXA_EZX + GPSR(GPIO_MCU_INT_SW) = GPIO_bit(GPIO_MCU_INT_SW); + bvd_dbg("wakup_timeout: send GPIO_MCU_INT_SW signal!"); ++#endif + } + + static void suspend_timeout(unsigned long data) +@@ -353,10 +359,12 @@ + bvd_dbg("suspend_timeout: add the suspend timer again"); + } else { + unlink_urbs(&bvd_ipc->readurb_mux); ++#ifdef CONFIG_PXA_EZX + UHCRHPS3 = 0x4; + mdelay(40); + bvd_dbg("suspend_timeout: send SUSPEND signal! UHCRHPS3=0x%x", + UHCRHPS3); ++#endif + } + } + +@@ -404,6 +412,7 @@ + bvd_ipc->writeurb_mux.transfer_buffer_length = buf_num; + bvd_dbg("ipcusb_xmit_data: copy data to write urb finished! "); + ++#ifdef CONFIG_PXA_EZX + if ((UHCRHPS3 & 0x4) == 0x4) { + static int ret; + int time = 0; +@@ -442,6 +451,7 @@ + "failed! status=%d\n", ret); + bvd_dbg("ipcusb_xmit_data: Send a IN token successfully!"); + } ++#endif + + sumbit_times++; + bvd_ipc->write_finished_flag = 0; +@@ -464,12 +474,16 @@ + + static void usbipc_bh_bp_func(unsigned long param) + { ++#ifdef CONFIG_PXA_EZX + if ((UHCRHPS3 & 0x4) == 0x4) { + UHCRHPS3 = 0x8; ++#endif + mdelay(40); ++#ifdef CONFIG_PXA_EZX + bvd_dbg("ipcusb_softint_send_readurb: Send RESUME signal! " + "UHCRHPS3=0x%x", UHCRHPS3); + } ++#endif + if (bvd_ipc->ipc_flag == IPC_USB_PROBE_READY) { + //get_halted_bit(); + +@@ -735,7 +749,9 @@ + printk("usb_ipc_disconnect. bvd_ipc_disconnect address: %p\n", bvd_ipc_disconnect); + + //FIXME: Memory leak? ++#ifdef CONFIG_PXA_EZX + if ((UHCRHPS3 & 0x4) == 0) ++#endif + // usb_unlink_urb(&bvd_ipc_disconnect->readurb_mux); + + //usb_unlink_urb(&bvd_ipc_disconnect->writeurb_mux); +Index: linux-2.6.21/drivers/char/Kconfig +=================================================================== +--- linux-2.6.21.orig/drivers/char/Kconfig 2007-09-29 10:52:18.000000000 +0200 ++++ linux-2.6.21/drivers/char/Kconfig 2007-09-29 10:52:30.000000000 +0200 +@@ -1073,7 +1073,7 @@ + + config TS0710_MUX + tristate "GSM TS 07.10 Multiplex driver" +- depends on EZX_BP ++ depends on EZX_BP || X86 + help + This implements the GSM 07.10 multiplex. + |