X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fopenwrt.git;a=blobdiff_plain;f=package%2Fkernel%2Flinux%2Fmodules%2Fusb.mk;h=51e443a23bb43869bb577b7bd7e1fbd6ab435e13;hp=5d26190eb30e4f9a6b9126dbb1fd301f33733cac;hb=0d1e13f27b6328363880ae2c70002770ada084a2;hpb=bf662d7cb09d02094c99f4cbfab19a8eed6d0dfc diff --git a/package/kernel/linux/modules/usb.mk b/package/kernel/linux/modules/usb.mk index 5d26190eb3..51e443a23b 100644 --- a/package/kernel/linux/modules/usb.mk +++ b/package/kernel/linux/modules/usb.mk @@ -1,5 +1,5 @@ # -# Copyright (C) 2006-2012 OpenWrt.org +# Copyright (C) 2006-2014 OpenWrt.org # # This is free software, licensed under the GNU General Public License v2. # See /LICENSE for more information. @@ -18,7 +18,8 @@ define KernelPackage/usb-core KCONFIG:=CONFIG_USB CONFIG_XPS_USB_HCD_XILINX=n CONFIG_USB_FHCI_HCD=n FILES:= \ $(LINUX_DIR)/drivers/usb/core/usbcore.ko \ - $(LINUX_DIR)/drivers/usb/usb-common.ko + $(LINUX_DIR)/drivers/usb/usb-common.ko@lt3.16 \ + $(LINUX_DIR)/drivers/usb/common/usb-common.ko@ge3.16 AUTOLOAD:=$(call AutoLoad,20,usb-common usbcore,1) $(call AddDepends/nls) endef @@ -36,10 +37,189 @@ define AddDepends/usb endef +define KernelPackage/usb-musb-hdrc + TITLE:=Support for Mentor Graphics silicon dual role USB + KCONFIG:= \ + CONFIG_USB_MUSB_HDRC \ + CONFIG_USB_INVENTRA_DMA=n \ + CONFIG_USB_TI_CPPI41_DMA=n \ + CONFIG_MUSB_PIO_ONLY=y \ + CONFIG_USB_MUSB_DUAL_ROLE=y \ + CONFIG_USB_MUSB_GADGET=n \ + CONFIG_USB_MUSB_HOST=n \ + CONFIG_USB_MUSB_DEBUG=y + DEPENDS:= \ + @(TARGET_omap||TARGET_omap24xx) +kmod-usb-gadget \ + +TARGET_omap24xx:kmod-usb-musb-tusb6010 + FILES:=$(LINUX_DIR)/drivers/usb/musb/musb_hdrc.ko + AUTOLOAD:=$(call AutoLoad,46,musb_hdrc) + $(call AddDepends/usb) +endef + +define KernelPackage/usb-musb-hdrc/description + Kernel support for Mentor Graphics silicon dual role USB device. +endef + +$(eval $(call KernelPackage,usb-musb-hdrc)) + + +define KernelPackage/usb-musb-platformglue + TITLE:=MUSB platform glue layer + KCONFIG:= \ + CONFIG_USB_MUSB_TUSB6010=n \ + CONFIG_USB_MUSB_OMAP2PLUS=n \ + CONFIG_USB_MUSB_AM35X=n \ + CONFIG_USB_MUSB_DSPS \ + CONFIG_USB_MUSB_UX500=n + DEPENDS:=@TARGET_omap +kmod-usb-phy-nop +kmod-usb-musb-hdrc +kmod-usb-phy-am335x + FILES:= \ + $(LINUX_DIR)/drivers/usb/musb/musb_dsps.ko \ + $(LINUX_DIR)/drivers/usb/musb/musb_am335x.ko + AUTOLOAD:=$(call AutoLoad,45,phy-omap-control musb_dsps musb_am335x) + $(call AddDepends/usb) +endef + +define KernelPackage/usb-musb-platformglue/description + MUSB platform glue modules +endef + +$(eval $(call KernelPackage,usb-musb-platformglue)) + + +define KernelPackage/usb-musb-tusb6010 + TITLE:=Support for TUSB 6010 + KCONFIG:=CONFIG_USB_MUSB_TUSB6010 + DEPENDS:=@TARGET_omap24xx + $(call AddDepends/usb) +endef + +define KernelPackage/usb-musb-tusb6010/description + TUSB6010 support +endef + +$(eval $(call KernelPackage,usb-musb-tusb6010)) + + +define KernelPackage/usb-phy-nop + TITLE:=Support for USB NOP transceiver + KCONFIG:=CONFIG_NOP_USB_XCEIV + HIDDEN:=1 +ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/phy/phy-generic.ko),) + FILES:=$(LINUX_DIR)/drivers/usb/phy/phy-generic.ko + AUTOLOAD:=$(call AutoLoad,43,phy-generic) +else +ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/phy/phy-nop.ko),) + FILES:=$(LINUX_DIR)/drivers/usb/phy/phy-nop.ko + AUTOLOAD:=$(call AutoLoad,43,phy-nop) +else + FILES:=$(LINUX_DIR)/drivers/usb/otg/nop-usb-xceiv.ko + AUTOLOAD:=$(call AutoLoad,43,nop-usb-xceiv) +endif +endif + $(call AddDepends/usb) +endef + +define KernelPackage/usb-phy-nop/description + Support for USB NOP transceiver +endef + +$(eval $(call KernelPackage,usb-phy-nop)) + + +define KernelPackage/usb-phy-am335x + TITLE:=Support for AM335x USB PHY + KCONFIG:= \ + CONFIG_AM335X_PHY_USB \ + CONFIG_AM335X_CONTROL_USB + DEPENDS:=@TARGET_omap +kmod-usb-phy-nop + FILES:= \ + $(LINUX_DIR)/drivers/usb/phy/phy-am335x.ko \ + $(LINUX_DIR)/drivers/usb/phy/phy-am335x-control.ko + AUTOLOAD:=$(call AutoLoad,44,phy-am335x) + $(call AddDepends/usb) +endef + +define KernelPackage/usb-phy-am335x/description + Support for AM335x USB PHY +endef + +$(eval $(call KernelPackage,usb-phy-am335x)) + + +define KernelPackage/usb-phy-omap-usb2 + TITLE:=Support for OMAP2 USB PHY + KCONFIG:= \ + CONFIG_OMAP_USB2 \ + CONFIG_OMAP_CONTROL_USB + DEPENDS:=@TARGET_omap + FILES:= \ + $(LINUX_DIR)/drivers/phy/phy-omap-usb2.ko \ + $(LINUX_DIR)/drivers/usb/phy/phy-omap-control.ko + AUTOLOAD:=$(call AutoLoad,45,phy-omap-control phy-omap-usb2) + $(call AddDepends/usb) +endef + +define KernelPackage/usb-phy-omap-usb2/description + Support for AM335x USB PHY +endef + +$(eval $(call KernelPackage,usb-phy-omap-usb2)) + + +define KernelPackage/usb-phy-omap-usb3 + TITLE:=Support for OMAP USB3 PHY + KCONFIG:=CONFIG_OMAP_USB3 + DEPENDS:=@TARGET_omap +kmod-usb-phy-omap-usb2 + FILES:=$(LINUX_DIR)/drivers/usb/phy/phy-omap-usb3.ko + AUTOLOAD:=$(call AutoLoad,45,phy-omap-usb3) + $(call AddDepends/usb) +endef + +define KernelPackage/usb-phy-omap-usb3/description + Support for OMAP USB3 PHY +endef + +$(eval $(call KernelPackage,usb-phy-omap-usb3)) + + +define KernelPackage/usb-phy-twl4030 + TITLE:=Support for TWL4030 OTG PHY + KCONFIG:=CONFIG_TWL4030_USB + DEPENDS:=@TARGET_omap +kmod-usb-phy-omap-usb2 +kmod-usb-musb-hdrc + FILES:=$(LINUX_DIR)/drivers/phy/phy-twl4030-usb.ko + AUTOLOAD:=$(call AutoLoad,45,phy-twl4030-usb) + $(call AddDepends/usb) +endef + +define KernelPackage/usb-phy-twl4030/description + Support for TWL4030/TWL5030/TPS659x0 OTG PHY +endef + +$(eval $(call KernelPackage,usb-phy-twl4030)) + + +define KernelPackage/usb-phy-twl6030 + TITLE:=Support for TWL6030 OTG PHY + KCONFIG:=CONFIG_TWL6030_USB + DEPENDS:=@TARGET_omap +kmod-usb-phy-omap-usb2 +kmod-usb-musb-hdrc + FILES:=$(LINUX_DIR)/drivers/usb/phy/phy-twl6030-usb.ko + AUTOLOAD:=$(call AutoLoad,45,phy-twl6030-usb) + $(call AddDepends/usb) +endef + +define KernelPackage/usb-phy-twl6030/description + Support for TWL6030 OTG PHY +endef + +$(eval $(call KernelPackage,usb-phy-twl6030)) + + define KernelPackage/usb-gadget TITLE:=USB Gadget support KCONFIG:=CONFIG_USB_GADGET - FILES:=$(LINUX_DIR)/drivers/usb/gadget/udc-core.ko + FILES:=\ + $(LINUX_DIR)/drivers/usb/gadget/udc-core.ko@lt3.18 \ + $(LINUX_DIR)/drivers/usb/gadget/udc/udc-core.ko@ge3.18 AUTOLOAD:=$(call AutoLoad,45,udc-core) DEPENDS:=@USB_GADGET_SUPPORT $(call AddDepends/usb) @@ -54,7 +234,7 @@ $(eval $(call KernelPackage,usb-gadget)) define KernelPackage/usb-lib-composite TITLE:=USB lib composite KCONFIG:=CONFIG_USB_LIBCOMPOSITE - DEPENDS:=+kmod-usb-gadget +kmod-fs-configfs @!LINUX_3_3 @!LINUX_3_6 + DEPENDS:=+kmod-usb-gadget +kmod-fs-configfs FILES:=$(LINUX_DIR)/drivers/usb/gadget/libcomposite.ko AUTOLOAD:=$(call AutoLoad,50,libcomposite) $(call AddDepends/usb) @@ -72,16 +252,22 @@ define KernelPackage/usb-eth-gadget KCONFIG:= \ CONFIG_USB_ETH \ CONFIG_USB_ETH_RNDIS=y \ - CONFIG_USB_ETH_EEM=y - DEPENDS:=+kmod-usb-gadget +(!LINUX_3_3&&!LINUX_3_6):kmod-usb-lib-composite -ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/gadget/u_ether.ko),) + CONFIG_USB_ETH_EEM=n + DEPENDS:=+kmod-usb-gadget +kmod-usb-lib-composite +ifeq ($(CONFIG_LINUX_3_3)$(CONFIG_LINUX_3_8)$(CONFIG_LINUX_3_10),) FILES:= \ - $(LINUX_DIR)/drivers/usb/gadget/u_ether.ko \ - $(LINUX_DIR)/drivers/usb/gadget/u_rndis.ko \ - $(LINUX_DIR)/drivers/usb/gadget/usb_f_rndis.ko \ - $(LINUX_DIR)/drivers/usb/gadget/usb_f_eem.ko \ - $(LINUX_DIR)/drivers/usb/gadget/g_ether.ko - AUTOLOAD:=$(call AutoLoad,52,g_ether) + $(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 AUTOLOAD:=$(call AutoLoad,52,g_ether) @@ -96,6 +282,37 @@ endef $(eval $(call KernelPackage,usb-eth-gadget)) +define KernelPackage/usb-serial-gadget + TITLE:=USB Serial Gadget support + KCONFIG:=CONFIG_USB_G_SERIAL + DEPENDS:=+kmod-usb-gadget +kmod-usb-lib-composite +ifeq ($(CONFIG_LINUX_3_3)$(CONFIG_LINUX_3_8),) + FILES:= \ + $(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 + AUTOLOAD:=$(call AutoLoad,52,g_serial) +endif + $(call AddDepends/usb) +endef + +define KernelPackage/usb-serial-gadget/description + Kernel support for USB Serial Gadget. +endef + +$(eval $(call KernelPackage,usb-serial-gadget)) + + define KernelPackage/usb-uhci TITLE:=Support for UHCI controllers KCONFIG:= \ @@ -120,12 +337,16 @@ define KernelPackage/usb-ohci CONFIG_USB_OHCI \ CONFIG_USB_OHCI_HCD \ CONFIG_USB_OHCI_ATH79=y \ + CONFIG_USB_OHCI_HCD_AT91=y \ CONFIG_USB_OHCI_BCM63XX=y \ CONFIG_USB_OCTEON_OHCI=y \ CONFIG_USB_OHCI_HCD_OMAP3=y \ CONFIG_USB_OHCI_HCD_PLATFORM=y FILES:=$(LINUX_DIR)/drivers/usb/host/ohci-hcd.ko - AUTOLOAD:=$(call AutoLoad,50,ohci-hcd,1) +ifeq ($(CONFIG_LINUX_3_8)$(CONFIG_LINUX_3_10),) + FILES+=$(LINUX_DIR)/drivers/usb/host/ohci-platform.ko +endif + AUTOLOAD:=$(call AutoLoad,50,ohci-hcd ohci-platform,1) $(call AddDepends/usb) endef @@ -154,6 +375,22 @@ endef $(eval $(call KernelPackage,usb2-fsl)) +define KernelPackage/usb2-omap + TITLE:=Support for USB2 for OMAP + DEPENDS:=@TARGET_omap +kmod-usb-phy-nop +kmod-usb-phy-am335x +kmod-usb2 + KCONFIG:=CONFIG_USB_EHCI_HCD_OMAP + FILES:=$(LINUX_DIR)/drivers/usb/host/ehci-omap.ko + AUTOLOAD:=$(call AutoLoad,39,ehci-omap) + $(call AddDepends/usb) +endef + +define KernelPackage/usb2-omap/description + Kernel support for OMAP USB2 (EHCI) controllers +endef + +$(eval $(call KernelPackage,usb2-omap)) + + define KernelPackage/usb2 TITLE:=Support for USB2 controllers DEPENDS:=\ @@ -168,15 +405,13 @@ define KernelPackage/usb2 CONFIG_USB_OCTEON_EHCI=y \ CONFIG_USB_EHCI_HCD_ORION=y \ CONFIG_USB_EHCI_HCD_PLATFORM=y -ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,3.8.0)),1) FILES:= \ $(LINUX_DIR)/drivers/usb/host/ehci-hcd.ko \ $(LINUX_DIR)/drivers/usb/host/ehci-platform.ko - AUTOLOAD:=$(call AutoLoad,40,ehci-hcd ehci-platform,1) -else - FILES:=$(LINUX_DIR)/drivers/usb/host/ehci-hcd.ko - AUTOLOAD:=$(call AutoLoad,40,ehci-hcd,1) -endif + ifneq ($(wildcard $(LINUX_DIR)/drivers/usb/host/ehci-orion.ko),) + FILES+=$(LINUX_DIR)/drivers/usb/host/ehci-orion.ko + endif + AUTOLOAD:=$(call AutoLoad,40,ehci-hcd ehci-platform ehci-orion,1) $(call AddDepends/usb) endef @@ -189,7 +424,7 @@ $(eval $(call KernelPackage,usb2)) define KernelPackage/usb2-pci TITLE:=Support for PCI USB2 controllers - DEPENDS:=@PCI_SUPPORT @(!LINUX_3_3&&!LINUX_3_6) +kmod-usb2 + DEPENDS:=@PCI_SUPPORT +kmod-usb2 KCONFIG:=CONFIG_USB_EHCI_PCI FILES:=$(LINUX_DIR)/drivers/usb/host/ehci-pci.ko AUTOLOAD:=$(call AutoLoad,42,ehci-pci,1) @@ -205,15 +440,17 @@ $(eval $(call KernelPackage,usb2-pci)) define KernelPackage/usb-dwc2 TITLE:=DWC2 USB controller driver - DEPENDS:=@LINUX_3_10 + DEPENDS:=@!LINUX_3_8 @!LINUX_3_10 +TARGET_brcm2708:kmod-usb-gadget KCONFIG:= \ CONFIG_USB_DWC2 \ + CONFIG_USB_DWC2_PCI \ + CONFIG_USB_DWC2_PLATFORM \ CONFIG_USB_DWC2_DEBUG=n \ CONFIG_USB_DWC2_VERBOSE=n \ CONFIG_USB_DWC2_TRACK_MISSED_SOFS=n FILES:= \ - $(LINUX_DIR)/drivers/staging/dwc2/dwc2.ko \ - $(LINUX_DIR)/drivers/staging/dwc2/dwc2_platform.ko + $(LINUX_DIR)/drivers/usb/dwc2/dwc2.ko \ + $(LINUX_DIR)/drivers/usb/dwc2/dwc2_platform.ko AUTOLOAD:=$(call AutoLoad,54,dwc2 dwc2_platform,1) $(call AddDepends/usb) endef @@ -226,6 +463,23 @@ endef $(eval $(call KernelPackage,usb-dwc2)) +define KernelPackage/usb2-oxnas + TITLE:=OXNAS USB controller driver + DEPENDS:=@TARGET_oxnas +kmod-usb2 + KCONFIG:=CONFIG_USB_EHCI_OXNAS + FILES:=$(LINUX_DIR)/drivers/usb/host/ehci-oxnas.ko + AUTOLOAD:=$(call AutoLoad,55,ehci-oxnas,1) + $(call AddDepends/usb) +endef + +define KernelPackage/usb2-oxnas/description + This driver provides USB Device Controller support for the + EHCI USB host built-in to the PLXTECH NAS782x SoC +endef + +$(eval $(call KernelPackage,usb2-oxnas)) + + define KernelPackage/usb-acm TITLE:=Support for modems/isdn controllers KCONFIG:=CONFIG_USB_ACM @@ -745,15 +999,11 @@ $(eval $(call KernelPackage,usb-atm-cxacru)) define KernelPackage/usb-net TITLE:=Kernel modules for USB-to-Ethernet convertors - KCONFIG:=CONFIG_USB_USBNET CONFIG_MII=y + DEPENDS:=+kmod-mii + KCONFIG:=CONFIG_USB_USBNET \ + CONFIG_USB_NET_DRIVERS@ge3.18 AUTOLOAD:=$(call AutoProbe,usbnet) -ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),lt,3.12.0)),1) FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/usbnet.ko -else - FILES:=\ - $(LINUX_DIR)/drivers/$(USBNET_DIR)/usbnet.ko \ - $(LINUX_DIR)/drivers/net/mii.ko -endif $(call AddDepends/usb) endef @@ -772,7 +1022,7 @@ endef define KernelPackage/usb-net-asix TITLE:=Kernel module for USB-to-Ethernet Asix convertors - DEPENDS:=+!LINUX_3_3:kmod-libphy + DEPENDS:=+kmod-libphy KCONFIG:=CONFIG_USB_NET_AX8817X FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/asix.ko AUTOLOAD:=$(call AutoProbe,asix) @@ -786,6 +1036,23 @@ endef $(eval $(call KernelPackage,usb-net-asix)) +define KernelPackage/usb-net-asix-ax88179 + TITLE:=Kernel module for USB-to-Gigabit-Ethernet Asix convertors + DEPENDS:=+kmod-libphy + KCONFIG:=CONFIG_USB_NET_AX88179_178A + FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/ax88179_178a.ko + AUTOLOAD:=$(call AutoProbe,ax88179_178a) + $(call AddDepends/usb-net) +endef + +define KernelPackage/usb-net-asix-ax88179/description + Kernel module for USB-to-Ethernet ASIX AX88179 based USB 3.0/2.0 + to Gigabit Ethernet adapters. +endef + +$(eval $(call KernelPackage,usb-net-asix-ax88179)) + + define KernelPackage/usb-net-hso TITLE:=Kernel module for Option USB High Speed Mobile Devices KCONFIG:=CONFIG_USB_HSO @@ -848,6 +1115,21 @@ endef $(eval $(call KernelPackage,usb-net-mcs7830)) +define KernelPackage/usb-net-smsc95xx + TITLE:=SMSC LAN95XX based USB 2.0 10/100 ethernet devices + KCONFIG:=CONFIG_USB_NET_SMSC95XX + FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/smsc95xx.ko + AUTOLOAD:=$(call AutoProbe,smsc95xx) + $(call AddDepends/usb-net, +kmod-lib-crc16) +endef + +define KernelPackage/usb-net-smsc95xx/description + Kernel module for SMSC LAN95XX based devices +endef + +$(eval $(call KernelPackage,usb-net-smsc95xx)) + + define KernelPackage/usb-net-dm9601-ether TITLE:=Support for DM9601 ethernet connections KCONFIG:=CONFIG_USB_NET_DM9601 @@ -877,6 +1159,38 @@ endef $(eval $(call KernelPackage,usb-net-cdc-ether)) +define KernelPackage/usb-net-cdc-eem + TITLE:=Support for CDC EEM connections + KCONFIG:=CONFIG_USB_NET_CDC_EEM + FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/cdc_eem.ko + AUTOLOAD:=$(call AutoProbe,cdc_eem) + $(call AddDepends/usb-net) +endef + +define KernelPackage/usb-net-cdc-eem/description + Kernel support for USB CDC EEM +endef + +$(eval $(call KernelPackage,usb-net-cdc-eem)) + + +define KernelPackage/usb-net-cdc-subset + TITLE:=Support for CDC Ethernet subset connections + KCONFIG:= \ + CONFIG_USB_NET_CDC_SUBSET \ + CONFIG_USB_ARMLINUX + FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/cdc_subset.ko + AUTOLOAD:=$(call AutoProbe,cdc_subset) + $(call AddDepends/usb-net) +endef + +define KernelPackage/usb-net-cdc-subset/description + Kernel support for Simple USB Network Links (CDC Ethernet subset) +endef + +$(eval $(call KernelPackage,usb-net-cdc-subset)) + + define KernelPackage/usb-net-qmi-wwan TITLE:=QMI WWAN driver KCONFIG:=CONFIG_USB_NET_QMI_WWAN @@ -939,6 +1253,21 @@ endef $(eval $(call KernelPackage,usb-net-cdc-ncm)) +define KernelPackage/usb-net-huawei-cdc-ncm + TITLE:=Support for Huawei CDC NCM connections + KCONFIG:=CONFIG_USB_NET_HUAWEI_CDC_NCM + FILES:= $(LINUX_DIR)/drivers/$(USBNET_DIR)/huawei_cdc_ncm.ko + AUTOLOAD:=$(call AutoProbe,huawei_cdc_ncm) + $(call AddDepends/usb-net,+kmod-usb-net-cdc-ncm +kmod-usb-wdm @!LINUX_3_8 @!LINUX_3_10) +endef + +define KernelPackage/usb-net-huawei-cdc-ncm/description + Kernel support for Huawei CDC NCM connections +endef + +$(eval $(call KernelPackage,usb-net-huawei-cdc-ncm)) + + define KernelPackage/usb-net-sierrawireless TITLE:=Support for Sierra Wireless devices KCONFIG:=CONFIG_USB_SIERRA_NET @@ -969,13 +1298,28 @@ endef $(eval $(call KernelPackage,usb-net-ipheth)) +define KernelPackage/usb-net-kalmia + TITLE:=Samsung Kalmia based LTE USB modem + KCONFIG:=CONFIG_USB_NET_KALMIA + FILES:=$(LINUX_DIR)/drivers/net/usb/kalmia.ko + AUTOLOAD:=$(call AutoProbe,kalmia) + $(call AddDepends/usb-net) +endef + +define KernelPackage/usb-net-kalmia/description + Kernel support for Samsung Kalmia based LTE USB modem +endef + +$(eval $(call KernelPackage,usb-net-kalmia)) + + define KernelPackage/usb-hid TITLE:=Support for USB Human Input Devices KCONFIG:=CONFIG_HID_SUPPORT=y CONFIG_USB_HID CONFIG_USB_HIDDEV=y FILES:=$(LINUX_DIR)/drivers/$(USBHID_DIR)/usbhid.ko AUTOLOAD:=$(call AutoProbe,usbhid) $(call AddDepends/usb) - $(call AddDepends/hid) + $(call AddDepends/hid,+kmod-hid-generic) $(call AddDepends/input,+kmod-input-evdev) endef @@ -1038,7 +1382,9 @@ define KernelPackage/usbip KCONFIG:= \ CONFIG_USBIP_CORE \ CONFIG_USBIP_DEBUG=n - FILES:=$(LINUX_DIR)/drivers/staging/usbip/usbip-core.ko + FILES:= \ + $(LINUX_DIR)/drivers/staging/usbip/usbip-core.ko@lt3.17 \ + $(LINUX_DIR)/drivers/usb/usbip/usbip-core.ko@ge3.17 AUTOLOAD:=$(call AutoProbe,usbip-core) $(call AddDepends/usb) endef @@ -1050,7 +1396,9 @@ define KernelPackage/usbip-client TITLE := USB-over-IP client driver DEPENDS := +kmod-usbip KCONFIG := CONFIG_USBIP_VHCI_HCD - FILES := $(LINUX_DIR)/drivers/staging/usbip/vhci-hcd.$(LINUX_KMOD_SUFFIX) + FILES := \ + $(LINUX_DIR)/drivers/staging/usbip/vhci-hcd.ko@lt3.17 \ + $(LINUX_DIR)/drivers/usb/usbip/vhci-hcd.ko@ge3.17 AUTOLOAD := $(call AutoProbe,vhci-hcd) $(call AddDepends/usb) endef @@ -1063,7 +1411,9 @@ $(call KernelPackage/usbip/Default) TITLE := USB-over-IP host driver DEPENDS := +kmod-usbip KCONFIG := CONFIG_USBIP_HOST - FILES := $(LINUX_DIR)/drivers/staging/usbip/usbip-host.ko + FILES := \ + $(LINUX_DIR)/drivers/staging/usbip/usbip-host.ko@lt3.17 \ + $(LINUX_DIR)/drivers/usb/usbip/usbip-host.ko@ge3.17 AUTOLOAD := $(call AutoProbe,usbip-host) $(call AddDepends/usb) endef @@ -1071,40 +1421,32 @@ endef $(eval $(call KernelPackage,usbip-server)) -define KernelPackage/usb-chipidea +define KernelPackage/usb-chipidea-imx TITLE:=Support for ChipIdea controllers - DEPENDS:=+kmod-usb2 + DEPENDS:=@TARGET_imx6||TARGET_mxs +kmod-usb2 +USB_GADGET_SUPPORT:kmod-usb-gadget KCONFIG:=\ CONFIG_USB_CHIPIDEA \ CONFIG_USB_CHIPIDEA_HOST=y \ - CONFIG_USB_CHIPIDEA_UDC=n \ + CONFIG_USB_CHIPIDEA_UDC=y \ CONFIG_USB_CHIPIDEA_DEBUG=y -ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),lt,3.11.0)),1) - FILES:=\ - $(LINUX_DIR)/drivers/usb/chipidea/ci_hdrc.ko \ - $(if $(CONFIG_OF_DEVICE),$(LINUX_DIR)/drivers/usb/chipidea/ci13xxx_imx.ko) \ - $(if $(CONFIG_OF_DEVICE),$(LINUX_DIR)/drivers/usb/chipidea/usbmisc_imx$(if $(call kernel_patchver_le,3.9),6q).ko) - AUTOLOAD:=$(call AutoLoad,51,ci_hdrc $(if $(CONFIG_OF_DEVICE),ci13xxx_imx usbmisc_imx$(if $(call kernel_patchver_le,3.9),6q)),1) -else FILES:=\ $(LINUX_DIR)/drivers/usb/chipidea/ci_hdrc.ko \ $(if $(CONFIG_OF),$(LINUX_DIR)/drivers/usb/chipidea/ci_hdrc_imx.ko) \ $(if $(CONFIG_OF),$(LINUX_DIR)/drivers/usb/chipidea/usbmisc_imx.ko) AUTOLOAD:=$(call AutoLoad,51,ci_hdrc $(if $(CONFIG_OF),ci_hdrc_imx usbmisc_imx),1) -endif $(call AddDepends/usb) endef - -define KernelPackage/usb-chipidea/description + +define KernelPackage/usb-chipidea-imx/description Kernel support for USB ChipIdea controllers endef -$(eval $(call KernelPackage,usb-chipidea,1)) +$(eval $(call KernelPackage,usb-chipidea-imx,1)) define KernelPackage/usb-mxs-phy TITLE:=Support for Freescale MXS USB PHY - DEPENDS:=@TARGET_imx6 + DEPENDS:=@TARGET_imx6||TARGET_mxs +TARGET_mxs:kmod-usb-chipidea-imx KCONFIG:=CONFIG_USB_MXS_PHY FILES:=\ $(LINUX_DIR)/drivers/usb/phy/phy-mxs-usb.ko @@ -1132,3 +1474,26 @@ define KernelPackage/usbmon/description endef $(eval $(call KernelPackage,usbmon)) + +XHCI_FILES := $(wildcard $(patsubst %,$(LINUX_DIR)/drivers/usb/host/%.ko,xhci-hcd xhci-pci xhci-plat)) +XHCI_AUTOLOAD := $(patsubst $(LINUX_DIR)/drivers/usb/host/%.ko,%,$(XHCI_FILES)) + +define KernelPackage/usb3 + TITLE:=Support for USB3 controllers + DEPENDS:=+TARGET_omap:kmod-usb-phy-omap-usb3 + KCONFIG:= \ + CONFIG_USB_XHCI_HCD \ + CONFIG_USB_XHCI_PCI \ + CONFIG_USB_XHCI_PLATFORM \ + CONFIG_USB_XHCI_HCD_DEBUGGING=n + FILES:= \ + $(XHCI_FILES) + AUTOLOAD:=$(call AutoLoad,54,$(XHCI_AUTOLOAD),1) + $(call AddDepends/usb) +endef + +define KernelPackage/usb3/description + Kernel support for USB3 (XHCI) controllers +endef + +$(eval $(call KernelPackage,usb3))