Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755292AbbLKL0c (ORCPT ); Fri, 11 Dec 2015 06:26:32 -0500 Received: from mailout4.samsung.com ([203.254.224.34]:55426 "EHLO mailout4.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755269AbbLKL02 (ORCPT ); Fri, 11 Dec 2015 06:26:28 -0500 X-AuditID: cbfee61b-f793c6d00000236c-c3-566ab2e25d25 From: Robert Baldyga To: balbi@ti.com Cc: gregkh@linuxfoundation.org, andrzej.p@samsung.com, m.szyprowski@samsung.com, b.zolnierkie@samsung.com, linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org, Robert Baldyga Subject: [PATCH v3 19/36] usb: gadget: configfs: add new composite API support Date: Fri, 11 Dec 2015 12:24:58 +0100 Message-id: <1449833115-24065-20-git-send-email-r.baldyga@samsung.com> X-Mailer: git-send-email 1.9.1 In-reply-to: <1449833115-24065-1-git-send-email-r.baldyga@samsung.com> References: <1449833115-24065-1-git-send-email-r.baldyga@samsung.com> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFprOLMWRmVeSWpSXmKPExsVy+t9jQd1Hm7LCDB70qVnMetnOYrFxxnpW i4P36y2aF69ns7i8aw6bxaJlrcwWa4/cZbd4cHgnuwOHx/65a9g9+rasYvQ4fmM7k8fnTXIB LFFcNimpOZllqUX6dglcGWev72Uv+MNTcff8TdYGxndcXYycHBICJhKTGg+yQNhiEhfurWfr YuTiEBKYxSjx4ORXKOcno8TDy3fZQarYBHQktnyfwAhiiwgISKx/cYkdpIhZ4BxQ0Z02sISw gJ/EvhdrmUFsFgFVidObdoHFeQXcJFqWTmKDWCcncfLYZFYQmxMoPvnkJbB6IQFXiTev1zFO YORdwMiwilEitSC5oDgpPdcoL7Vcrzgxt7g0L10vOT93EyM4uJ5J72A8vMv9EKMAB6MSD+8C jqwwIdbEsuLK3EOMEhzMSiK8vzYAhXhTEiurUovy44tKc1KLDzFKc7AoifPuuxQZJiSQnliS mp2aWpBaBJNl4uCUamA0X1P2309TtmPm9TilzZLZYpu3S282WPff8ulLb6+D87edEp3/tq05 ZeNc9r1P7hhHc/CuWnuoVWnZ37dCc4sSq49axnS+yNu5Ka5hCb9B+OxjSpYbFx/v/OPFtrz/ R/vN+eb6lZeaN9+fGsrgyOmQ+sf34IHuvw8NFpne+ih6MoDlUvb25iuzlViKMxINtZiLihMB ttwCSioCAAA= Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1844 Lines: 66 Handle functions using new API properly. Signed-off-by: Robert Baldyga --- drivers/usb/gadget/configfs.c | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/drivers/usb/gadget/configfs.c b/drivers/usb/gadget/configfs.c index 0557f80..153adf7 100644 --- a/drivers/usb/gadget/configfs.c +++ b/drivers/usb/gadget/configfs.c @@ -1355,6 +1355,11 @@ static int configfs_composite_bind(struct usb_gadget *gadget, goto err_purge_funcs; } } + + ret = usb_config_do_bind(c); + if (ret) + goto err_purge_funcs; + usb_ep_autoconfig_reset(cdev->gadget); } if (cdev->use_os_string) { @@ -1363,10 +1368,23 @@ static int configfs_composite_bind(struct usb_gadget *gadget, goto err_purge_funcs; } + ret = composite_prep_vendor_descs(cdev); + if (ret < 0) + goto err_free_vendor_descs; + + ret = composite_generate_old_descs(cdev); + if (ret < 0) + goto err_free_old_descs; + usb_ep_autoconfig_reset(cdev->gadget); return 0; +err_free_old_descs: + composite_free_old_descs(cdev); +err_free_vendor_descs: + composite_free_vendor_descs(cdev); err_purge_funcs: + composite_free_descs(cdev); purge_configs_funcs(gi); err_comp_cleanup: composite_dev_cleanup(cdev); @@ -1383,6 +1401,10 @@ static void configfs_composite_unbind(struct usb_gadget *gadget) cdev = get_gadget_data(gadget); gi = container_of(cdev, struct gadget_info, cdev); + composite_free_old_descs(cdev); + composite_free_vendor_descs(cdev); + composite_free_descs(cdev); + kfree(otg_desc[0]); otg_desc[0] = NULL; purge_configs_funcs(gi); -- 1.9.1 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/