From: Michal Nazarewicz <mina86@mina86.com>
To: "Felipe F. Tonello" <eu@felipetonello.com>, linux-usb@vger.kernel.org
Cc: linux-kernel@vger.kernel.org, Felipe Balbi <balbi@kernel.org>,
Baolin Wang <baolin.wang@linaro.org>,
Andrzej Pietrasiewicz <andrzej.p@samsung.com>
Subject: Re: [PATCH 7/9] usb: gadget: remove useless parameter in alloc_ep_req()
Date: Wed, 27 Jul 2016 22:02:22 +0200 [thread overview]
Message-ID: <xa1ty44m26k1.fsf@mina86.com> (raw)
In-Reply-To: <20160726191200.18943-8-eu@felipetonello.com>
On Tue, Jul 26 2016, Felipe F. Tonello wrote:
> This parameter was not really necessary and gadget drivers would almost always
I personally like when commit messages can be read without subject, so
perhaps:
The default_length parameter of alloc_ep_req was not …
But that’s just me.
> create an inline function to pass the same value to len and default_len.
>
> So this patch also removes duplicate code from few drivers.
>
> Signed-off-by: Felipe F. Tonello <eu@felipetonello.com>
Acked-by: Michal Nazarewicz <mina86@mina86.com>
> ---
> drivers/usb/gadget/function/f_hid.c | 10 ++--------
> drivers/usb/gadget/function/f_loopback.c | 9 +--------
> drivers/usb/gadget/function/f_midi.c | 10 ++--------
> drivers/usb/gadget/function/f_sourcesink.c | 11 ++---------
> drivers/usb/gadget/u_f.c | 7 +++----
> drivers/usb/gadget/u_f.h | 2 +-
> 6 files changed, 11 insertions(+), 38 deletions(-)
>
> diff --git a/drivers/usb/gadget/function/f_hid.c b/drivers/usb/gadget/function/f_hid.c
> index 51980c50546d..e82a7468252e 100644
> --- a/drivers/usb/gadget/function/f_hid.c
> +++ b/drivers/usb/gadget/function/f_hid.c
> @@ -362,12 +362,6 @@ static int f_hidg_open(struct inode *inode, struct file *fd)
> /*-------------------------------------------------------------------------*/
> /* usb_function */
>
> -static inline struct usb_request *hidg_alloc_ep_req(struct usb_ep *ep,
> - unsigned length)
> -{
> - return alloc_ep_req(ep, length, length);
> -}
> -
> static void hidg_set_report_complete(struct usb_ep *ep, struct usb_request *req)
> {
> struct f_hidg *hidg = (struct f_hidg *) req->context;
> @@ -549,8 +543,8 @@ static int hidg_set_alt(struct usb_function *f, unsigned intf, unsigned alt)
> */
> for (i = 0; i < hidg->qlen && status == 0; i++) {
> struct usb_request *req =
> - hidg_alloc_ep_req(hidg->out_ep,
> - hidg->report_length);
> + alloc_ep_req(hidg->out_ep,
> + hidg->report_length);
> if (req) {
> req->complete = hidg_set_report_complete;
> req->context = hidg;
> diff --git a/drivers/usb/gadget/function/f_loopback.c b/drivers/usb/gadget/function/f_loopback.c
> index 3a9f8f9c77bd..701ee0f11c33 100644
> --- a/drivers/usb/gadget/function/f_loopback.c
> +++ b/drivers/usb/gadget/function/f_loopback.c
> @@ -306,13 +306,6 @@ static void disable_loopback(struct f_loopback *loop)
> VDBG(cdev, "%s disabled\n", loop->function.name);
> }
>
> -static inline struct usb_request *lb_alloc_ep_req(struct usb_ep *ep, int len)
> -{
> - struct f_loopback *loop = ep->driver_data;
> -
> - return alloc_ep_req(ep, len, loop->buflen);
> -}
> -
> static int alloc_requests(struct usb_composite_dev *cdev,
> struct f_loopback *loop)
> {
> @@ -333,7 +326,7 @@ static int alloc_requests(struct usb_composite_dev *cdev,
> if (!in_req)
> goto fail;
>
> - out_req = lb_alloc_ep_req(loop->out_ep, 0);
> + out_req = alloc_ep_req(loop->out_ep, loop->buflen);
> if (!out_req)
> goto fail_in;
>
> diff --git a/drivers/usb/gadget/function/f_midi.c b/drivers/usb/gadget/function/f_midi.c
> index 3a47596afcab..abf26364b46f 100644
> --- a/drivers/usb/gadget/function/f_midi.c
> +++ b/drivers/usb/gadget/function/f_midi.c
> @@ -208,12 +208,6 @@ static struct usb_gadget_strings *midi_strings[] = {
> NULL,
> };
>
> -static inline struct usb_request *midi_alloc_ep_req(struct usb_ep *ep,
> - unsigned length)
> -{
> - return alloc_ep_req(ep, length, length);
> -}
> -
> static const uint8_t f_midi_cin_length[] = {
> 0, 0, 2, 3, 3, 1, 2, 3, 3, 3, 3, 3, 2, 2, 3, 1
> };
> @@ -365,7 +359,7 @@ static int f_midi_set_alt(struct usb_function *f, unsigned intf, unsigned alt)
> /* pre-allocate write usb requests to use on f_midi_transmit. */
> while (kfifo_avail(&midi->in_req_fifo)) {
> struct usb_request *req =
> - midi_alloc_ep_req(midi->in_ep, midi->buflen);
> + alloc_ep_req(midi->in_ep, midi->buflen);
>
> if (req == NULL)
> return -ENOMEM;
> @@ -379,7 +373,7 @@ static int f_midi_set_alt(struct usb_function *f, unsigned intf, unsigned alt)
> /* allocate a bunch of read buffers and queue them all at once. */
> for (i = 0; i < midi->qlen && err == 0; i++) {
> struct usb_request *req =
> - midi_alloc_ep_req(midi->out_ep, midi->buflen);
> + alloc_ep_req(midi->out_ep, midi->buflen);
>
> if (req == NULL)
> return -ENOMEM;
> diff --git a/drivers/usb/gadget/function/f_sourcesink.c b/drivers/usb/gadget/function/f_sourcesink.c
> index df0189ddfdd5..517d78d6da78 100644
> --- a/drivers/usb/gadget/function/f_sourcesink.c
> +++ b/drivers/usb/gadget/function/f_sourcesink.c
> @@ -291,13 +291,6 @@ static struct usb_gadget_strings *sourcesink_strings[] = {
>
> /*-------------------------------------------------------------------------*/
>
> -static inline struct usb_request *ss_alloc_ep_req(struct usb_ep *ep, int len)
> -{
> - struct f_sourcesink *ss = ep->driver_data;
> -
> - return alloc_ep_req(ep, len, ss->buflen);
> -}
> -
> static void disable_ep(struct usb_composite_dev *cdev, struct usb_ep *ep)
> {
> int value;
> @@ -606,11 +599,11 @@ static int source_sink_start_ep(struct f_sourcesink *ss, bool is_in,
> } else {
> ep = is_in ? ss->in_ep : ss->out_ep;
> qlen = ss->bulk_qlen;
> - size = 0;
> + size = ss->buflen;
> }
>
> for (i = 0; i < qlen; i++) {
> - req = ss_alloc_ep_req(ep, size);
> + req = alloc_ep_req(ep, size);
> if (!req)
> return -ENOMEM;
>
> diff --git a/drivers/usb/gadget/u_f.c b/drivers/usb/gadget/u_f.c
> index d1933b0b76c3..dfc40f7155ac 100644
> --- a/drivers/usb/gadget/u_f.c
> +++ b/drivers/usb/gadget/u_f.c
> @@ -14,15 +14,14 @@
> #include "u_f.h"
> #include <linux/usb/ch9.h>
>
> -struct usb_request *alloc_ep_req(struct usb_ep *ep, int len, int default_len)
> +struct usb_request *alloc_ep_req(struct usb_ep *ep, size_t len)
> {
> struct usb_request *req;
>
> req = usb_ep_alloc_request(ep, GFP_ATOMIC);
> if (req) {
> - req->length = len ?: default_len;
> - if (usb_endpoint_dir_out(ep->desc))
> - req->length = usb_ep_align(ep, req->length);
> + req->length = usb_endpoint_dir_out(ep->desc) ?
> + usb_ep_align(ep, req->length) : len;
> req->buf = kmalloc(req->length, GFP_ATOMIC);
> if (!req->buf) {
> usb_ep_free_request(ep, req);
> diff --git a/drivers/usb/gadget/u_f.h b/drivers/usb/gadget/u_f.h
> index 4247cc098a89..2852c9d7a85d 100644
> --- a/drivers/usb/gadget/u_f.h
> +++ b/drivers/usb/gadget/u_f.h
> @@ -48,7 +48,7 @@ struct usb_ep;
> struct usb_request;
>
> /* Requests allocated via alloc_ep_req() must be freed by free_ep_req(). */
> -struct usb_request *alloc_ep_req(struct usb_ep *ep, int len, int default_len);
> +struct usb_request *alloc_ep_req(struct usb_ep *ep, size_t len);
> static inline void free_ep_req(struct usb_ep *ep, struct usb_request *req)
> {
> kfree(req->buf);
> --
> 2.9.0
>
--
Best regards
ミハウ “𝓶𝓲𝓷𝓪86” ナザレヴイツ
«If at first you don’t succeed, give up skydiving»
next prev parent reply other threads:[~2016-07-27 20:02 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-07-26 19:11 [PATCH v2 0/9] Gadget endpoint request allocation and MIDI Felipe F. Tonello
2016-07-26 19:11 ` [PATCH 1/9] usb: gadget: fix usb_ep_align_maybe endianness and new usb_ep_align Felipe F. Tonello
2016-07-27 19:37 ` Michal Nazarewicz
2016-08-02 15:05 ` Felipe Ferreri Tonello
2016-07-26 19:11 ` [PATCH 2/9] usb: gadget: align buffer size when allocating for OUT endpoint Felipe F. Tonello
2016-07-27 19:59 ` Michal Nazarewicz
2016-08-02 15:15 ` Felipe Ferreri Tonello
2016-07-26 19:11 ` [PATCH 3/9] usb: gadget: f_midi: remove alignment code " Felipe F. Tonello
2016-07-26 19:11 ` [PATCH 4/9] usb: gadget: f_midi: defaults buflen sizes to 512 Felipe F. Tonello
2016-07-27 19:38 ` Michal Nazarewicz
2016-07-26 19:11 ` [PATCH 5/9] usb: gadget: f_midi: refactor state machine Felipe F. Tonello
2016-07-26 19:11 ` [PATCH 6/9] usb: gadget: f_midi: drop substreams when disabling endpoint Felipe F. Tonello
2016-07-26 19:11 ` [PATCH 7/9] usb: gadget: remove useless parameter in alloc_ep_req() Felipe F. Tonello
2016-07-26 19:18 ` [PATCH v2 " Felipe F. Tonello
2016-07-26 19:19 ` Felipe Ferreri Tonello
2016-07-27 20:02 ` Michal Nazarewicz [this message]
2016-08-02 15:08 ` [PATCH " Felipe Ferreri Tonello
2016-07-26 19:11 ` [PATCH 8/9] usb: gadget: f_hid: use free_ep_req() Felipe F. Tonello
2016-07-27 20:03 ` Michal Nazarewicz
2016-07-26 19:12 ` [PATCH 9/9] usb: gadget: f_hid: use alloc_ep_req() Felipe F. Tonello
2016-07-27 20:34 ` Michal Nazarewicz
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=xa1ty44m26k1.fsf@mina86.com \
--to=mina86@mina86.com \
--cc=andrzej.p@samsung.com \
--cc=balbi@kernel.org \
--cc=baolin.wang@linaro.org \
--cc=eu@felipetonello.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.