Before configfs is integrated the usb_gstrings_attach() interface
must be used.

Signed-off-by: Andrzej Pietrasiewicz <andrze...@samsung.com>
---
 drivers/usb/gadget/function/f_hid.c | 14 ++++++--------
 1 file changed, 6 insertions(+), 8 deletions(-)

diff --git a/drivers/usb/gadget/function/f_hid.c 
b/drivers/usb/gadget/function/f_hid.c
index 55d4e7c..8c0096f 100644
--- a/drivers/usb/gadget/function/f_hid.c
+++ b/drivers/usb/gadget/function/f_hid.c
@@ -582,18 +582,17 @@ static int hidg_bind(struct usb_configuration *c, struct 
usb_function *f)
 {
        struct usb_ep           *ep;
        struct f_hidg           *hidg = func_to_hidg(f);
+       struct usb_string       *us;
        struct device           *device;
        int                     status;
        dev_t                   dev;
 
        /* maybe allocate device-global string IDs, and patch descriptors */
-       if (ct_func_string_defs[CT_FUNC_HID_IDX].id == 0) {
-               status = usb_string_id(c->cdev);
-               if (status < 0)
-                       return status;
-               ct_func_string_defs[CT_FUNC_HID_IDX].id = status;
-               hidg_interface_desc.iInterface = status;
-       }
+       us = usb_gstrings_attach(c->cdev, ct_func_strings,
+                                ARRAY_SIZE(ct_func_string_defs));
+       if (IS_ERR(us))
+               return PTR_ERR(us);
+       hidg_interface_desc.iInterface = us[CT_FUNC_HID_IDX].id;
 
        /* allocate instance-specific interface IDs, and patch descriptors */
        status = usb_interface_id(c, f);
@@ -805,7 +804,6 @@ struct usb_function *hidg_alloc(struct 
usb_function_instance *fi)
        }
 
        hidg->func.name    = "hid";
-       hidg->func.strings = ct_func_strings;
        hidg->func.bind    = hidg_bind;
        hidg->func.unbind  = hidg_unbind;
        hidg->func.set_alt = hidg_set_alt;
-- 
1.9.1

--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to