summaryrefslogtreecommitdiffstats
path: root/drivers/usb/atm/usbatm.h
diff options
context:
space:
mode:
authorDuncan Sands2006-01-13 11:06:46 +0100
committerGreg Kroah-Hartman2006-02-01 02:23:40 +0100
commite3fb2f641f421662ebda48763f2f03cb9bd29e82 (patch)
tree2511087a08a177c27bf28207f3ab05ac3093b85d /drivers/usb/atm/usbatm.h
parent[PATCH] USBATM: allow isochronous transfer (diff)
downloadkernel-qcow2-linux-e3fb2f641f421662ebda48763f2f03cb9bd29e82.tar.gz
kernel-qcow2-linux-e3fb2f641f421662ebda48763f2f03cb9bd29e82.tar.xz
kernel-qcow2-linux-e3fb2f641f421662ebda48763f2f03cb9bd29e82.zip
[PATCH] USBATM: handle urbs containing partial cells
The receive logic has always assumed that urbs contain an integral number of ATM cells, which is a bit naughty, though it never caused any problems with bulk transfers. Isochronous urbs spank us soundly for this. Fixed thanks to this patch, mostly by Stanislaw Gruszka. Signed-off-by: Duncan Sands <baldrick@free.fr> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'drivers/usb/atm/usbatm.h')
-rw-r--r--drivers/usb/atm/usbatm.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/usb/atm/usbatm.h b/drivers/usb/atm/usbatm.h
index 0e2caa0967c1..bdff534b941d 100644
--- a/drivers/usb/atm/usbatm.h
+++ b/drivers/usb/atm/usbatm.h
@@ -187,6 +187,13 @@ struct usbatm_data {
struct sk_buff_head sndqueue;
struct sk_buff *current_skb; /* being emptied */
+ struct usbatm_vcc_data *cached_vcc;
+ int cached_vci;
+ short cached_vpi;
+
+ unsigned char *cell_buf; /* holds partial rx cell */
+ unsigned int buf_usage;
+
struct urb *urbs[0];
};