summaryrefslogtreecommitdiff
path: root/drivers/usb/wusbcore/wa-hc.h
diff options
context:
space:
mode:
authorThomas Pugliese <thomas.pugliese@gmail.com>2013-10-23 23:44:28 +0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2013-10-30 03:44:49 +0400
commitf07ddb9ef5c25c1044ab5b6509241320fb5e831a (patch)
tree6f7bb348ad03cc4e7e52634de48deaeecd468ae2 /drivers/usb/wusbcore/wa-hc.h
parent2101242cef04991a580c3debb46972dbfaaaf138 (diff)
downloadlinux-f07ddb9ef5c25c1044ab5b6509241320fb5e831a.tar.xz
usb: wusbcore: add a quirk for Alereon HWA device isoc behavior
Add a quirk for Alereon HWA devices to concatenate the frames of isoc transfer requests. Signed-off-by: Thomas Pugliese <thomas.pugliese@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/usb/wusbcore/wa-hc.h')
-rw-r--r--drivers/usb/wusbcore/wa-hc.h13
1 files changed, 12 insertions, 1 deletions
diff --git a/drivers/usb/wusbcore/wa-hc.h b/drivers/usb/wusbcore/wa-hc.h
index 41afaa6d01d2..e614f02f0cf2 100644
--- a/drivers/usb/wusbcore/wa-hc.h
+++ b/drivers/usb/wusbcore/wa-hc.h
@@ -128,6 +128,14 @@ enum wa_dti_state {
WA_DTI_ISOC_PACKET_STATUS_PENDING
};
+enum wa_quirks {
+ /*
+ * The Alereon HWA expects the data frames in isochronous transfer
+ * requests to be concatenated and not sent as separate packets.
+ */
+ WUSB_QUIRK_ALEREON_HWA_CONCAT_ISOC = 0x01,
+};
+
/**
* Instance of a HWA Host Controller
*
@@ -218,10 +226,13 @@ struct wahc {
struct work_struct xfer_enqueue_work;
struct work_struct xfer_error_work;
atomic_t xfer_id_count;
+
+ kernel_ulong_t quirks;
};
-extern int wa_create(struct wahc *wa, struct usb_interface *iface);
+extern int wa_create(struct wahc *wa, struct usb_interface *iface,
+ kernel_ulong_t);
extern void __wa_destroy(struct wahc *wa);
void wa_reset_all(struct wahc *wa);