From patchwork Mon Jul 27 09:16:18 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Robert Baldyga X-Patchwork-Id: 6870121 Return-Path: X-Original-To: patchwork-linux-omap@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork2.web.kernel.org (Postfix) with ESMTP id 01173C05AC for ; Mon, 27 Jul 2015 09:18:42 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 1922520574 for ; Mon, 27 Jul 2015 09:18:41 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 1846520570 for ; Mon, 27 Jul 2015 09:18:40 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752710AbbG0JS1 (ORCPT ); Mon, 27 Jul 2015 05:18:27 -0400 Received: from mailout4.samsung.com ([203.254.224.34]:46111 "EHLO mailout4.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752010AbbG0JSY (ORCPT ); Mon, 27 Jul 2015 05:18:24 -0400 Received: from epcpsbgm1new.samsung.com (epcpsbgm1 [203.254.230.26]) by mailout4.samsung.com (Oracle Communications Messaging Server 7.0.5.31.0 64bit (built May 5 2014)) with ESMTP id <0NS500HJG36CLVB0@mailout4.samsung.com>; Mon, 27 Jul 2015 18:18:15 +0900 (KST) X-AuditID: cbfee61a-f79a06d000005c6f-55-55b5f7574cbf Received: from epmmp1.local.host ( [203.254.227.16]) by epcpsbgm1new.samsung.com (EPCPMTA) with SMTP id 37.B8.23663.757F5B55; Mon, 27 Jul 2015 18:18:15 +0900 (KST) Received: from AMDC2122.DIGITAL.local ([106.120.53.17]) by mmp1.samsung.com (Oracle Communications Messaging Server 7.0.5.31.0 64bit (built May 5 2014)) with ESMTPA id <0NS500L1Z34BGGA0@mmp1.samsung.com>; Mon, 27 Jul 2015 18:18:15 +0900 (KST) From: Robert Baldyga To: balbi@ti.com Cc: gregkh@linuxfoundation.org, Peter.Chen@freescale.com, johnyoun@synopsys.com, dahlmann.thomas@arcor.de, nicolas.ferre@atmel.com, cernekee@gmail.com, leoli@freescale.com, daniel@zonque.org, haojian.zhuang@gmail.com, robert.jarzmik@free.fr, michal.simek@xilinx.com, devel@driverdev.osuosl.org, linux-kernel@vger.kernel.org, linux-usb@vger.kernel.org, linux-omap@vger.kernel.org, linux-geode@lists.infradead.org, linux-arm-kernel@lists.infradead.org, linuxppc-dev@lists.ozlabs.org, andrzej.p@samsung.com, m.szyprowski@samsung.com, stern@rowland.harvard.edu, petr.cvek@tul.cz, Robert Baldyga Subject: [PATCH v4 08/46] usb: gadget: amd5536udc: add ep capabilities support Date: Mon, 27 Jul 2015 11:16:18 +0200 Message-id: <1437988616-6962-9-git-send-email-r.baldyga@samsung.com> X-Mailer: git-send-email 1.9.1 In-reply-to: <1437988616-6962-1-git-send-email-r.baldyga@samsung.com> References: <1437988616-6962-1-git-send-email-r.baldyga@samsung.com> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFprLIsWRmVeSWpSXmKPExsVy+t9jAd3w71tDDc4/M7SY9bKdxeLg/XqL vQvuMlp03j/MbNH09xWLxZ4zv9gtmhevZ7O4sM7cYvfpS4wWvx4IWWx6fI3Vov/caRaLy7vm sFnMXtLPYrFoWSuzxe/v/1gt1h65y27x7mWExbfLzewWx2b/ZbKY3zGV1eLB4Z3sFrPeCFtM +H2BzUHCY/KTjUweC35tZfG4t+8wi0f/us+sHv8O9zN57Jx1l91j/9w17B6bl9R7nJ+xkNFj 9t0fjB59W1YxemzZ/5nR4/iN7UweM1f2snl83iTnsffzb5YAwSgum5TUnMyy1CJ9uwSujK07 exgLPolXtL2cytLAuEyki5GTQ0LAROLlrpesELaYxIV769m6GLk4hASWMkocmPybEcL5ySjR sPYxC0gVm4COxJbvExhBbBEBAYn1Ly6xgxQxC/xgkTg7r5sdJCEs4Cex9Ol9NhCbRUBVYtOq R0wgNq+Ai0T3/lmMEOvkJE4emwy2mlPAVWLJtK1ANRxA21wkjlzXmsDIu4CRYRWjRGpBckFx UnquYV5quV5xYm5xaV66XnJ+7iZGcKQ9k9rBeHCX+yFGAQ5GJR7eCypbQ4VYE8uKK3MPMUpw MCuJ8D6OAgrxpiRWVqUW5ccXleakFh9ilOZgURLnld2wOVRIID2xJDU7NbUgtQgmy8TBKdXA uDY/09I2v/9bXlWCiZBoTnKppX5aXm/S3I0d3Cez204cm/rPK9f8VmJr++QKE2GbP19kFlmm /C+d0xN85Pbsi6/uaFu94lHIzM1UWDkhS0SoMvdXuqH1lmsWBs8nRW6adyDRPWvagtLvF0/d +8a0dtm2SMepKzPvKvJv+hgQff5v/QuJpd5TlViKMxINtZiLihMBmxZbcLACAAA= Sender: linux-omap-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-omap@vger.kernel.org X-Spam-Status: No, score=-8.2 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_HI, RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Convert endpoint configuration to new capabilities model. Signed-off-by: Robert Baldyga --- drivers/usb/gadget/udc/amd5536udc.c | 57 ++++++++++++++++++++++++++++++------- 1 file changed, 47 insertions(+), 10 deletions(-) diff --git a/drivers/usb/gadget/udc/amd5536udc.c b/drivers/usb/gadget/udc/amd5536udc.c index de7e5e2..1a1d91c 100644 --- a/drivers/usb/gadget/udc/amd5536udc.c +++ b/drivers/usb/gadget/udc/amd5536udc.c @@ -138,15 +138,51 @@ static DECLARE_TASKLET(disconnect_tasklet, udc_tasklet_disconnect, /* endpoint names used for print */ static const char ep0_string[] = "ep0in"; -static const char *const ep_string[] = { - ep0_string, - "ep1in-int", "ep2in-bulk", "ep3in-bulk", "ep4in-bulk", "ep5in-bulk", - "ep6in-bulk", "ep7in-bulk", "ep8in-bulk", "ep9in-bulk", "ep10in-bulk", - "ep11in-bulk", "ep12in-bulk", "ep13in-bulk", "ep14in-bulk", - "ep15in-bulk", "ep0out", "ep1out-bulk", "ep2out-bulk", "ep3out-bulk", - "ep4out-bulk", "ep5out-bulk", "ep6out-bulk", "ep7out-bulk", - "ep8out-bulk", "ep9out-bulk", "ep10out-bulk", "ep11out-bulk", - "ep12out-bulk", "ep13out-bulk", "ep14out-bulk", "ep15out-bulk" +static const struct { + const char *name; + const struct usb_ep_caps caps; +} ep_info[] = { +#define EP_INFO(_name, _type, _dir) \ + { \ + .name = _name, \ + .caps = USB_EP_CAPS(USB_EP_CAPS_TYPE_ ## _type, \ + USB_EP_CAPS_DIR_ ## _dir), \ + } + + EP_INFO(ep0_string, CONTROL, IN), + EP_INFO("ep1in-int", BULK, IN), + EP_INFO("ep2in-bulk", BULK, IN), + EP_INFO("ep3in-bulk", BULK, IN), + EP_INFO("ep4in-bulk", BULK, IN), + EP_INFO("ep5in-bulk", BULK, IN), + EP_INFO("ep6in-bulk", BULK, IN), + EP_INFO("ep7in-bulk", BULK, IN), + EP_INFO("ep8in-bulk", BULK, IN), + EP_INFO("ep9in-bulk", BULK, IN), + EP_INFO("ep10in-bulk", BULK, IN), + EP_INFO("ep11in-bulk", BULK, IN), + EP_INFO("ep12in-bulk", BULK, IN), + EP_INFO("ep13in-bulk", BULK, IN), + EP_INFO("ep14in-bulk", BULK, IN), + EP_INFO("ep15in-bulk", BULK, IN), + EP_INFO("ep0out", CONTROL, OUT), + EP_INFO("ep1out-bulk", BULK, OUT), + EP_INFO("ep2out-bulk", BULK, OUT), + EP_INFO("ep3out-bulk", BULK, OUT), + EP_INFO("ep4out-bulk", BULK, OUT), + EP_INFO("ep5out-bulk", BULK, OUT), + EP_INFO("ep6out-bulk", BULK, OUT), + EP_INFO("ep7out-bulk", BULK, OUT), + EP_INFO("ep8out-bulk", BULK, OUT), + EP_INFO("ep9out-bulk", BULK, OUT), + EP_INFO("ep10out-bulk", BULK, OUT), + EP_INFO("ep11out-bulk", BULK, OUT), + EP_INFO("ep12out-bulk", BULK, OUT), + EP_INFO("ep13out-bulk", BULK, OUT), + EP_INFO("ep14out-bulk", BULK, OUT), + EP_INFO("ep15out-bulk", BULK, OUT), + +#undef EP_INFO }; /* DMA usage flag */ @@ -1517,7 +1553,8 @@ static void udc_setup_endpoints(struct udc *dev) for (tmp = 0; tmp < UDC_EP_NUM; tmp++) { ep = &dev->ep[tmp]; ep->dev = dev; - ep->ep.name = ep_string[tmp]; + ep->ep.name = ep_info[tmp].name; + ep->ep.caps = ep_info[tmp].caps; ep->num = tmp; /* txfifo size is calculated at enable time */ ep->txfifo = dev->txfifo;