summaryrefslogtreecommitdiff
path: root/packages/linux/linux-ezx-2.6.20.7/mux-ifdef-ezx-features.patch
diff options
context:
space:
mode:
Diffstat (limited to 'packages/linux/linux-ezx-2.6.20.7/mux-ifdef-ezx-features.patch')
-rw-r--r--packages/linux/linux-ezx-2.6.20.7/mux-ifdef-ezx-features.patch85
1 files changed, 85 insertions, 0 deletions
diff --git a/packages/linux/linux-ezx-2.6.20.7/mux-ifdef-ezx-features.patch b/packages/linux/linux-ezx-2.6.20.7/mux-ifdef-ezx-features.patch
new file mode 100644
index 0000000000..f9ad633c76
--- /dev/null
+++ b/packages/linux/linux-ezx-2.6.20.7/mux-ifdef-ezx-features.patch
@@ -0,0 +1,85 @@
+diff -pruN linux-2.6.20.7/drivers/char/ts0710_mux_usb.c linux-2.6.20.7_x386/drivers/char/ts0710_mux_usb.c
+--- linux-2.6.20.7/drivers/char/ts0710_mux_usb.c 2007-04-22 10:51:38.000000000 +0200
++++ linux-2.6.20.7_x386/drivers/char/ts0710_mux_usb.c 2007-04-22 11:44:54.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 usb_ipc_write_bulk(struct ur
+
+ 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 @@ static void suspend_timeout(unsigned lon
+ 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 @@ static void ipcusb_xmit_data(void)
+ 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 @@ static void ipcusb_xmit_data(void)
+ "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_func(unsigned long
+
+ 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();
+
+@@ -734,7 +748,9 @@ static void usb_ipc_disconnect(struct us
+ 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);