summaryrefslogtreecommitdiff
path: root/xpp/xpp_usb.c
diff options
context:
space:
mode:
Diffstat (limited to 'xpp/xpp_usb.c')
-rw-r--r--xpp/xpp_usb.c25
1 files changed, 16 insertions, 9 deletions
diff --git a/xpp/xpp_usb.c b/xpp/xpp_usb.c
index 3f0bfaa..8403777 100644
--- a/xpp/xpp_usb.c
+++ b/xpp/xpp_usb.c
@@ -45,6 +45,7 @@
#include "card_fxs.h"
#include "card_fxo.h"
#endif
+#include "parport_debug.h"
static const char rcsid[] = "$Id$";
@@ -733,6 +734,7 @@ static void xpp_send_callback(USB_PASS_CB(urb))
long usec_diff;
BUG_ON(!xbus);
+ //flip_parport_bit(6);
atomic_dec(&xusb->pending_writes);
do_gettimeofday(&now);
usec_diff =
@@ -740,7 +742,7 @@ static void xpp_send_callback(USB_PASS_CB(urb))
(now.tv_usec - xusb->last_tx.tv_usec);
if(usec_diff > xusb->max_tx_delay)
xusb->max_tx_delay = usec_diff;
- if(unlikely(usec_diff > 200)) {
+ if(unlikely(usec_diff > 500)) {
static int rate_limit;
if((rate_limit++ % 5003) == 0)
@@ -780,6 +782,7 @@ static void xpp_receive_callback(USB_PASS_CB(urb))
NOTICE("spurious URB\n");
return;
}
+ //flip_parport_bit(7);
if (urb->status) {
DBG("nonzero read bulk status received: %d\n", urb->status);
XUSB_COUNTER(xusb, RX_ERRORS)++;
@@ -874,20 +877,24 @@ static int xusb_read_proc(char *page, char **start, off_t off, int count, int *e
goto out;
// TODO: probably needs a per-xusb lock:
spin_lock_irqsave(&xusb_lock, flags);
- len += sprintf(page + len, "device: %d, #altsettings: %d, minor: %d\n"
- "\tModel Info: Bus Type=%d (%s)\n"
- "\tIn: 0x%02X - Size: %d)\n"
- "\tOut: 0x%02X - Size: %d)\n",
- xusb->udev->devnum,
- xusb->interface->num_altsetting,
+ len += sprintf(page + len, "Device: %03d/%03d\n",
+ xusb->udev->bus->busnum,
+ xusb->udev->devnum
+ );
+ len += sprintf(page + len, "Minor: %d\n"
+ "Model Info: Bus Type=%d (%s)\n",
xusb->minor,
xusb->model_info->bus_type,
- xusb->model_info->desc,
+ xusb->model_info->desc
+ );
+ len += sprintf(page + len, "Endpoints:\n"
+ "\tIn: 0x%02X - Size: %d)\n"
+ "\tOut: 0x%02X - Size: %d)\n",
xusb->endpoints[XUSB_RECV].ep_addr,
xusb->endpoints[XUSB_RECV].max_size,
xusb->endpoints[XUSB_SEND].ep_addr,
xusb->endpoints[XUSB_SEND].max_size
- );
+ );
len += sprintf(page + len, "\npending_writes=%d\n", atomic_read(&xusb->pending_writes));
len += sprintf(page + len, "max_tx_delay=%d\n", xusb->max_tx_delay);
xusb->max_tx_delay = 0;