summaryrefslogtreecommitdiffstats
path: root/drivers/usb/gadget/f_eem.c
diff options
context:
space:
mode:
authorAndrzej Pietrasiewicz <andrzej.p@samsung.com>2013-05-28 09:15:50 +0200
committerFelipe Balbi <balbi@ti.com>2013-06-10 17:57:47 +0300
commit998da497ec75076549469216a35305684098375f (patch)
treeee1bade5f230f4b31b55481273713caf331e603e /drivers/usb/gadget/f_eem.c
parentc96022ded7377228cc3381c661fd07efe10ba7fb (diff)
usb: gadget: f_eem: use usb_gstrings_attach
use the new usb_gstrings_attach interface Signed-off-by: Andrzej Pietrasiewicz <andrzej.p@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Signed-off-by: Felipe Balbi <balbi@ti.com>
Diffstat (limited to 'drivers/usb/gadget/f_eem.c')
-rw-r--r--drivers/usb/gadget/f_eem.c17
1 files changed, 6 insertions, 11 deletions
diff --git a/drivers/usb/gadget/f_eem.c b/drivers/usb/gadget/f_eem.c
index 9d54d68628e..31a2cb7ebe8 100644
--- a/drivers/usb/gadget/f_eem.c
+++ b/drivers/usb/gadget/f_eem.c
@@ -248,6 +248,7 @@ static int eem_bind(struct usb_configuration *c, struct usb_function *f)
{
struct usb_composite_dev *cdev = c->cdev;
struct f_eem *eem = func_to_eem(f);
+ struct usb_string *us;
int status;
struct usb_ep *ep;
@@ -269,16 +270,11 @@ static int eem_bind(struct usb_configuration *c, struct usb_function *f)
eem_opts->bound = true;
}
- /* maybe allocate device-global string IDs */
- if (eem_string_defs[0].id == 0) {
-
- /* control interface label */
- status = usb_string_id(c->cdev);
- if (status < 0)
- return status;
- eem_string_defs[0].id = status;
- eem_intf.iInterface = status;
- }
+ us = usb_gstrings_attach(cdev, eem_strings,
+ ARRAY_SIZE(eem_string_defs));
+ if (IS_ERR(us))
+ return PTR_ERR(us);
+ eem_intf.iInterface = us[0].id;
/* allocate instance-specific interface IDs */
status = usb_interface_id(c, f);
@@ -595,7 +591,6 @@ struct usb_function *eem_alloc(struct usb_function_instance *fi)
eem->port.cdc_filter = DEFAULT_FILTER;
eem->port.func.name = "cdc_eem";
- eem->port.func.strings = eem_strings;
/* descriptors are per-instance copies */
eem->port.func.bind = eem_bind;
eem->port.func.unbind = eem_unbind;