From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752252AbbJZQzR (ORCPT ); Mon, 26 Oct 2015 12:55:17 -0400 Received: from mail-wi0-f172.google.com ([209.85.212.172]:38899 "EHLO mail-wi0-f172.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751894AbbJZQzN (ORCPT ); Mon, 26 Oct 2015 12:55:13 -0400 From: "Felipe F. Tonello" To: linux-usb@vger.kernel.org Cc: linux-kernel@vger.kernel.org, Felipe Balbi , Greg Kroah-Hartman , Andrzej Pietrasiewicz , Clemens Ladisch Subject: [PATCH v4 0/7] USB MIDI Gadget improvements and bug fixes Date: Mon, 26 Oct 2015 16:55:02 +0000 Message-Id: <1445878509-12084-1-git-send-email-eu@felipetonello.com> X-Mailer: git-send-email 2.1.4 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Patch 7 has changes on how to transmit IN USB requests. It implements a FIFO of pre-allocated usb requests and uses then as needed, instead of allocating then on demand. This is my initial implementation and is open for suggestions and comments. Patches 1-6 is pretty much straight forward. changes in v4: - pre-alocation of in requests. - more code clean up - fix memory leak on out requests - configure endpoints only when setting up MIDIStreaming interface Felipe F. Tonello (7): usb: gadget: f_midi: Transmit data only when IN ep is enabled usb: gadget: f_midi: remove duplicated code usb: gadget: define free_ep_req as universal function usb: gadget: f_midi: fix leak on failed to enqueue out requests usb: gadget: f_midi: set altsettings only for MIDIStreaming interface usb: gadget: gmidi: Cleanup legacy code usb: gadget: f_midi: pre-allocate IN requests drivers/usb/gadget/function/f_midi.c | 201 ++++++++++++++++++++--------- drivers/usb/gadget/function/f_sourcesink.c | 6 - drivers/usb/gadget/function/g_zero.h | 1 - drivers/usb/gadget/legacy/gmidi.c | 12 +- drivers/usb/gadget/u_f.c | 8 ++ drivers/usb/gadget/u_f.h | 3 +- 6 files changed, 151 insertions(+), 80 deletions(-) -- 2.1.4