summaryrefslogtreecommitdiff
path: root/drivers/usb/gadget/mv_udc.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/usb/gadget/mv_udc.c')
-rw-r--r--drivers/usb/gadget/mv_udc.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/drivers/usb/gadget/mv_udc.c b/drivers/usb/gadget/mv_udc.c
index bbf4418a2e..1ead2f2459 100644
--- a/drivers/usb/gadget/mv_udc.c
+++ b/drivers/usb/gadget/mv_udc.c
@@ -21,6 +21,16 @@
#error This driver only supports one single controller.
#endif
+/*
+ * Check if the system has too long cachelines. If the cachelines are
+ * longer then 128b, the driver will not be able flush/invalidate data
+ * cache over separate QH entries. We use 128b because one QH entry is
+ * 64b long and there are always two QH list entries for each endpoint.
+ */
+#if ARCH_DMA_MINALIGN > 128
+#error This driver can not work on systems with caches longer than 128b
+#endif
+
#ifndef DEBUG
#define DBG(x...) do {} while (0)
#else