aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/usb/composite.h
diff options
context:
space:
mode:
authorSebastian Andrzej Siewior <bigeasy@linutronix.de>2012-09-10 09:01:53 -0400
committerFelipe Balbi <balbi@ti.com>2012-09-10 09:12:59 -0400
commit7d16e8d3eb704f5f6eb5a271d5758b495634e8e6 (patch)
tree146c2f02239fc5df53976092384bc74ed29f7c02 /include/linux/usb/composite.h
parent3b4a3fc0ba83265c0bfcfdfc3416e65e47441747 (diff)
usb: gadget: push VID/PID/USB BCD module option into gadgets
This patch moves the module options idVendor, idProduct and bcdDevice from composite.c into each gadgets. This ensures compatibility with current gadgets and removes the global variable which brings me step closer towards composite.c in libcomposite Acked-by: Michal Nazarewicz <mina86@mina86.com> Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de> Signed-off-by: Felipe Balbi <balbi@ti.com>
Diffstat (limited to 'include/linux/usb/composite.h')
-rw-r--r--include/linux/usb/composite.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/include/linux/usb/composite.h b/include/linux/usb/composite.h
index e970fba6dbbb..7651e5bf7487 100644
--- a/include/linux/usb/composite.h
+++ b/include/linux/usb/composite.h
@@ -381,6 +381,30 @@ extern int usb_string_ids_tab(struct usb_composite_dev *c,
381 struct usb_string *str); 381 struct usb_string *str);
382extern int usb_string_ids_n(struct usb_composite_dev *c, unsigned n); 382extern int usb_string_ids_n(struct usb_composite_dev *c, unsigned n);
383 383
384/*
385 * Some systems will need runtime overrides for the product identifiers
386 * published in the device descriptor, either numbers or strings or both.
387 * String parameters are in UTF-8 (superset of ASCII's 7 bit characters).
388 */
389struct usb_composite_overwrite {
390 u16 idVendor;
391 u16 idProduct;
392 u16 bcdDevice;
393};
394#define USB_GADGET_COMPOSITE_OPTIONS() \
395 static struct usb_composite_overwrite coverwrite; \
396 \
397 module_param_named(idVendor, coverwrite.idVendor, ushort, S_IRUGO); \
398 MODULE_PARM_DESC(idVendor, "USB Vendor ID"); \
399 \
400 module_param_named(idProduct, coverwrite.idProduct, ushort, S_IRUGO); \
401 MODULE_PARM_DESC(idProduct, "USB Product ID"); \
402 \
403 module_param_named(bcdDevice, coverwrite.bcdDevice, ushort, S_IRUGO); \
404 MODULE_PARM_DESC(bcdDevice, "USB Device version (BCD)")
405
406void usb_composite_overwrite_options(struct usb_composite_dev *cdev,
407 struct usb_composite_overwrite *covr);
384 408
385/* messaging utils */ 409/* messaging utils */
386#define DBG(d, fmt, args...) \ 410#define DBG(d, fmt, args...) \