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>
This commit is contained in:

committed by
Felipe Balbi

parent
3b4a3fc0ba
commit
7d16e8d3eb
@@ -381,6 +381,30 @@ extern int usb_string_ids_tab(struct usb_composite_dev *c,
|
||||
struct usb_string *str);
|
||||
extern int usb_string_ids_n(struct usb_composite_dev *c, unsigned n);
|
||||
|
||||
/*
|
||||
* Some systems will need runtime overrides for the product identifiers
|
||||
* published in the device descriptor, either numbers or strings or both.
|
||||
* String parameters are in UTF-8 (superset of ASCII's 7 bit characters).
|
||||
*/
|
||||
struct usb_composite_overwrite {
|
||||
u16 idVendor;
|
||||
u16 idProduct;
|
||||
u16 bcdDevice;
|
||||
};
|
||||
#define USB_GADGET_COMPOSITE_OPTIONS() \
|
||||
static struct usb_composite_overwrite coverwrite; \
|
||||
\
|
||||
module_param_named(idVendor, coverwrite.idVendor, ushort, S_IRUGO); \
|
||||
MODULE_PARM_DESC(idVendor, "USB Vendor ID"); \
|
||||
\
|
||||
module_param_named(idProduct, coverwrite.idProduct, ushort, S_IRUGO); \
|
||||
MODULE_PARM_DESC(idProduct, "USB Product ID"); \
|
||||
\
|
||||
module_param_named(bcdDevice, coverwrite.bcdDevice, ushort, S_IRUGO); \
|
||||
MODULE_PARM_DESC(bcdDevice, "USB Device version (BCD)")
|
||||
|
||||
void usb_composite_overwrite_options(struct usb_composite_dev *cdev,
|
||||
struct usb_composite_overwrite *covr);
|
||||
|
||||
/* messaging utils */
|
||||
#define DBG(d, fmt, args...) \
|
||||
|
Reference in New Issue
Block a user