From patchwork Thu Feb 19 22:41:57 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Owen Kirby X-Patchwork-Id: 441784 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from arrakis.dune.hu (arrakis.dune.hu [78.24.191.176]) (using TLSv1.1 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3EBBC14017F for ; Fri, 20 Feb 2015 09:42:29 +1100 (AEDT) Received: from arrakis.dune.hu (localhost [127.0.0.1]) by arrakis.dune.hu (Postfix) with ESMTP id 1FC1B28C68B; Thu, 19 Feb 2015 23:42:14 +0100 (CET) X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on arrakis.dune.hu X-Spam-Level: X-Spam-Status: No, score=-1.5 required=5.0 tests=BAYES_00 autolearn=unavailable version=3.3.2 Received: from arrakis.dune.hu (localhost [127.0.0.1]) by arrakis.dune.hu (Postfix) with ESMTP id 74F8228C68A for ; Thu, 19 Feb 2015 23:42:07 +0100 (CET) X-policyd-weight: using cached result; rate: -5.5 Received: from mail-pd0-f169.google.com (mail-pd0-f169.google.com [209.85.192.169]) by arrakis.dune.hu (Postfix) with ESMTPS for ; Thu, 19 Feb 2015 23:42:05 +0100 (CET) Received: by pdbnh10 with SMTP id nh10so2992704pdb.11 for ; Thu, 19 Feb 2015 14:42:08 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=vKJX6tdrPfpz+veWcDktdZucX3hDhqWWn52jyOCUxeg=; b=gxDl9Rfd1E/AiYGXCkVZwC+21809hf7mBKPhItynmQB1qezhkF6eF21cEO4W6/qJ/K 0stHvJ+P+OenyAXe9HrmzdFWUtorCwEgrHfdV7Q+bQONG85wcOZQ0ijepFzygcOdPV7y xMsUwnf9QxRa0LxUq4p2V7C+wMKXGOqkElzTRCbPrx6BpAm/V3bnkiQtmpO5FhaZghv2 RcReGXZdJoGtDf6H67Wr4w5sjShXLKR+QesKzxmFW8tDgqST1ecJG7VtKWlKc4CTG2Zc UDAZUAGYEW+M5xRB62lK3uaZ+D3ly/DMI4fpKXdb1wSVtDIeou0zq57hfNQSNnuNltYQ Wbvg== X-Gm-Message-State: ALoCoQnLIrZ7Ek2ReGBAB/frIlQbh7oQI+Cj8SL5ck9sYJDYdW332RNTroMLrdRI2H7W0ZuKqPP4 X-Received: by 10.70.90.107 with SMTP id bv11mr11241794pdb.87.1424385728035; Thu, 19 Feb 2015 14:42:08 -0800 (PST) Received: from xenon.microplex.com ([184.71.143.130]) by mx.google.com with ESMTPSA id px9sm8594240pbb.48.2015.02.19.14.42.06 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Thu, 19 Feb 2015 14:42:06 -0800 (PST) From: Owen Kirby To: openwrt-devel@lists.openwrt.org Date: Thu, 19 Feb 2015 14:41:57 -0800 Message-Id: <1424385717-7915-1-git-send-email-osk@exegin.com> X-Mailer: git-send-email 1.9.1 Subject: [OpenWrt-Devel] [PATCH v2] kernel: Fix USB gadget modules for v3.18 X-BeenThere: openwrt-devel@lists.openwrt.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: OpenWrt Development List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: openwrt-devel-bounces@lists.openwrt.org Sender: "openwrt-devel" An update for for the previous patch that should also retain compatibility with kernel version 3.14 and earlier. This has been tested to build working packages for the at91 target at versions 3.14 and 3.18. It also compiles successfully for version 3.13 on the omap target, but I can't test that it works without hardware. The USB gadget drivers have gone through the following changes: 3.8 and earlier: g_ether and g_serial were monolithic drivers. 3.10: g_ether is a monolithic driver. g_serial is split into gadget + function drivers. 3.13 and 3.14: g_serial is split into gadget + function drivers. g_ether is split into gadget + function drivers. u_rndis.ko only existed for version 3.13 3.18 and 3.19: g_serial and g_ether are split into gadget + function drivers. gadgets and functions are moved into separate subdirectories. Signed-off-by: Owen Kirby --- package/kernel/linux/modules/usb.mk | 42 ++++++++++++++++++++++--------------- target/linux/generic/config-3.18 | 1 + 2 files changed, 26 insertions(+), 17 deletions(-) diff --git a/package/kernel/linux/modules/usb.mk b/package/kernel/linux/modules/usb.mk index 6faa437..4d89374 100644 --- a/package/kernel/linux/modules/usb.mk +++ b/package/kernel/linux/modules/usb.mk @@ -254,19 +254,22 @@ define KernelPackage/usb-eth-gadget CONFIG_USB_ETH_RNDIS=y \ CONFIG_USB_ETH_EEM=n DEPENDS:=+kmod-usb-gadget +kmod-usb-lib-composite -ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/gadget/u_ether.ko),) +ifeq ($(CONFIG_LINUX_3_8)$(CONFIG_LINUX_3_10),) FILES:= \ - $(LINUX_DIR)/drivers/usb/gadget/u_ether.ko \ - $(LINUX_DIR)/drivers/usb/gadget/usb_f_ecm.ko \ - $(LINUX_DIR)/drivers/usb/gadget/usb_f_ecm_subset.ko \ - $(LINUX_DIR)/drivers/usb/gadget/usb_f_rndis.ko \ - $(LINUX_DIR)/drivers/usb/gadget/g_ether.ko - ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/gadget/u_rndis.ko),) - FILES+=$(LINUX_DIR)/drivers/usb/gadget/u_rndis.ko - endif + $(LINUX_DIR)/drivers/usb/gadget/function/u_ether.ko@ge3.18 \ + $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_ecm.ko@ge3.18 \ + $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_ecm_subset.ko@ge3.18 \ + $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_rndis.ko@ge3.18 \ + $(LINUX_DIR)/drivers/usb/gadget/legacy/g_ether.ko@ge3.18 \ + $(LINUX_DIR)/drivers/usb/gadget/u_ether.ko@lt3.18 \ + $(LINUX_DIR)/drivers/usb/gadget/u_rndis.ko@lt3.14 \ + $(LINUX_DIR)/drivers/usb/gadget/usb_f_ecm.ko@lt3.18 \ + $(LINUX_DIR)/drivers/usb/gadget/usb_f_ecm_subset.ko@lt3.18 \ + $(LINUX_DIR)/drivers/usb/gadget/usb_f_rndis.ko@lt3.18 \ + $(LINUX_DIR)/drivers/usb/gadget/g_ether.ko@lt3.18 AUTOLOAD:=$(call AutoLoad,52,usb_f_ecm g_ether) else - FILES:=$(LINUX_DIR)/drivers/usb/gadget/g_ether.ko + FILES:= $(LINUX_DIR)/drivers/usb/gadget/g_ether.ko AUTOLOAD:=$(call AutoLoad,52,g_ether) endif $(call AddDepends/usb) @@ -283,16 +286,21 @@ define KernelPackage/usb-serial-gadget TITLE:=USB Serial Gadget support KCONFIG:=CONFIG_USB_G_SERIAL DEPENDS:=+kmod-usb-gadget +kmod-usb-lib-composite -ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/gadget/u_serial.ko),) +ifeq ($(CONFIG_LINUX_3_8),) FILES:= \ - $(LINUX_DIR)/drivers/usb/gadget/u_serial.ko \ - $(LINUX_DIR)/drivers/usb/gadget/usb_f_acm.ko \ - $(LINUX_DIR)/drivers/usb/gadget/usb_f_obex.ko \ - $(LINUX_DIR)/drivers/usb/gadget/usb_f_serial.ko \ - $(LINUX_DIR)/drivers/usb/gadget/g_serial.ko + $(LINUX_DIR)/drivers/usb/gadget/function/u_serial.ko@ge3.18 \ + $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_acm.ko@ge3.18 \ + $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_obex.ko@ge3.18 \ + $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_serial.ko@ge3.18 \ + $(LINUX_DIR)/drivers/usb/gadget/legacy/g_serial.ko@ge3.18 \ + $(LINUX_DIR)/drivers/usb/gadget/u_serial.ko@lt3.18 \ + $(LINUX_DIR)/drivers/usb/gadget/usb_f_acm.ko@lt3.18 \ + $(LINUX_DIR)/drivers/usb/gadget/usb_f_obex.ko@lt3.18 \ + $(LINUX_DIR)/drivers/usb/gadget/usb_f_serial.ko@lt3.18 \ + $(LINUX_DIR)/drivers/usb/gadget/g_serial.ko@lt3.18 AUTOLOAD:=$(call AutoLoad,52,usb_f_acm g_serial) else - FILES:=$(LINUX_DIR)/drivers/usb/gadget/g_serial.ko + FILES:= $(LINUX_DIR)/drivers/usb/gadget/g_serial.ko AUTOLOAD:=$(call AutoLoad,52,g_serial) endif $(call AddDepends/usb) diff --git a/target/linux/generic/config-3.18 b/target/linux/generic/config-3.18 index e8ae342..7ad0efc 100644 --- a/target/linux/generic/config-3.18 +++ b/target/linux/generic/config-3.18 @@ -4055,6 +4055,7 @@ CONFIG_USB_EZUSB=y # CONFIG_USB_GADGET_DEBUG_FS is not set CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2 CONFIG_USB_GADGET_VBUS_DRAW=2 +# CONFIG_USB_GADGET_XILINX is not set # CONFIG_USB_GL860 is not set # CONFIG_USB_GOKU is not set # CONFIG_USB_GPIO_VBUS is not set