[PATCH 17/17] [m68k] Atari: NetUSBee tweaks for ISP1160 USB HCD driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



[PATCH 17/17] [m68k] Atari: NetUSBee tweaks for ISP1160 USB HCD driver
	Some tweaks necessary to make the NetUSBee driver work with 
	both USB ports - something in the NetUSBee design makes the
	second port shut down due to overcurrent otherwise. As all
	NetUSBee stuff, this is provided by David. 


Signed-off-by: Michael Schmitz <schmitz@xxxxxxxxxx>
---
 drivers/usb/host/isp116x-hcd.c |   11 ++++++++++-
 1 files changed, 10 insertions(+), 1 deletions(-)

diff --git a/drivers/usb/host/isp116x-hcd.c b/drivers/usb/host/isp116x-hcd.c
index cb0745d..dd13b05 100644
--- a/drivers/usb/host/isp116x-hcd.c
+++ b/drivers/usb/host/isp116x-hcd.c
@@ -1307,8 +1307,11 @@ static int isp116x_reset(struct usb_hcd *hcd)
 	struct isp116x *isp116x = hcd_to_isp116x(hcd);
 	unsigned long t;
 	u16 clkrdy = 0;
+#ifdef CONFIG_ATARI
+	int ret, timeout = 200 /* ms */ ;
+#else
 	int ret, timeout = 15 /* ms */ ;
-
+#endif
 	ret = isp116x_sw_reset(isp116x);
 	if (ret)
 		return ret;
@@ -1410,6 +1413,12 @@ static int isp116x_start(struct usb_hcd *hcd)
 	val |= RH_A_PSM;
 	/* Report overcurrent per port */
 	val |= RH_A_OCPM;
+#ifdef CONFIG_ATARI
+        /* Galvez: For NetUSBee, Overcurrent protection disable,
+           to stop interrupt storm because OC events */
+        if ((unsigned long) hcd->rsrc_start > 0x80000000UL)
+            val |= RH_A_NOCP;
+#endif
 	isp116x_write_reg32(isp116x, HCRHDESCA, val);
 	isp116x->rhdesca = isp116x_read_reg32(isp116x, HCRHDESCA);
 
-- 
1.7.0.4

--
To unsubscribe from this list: send the line "unsubscribe linux-m68k" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Video for Linux]     [Yosemite News]     [Linux S/390]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux