X-Git-Url: https://git.archive.openwrt.org/?a=blobdiff_plain;f=package%2Fkernel%2Flinux%2Fmodules%2Fusb.mk;h=4078e1b4485345ca043f22b10051afa1f11807e6;hb=d7b2b091b400dec7ad44cc8f8025229ee3c62763;hp=e1611aaa2891a60b4b6fd0cdd14c4464773cc7c4;hpb=ab5dc5af48d7d5bccb8c2ec054239588ac2a18ba;p=openwrt.git diff --git a/package/kernel/linux/modules/usb.mk b/package/kernel/linux/modules/usb.mk index e1611aaa28..4078e1b448 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,188 @@ 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_PHY + DEPENDS:=@TARGET_omap + FILES:= \ + $(LINUX_DIR)/drivers/phy/phy-omap-usb2.ko \ + $(LINUX_DIR)/drivers/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/udc-core.ko AUTOLOAD:=$(call AutoLoad,45,udc-core) DEPENDS:=@USB_GADGET_SUPPORT $(call AddDepends/usb) @@ -54,7 +233,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,10 +251,15 @@ 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 - FILES:=$(LINUX_DIR)/drivers/usb/gadget/g_ether.ko - AUTOLOAD:=$(call AutoLoad,52,g_ether) + CONFIG_USB_ETH_EEM=n + DEPENDS:=+kmod-usb-gadget +kmod-usb-lib-composite + FILES:= \ + $(LINUX_DIR)/drivers/usb/gadget/function/u_ether.ko \ + $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_ecm.ko@ \ + $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_ecm_subset.ko \ + $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_rndis.ko \ + $(LINUX_DIR)/drivers/usb/gadget/legacy/g_ether.ko + AUTOLOAD:=$(call AutoLoad,52,usb_f_ecm g_ether) $(call AddDepends/usb) endef @@ -86,6 +270,27 @@ 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 + FILES:= \ + $(LINUX_DIR)/drivers/usb/gadget/function/u_serial.ko \ + $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_acm.ko \ + $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_obex.ko \ + $(LINUX_DIR)/drivers/usb/gadget/function/usb_f_serial.ko \ + $(LINUX_DIR)/drivers/usb/gadget/legacy/g_serial.ko + AUTOLOAD:=$(call AutoLoad,52,usb_f_acm g_serial) + $(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:= \ @@ -110,12 +315,15 @@ 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) + FILES:= \ + $(LINUX_DIR)/drivers/usb/host/ohci-hcd.ko \ + $(LINUX_DIR)/drivers/usb/host/ohci-platform.ko + AUTOLOAD:=$(call AutoLoad,50,ohci-hcd ohci-platform,1) $(call AddDepends/usb) endef @@ -126,6 +334,22 @@ endef $(eval $(call KernelPackage,usb-ohci,1)) +define KernelPackage/usb-ohci-pci + TITLE:=Support for PCI OHCI controllers + DEPENDS:=@PCI_SUPPORT +kmod-usb-ohci + KCONFIG:=CONFIG_USB_OHCI_HCD_PCI + FILES:=$(LINUX_DIR)/drivers/usb/host/ohci-pci.ko + AUTOLOAD:=$(call AutoLoad,51,ohci-pci,1) + $(call AddDepends/usb) +endef + +define KernelPackage/usb2-pci/description + Kernel support for PCI OHCI controllers +endef + +$(eval $(call KernelPackage,usb-ohci-pci)) + + define KernelPackage/usb2-fsl TITLE:=Support for Freescale USB2 controllers DEPENDS:=@TARGET_mpc85xx @@ -144,6 +368,24 @@ 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_MFD_OMAP_USB_HOST=y \ + 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:=\ @@ -158,15 +400,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 @@ -179,7 +419,7 @@ $(eval $(call KernelPackage,usb2)) define KernelPackage/usb2-pci TITLE:=Support for PCI USB2 controllers - DEPENDS:=@PCI_SUPPORT @(LINUX_3_8||LINUX_3_9||LINUX_3_10) +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) @@ -195,15 +435,17 @@ $(eval $(call KernelPackage,usb2-pci)) define KernelPackage/usb-dwc2 TITLE:=DWC2 USB controller driver - DEPENDS:=@LINUX_3_10 + DEPENDS:=+(TARGET_brcm2708||TARGET_at91||TARGET_brcm63xx||TARGET_mxs):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 @@ -216,6 +458,45 @@ 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-dwc3 + TITLE:=DWC3 USB controller driver + KCONFIG:= \ + CONFIG_USB_DWC3 \ + CONFIG_USB_DWC3_HOST=y \ + CONFIG_USB_DWC3_GADGET=n \ + CONFIG_USB_DWC3_DUAL_ROLE=n \ + CONFIG_USB_DWC3_DEBUG=n \ + CONFIG_USB_DWC3_VERBOSE=n + FILES:= $(LINUX_DIR)/drivers/usb/dwc3/dwc3.ko + AUTOLOAD:=$(call AutoLoad,54,dwc3,1) + $(call AddDepends/usb) +endef + +define KernelPackage/usb-dwc3/description + This driver provides support for the Dual Role SuperSpeed + USB Controller based on the Synopsys DesignWare USB3 IP Core +endef + +$(eval $(call KernelPackage,usb-dwc3)) + + define KernelPackage/usb-acm TITLE:=Support for modems/isdn controllers KCONFIG:=CONFIG_USB_ACM @@ -356,6 +637,49 @@ endef $(eval $(call KernelPackage,usb-serial-ftdi)) +define KernelPackage/usb-serial-garmin + TITLE:=Support for Garmin GPS devices + KCONFIG:=CONFIG_USB_SERIAL_GARMIN + FILES:=$(LINUX_DIR)/drivers/usb/serial/garmin_gps.ko + AUTOLOAD:=$(call AutoProbe,garmin_gps) + $(call AddDepends/usb-serial) +endef + +define KernelPackage/usb-serial-garmin/description + Should work with most Garmin GPS devices which have a native USB port. +endef + +$(eval $(call KernelPackage,usb-serial-garmin)) + + +define KernelPackage/usb-serial-simple + TITLE:=USB Serial Simple (Motorola phone) + KCONFIG:=CONFIG_USB_SERIAL_SIMPLE + FILES:=$(LINUX_DIR)/drivers/usb/serial/usb-serial-simple.ko + AUTOLOAD:=$(call AutoProbe,usb-serial-simple) + $(call AddDepends/usb-serial) +endef + +define KernelPackage/usb-serial-simple/description + Kernel support for "very simple devices". + +Specifically, it supports: + - Suunto ANT+ USB device. + - Medtronic CareLink USB device (3.18) + - Fundamental Software dongle. + - Google USB serial devices (3.19) + - HP4x calculators + - a number of Motorola phones + - Novatel Wireless GPS receivers (3.18) + - Siemens USB/MPI adapter. + - ViVOtech ViVOpay USB device. + - Infineon Modem Flashloader USB interface + - ZIO Motherboard USB serial interface +endef + +$(eval $(call KernelPackage,usb-serial-simple)) + + define KernelPackage/usb-serial-ti-usb TITLE:=Support for TI USB 3410/5052 KCONFIG:=CONFIG_USB_SERIAL_TI @@ -735,7 +1059,9 @@ $(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 AUTOLOAD:=$(call AutoProbe,usbnet) FILES:=$(LINUX_DIR)/drivers/$(USBNET_DIR)/usbnet.ko $(call AddDepends/usb) @@ -756,7 +1082,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) @@ -770,6 +1096,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 @@ -832,6 +1175,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 @@ -861,6 +1219,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 @@ -923,6 +1313,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) +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 @@ -953,14 +1358,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 + DEPENDS:=+kmod-hid +kmod-hid-generic +kmod-input-evdev FILES:=$(LINUX_DIR)/drivers/$(USBHID_DIR)/usbhid.ko AUTOLOAD:=$(call AutoProbe,usbhid) $(call AddDepends/usb) - $(call AddDepends/hid) - $(call AddDepends/input,+kmod-input-evdev) endef define KernelPackage/usb-hid/description @@ -972,11 +1391,11 @@ $(eval $(call KernelPackage,usb-hid)) define KernelPackage/usb-yealink TITLE:=USB Yealink VOIP phone + DEPENDS:=+kmod-input-evdev KCONFIG:=CONFIG_USB_YEALINK CONFIG_INPUT_YEALINK CONFIG_INPUT=m CONFIG_INPUT_MISC=y FILES:=$(LINUX_DIR)/drivers/$(USBINPUT_DIR)/yealink.ko AUTOLOAD:=$(call AutoProbe,yealink) $(call AddDepends/usb) - $(call AddDepends/input,+kmod-input-evdev) endef define KernelPackage/usb-yealink/description @@ -988,11 +1407,11 @@ $(eval $(call KernelPackage,usb-yealink)) define KernelPackage/usb-cm109 TITLE:=Support for CM109 device + DEPENDS:=+kmod-input-evdev KCONFIG:=CONFIG_USB_CM109 CONFIG_INPUT_CM109 CONFIG_INPUT=m CONFIG_INPUT_MISC=y FILES:=$(LINUX_DIR)/drivers/$(USBINPUT_DIR)/cm109.ko AUTOLOAD:=$(call AutoProbe,cm109) $(call AddDepends/usb) - $(call AddDepends/input,+kmod-input-evdev) endef define KernelPackage/usb-cm109/description @@ -1022,7 +1441,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 @@ -1034,7 +1455,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 @@ -1047,7 +1470,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 @@ -1055,32 +1480,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 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) + $(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) $(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 @@ -1108,3 +1533,27 @@ 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-hcd)) +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_MVEBU=y \ + 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))