usb: gadget: tcm: split string definitions into function and device
authorAndrzej Pietrasiewicz <andrzej.p@samsung.com>
Fri, 11 Dec 2015 15:06:16 +0000 (16:06 +0100)
committerNicholas Bellinger <nab@linux-iscsi.org>
Mon, 21 Dec 2015 03:40:24 +0000 (19:40 -0800)
Prepare for factoring out f_tcm from a legacy gadget.

Signed-off-by: Andrzej Pietrasiewicz <andrzej.p@samsung.com>
Acked-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
drivers/usb/gadget/legacy/tcm_usb_gadget.c
drivers/usb/gadget/legacy/tcm_usb_gadget.h

index 65e49504d1ac717742f44ff2dcf493f5693a7347..8278d3ba27f598a6e55ed243e92abeeca80e8fe7 100644 (file)
@@ -1990,13 +1990,13 @@ static struct usb_device_descriptor usbg_device_desc = {
        .bNumConfigurations =   1,
 };
 
+#define USB_G_STR_CONFIG USB_GADGET_FIRST_AVAIL_IDX
+
 static struct usb_string       usbg_us_strings[] = {
        [USB_GADGET_MANUFACTURER_IDX].s = "Target Manufactor",
        [USB_GADGET_PRODUCT_IDX].s      = "Target Product",
        [USB_GADGET_SERIAL_IDX].s       = "000000000001",
        [USB_G_STR_CONFIG].s            = "default config",
-       [USB_G_STR_INT_UAS].s           = "USB Attached SCSI",
-       [USB_G_STR_INT_BBB].s           = "Bulk Only Transport",
        { },
 };
 
@@ -2010,6 +2010,22 @@ static struct usb_gadget_strings *usbg_strings[] = {
        NULL,
 };
 
+static struct usb_string       tcm_us_strings[] = {
+       [USB_G_STR_INT_UAS].s           = "USB Attached SCSI",
+       [USB_G_STR_INT_BBB].s           = "Bulk Only Transport",
+       { },
+};
+
+static struct usb_gadget_strings tcm_stringtab = {
+       .language = 0x0409,
+       .strings = tcm_us_strings,
+};
+
+static struct usb_gadget_strings *tcm_strings[] = {
+       &tcm_stringtab,
+       NULL,
+};
+
 static int guas_unbind(struct usb_composite_dev *cdev)
 {
        return 0;
@@ -2174,10 +2190,11 @@ static int usbg_cfg_bind(struct usb_configuration *c)
        fu->function.set_alt = usbg_set_alt;
        fu->function.setup = usbg_setup;
        fu->function.disable = usbg_disable;
+       fu->function.strings = tcm_strings;
        fu->tpg = the_only_tpg_I_currently_have;
 
-       bot_intf_desc.iInterface = usbg_us_strings[USB_G_STR_INT_BBB].id;
-       uasp_intf_desc.iInterface = usbg_us_strings[USB_G_STR_INT_UAS].id;
+       bot_intf_desc.iInterface = tcm_us_strings[USB_G_STR_INT_BBB].id;
+       uasp_intf_desc.iInterface = tcm_us_strings[USB_G_STR_INT_UAS].id;
 
        ret = usb_add_function(c, &fu->function);
        if (ret)
index 0b749e1aa2f10e56ac667c19145f09446627ad66..f1b69e260248ed15c7de0ed3146d9257773b8d26 100644 (file)
@@ -16,8 +16,7 @@
 #define UASP_SS_EP_COMP_NUM_STREAMS (1 << UASP_SS_EP_COMP_LOG_STREAMS)
 
 enum {
-       USB_G_STR_CONFIG = USB_GADGET_FIRST_AVAIL_IDX,
-       USB_G_STR_INT_UAS,
+       USB_G_STR_INT_UAS = 0,
        USB_G_STR_INT_BBB,
 };