package/kernel: don't depend on kmod-usb-storage when it's built-in
[openwrt-10.03/.git] / package / kernel / modules / usb.mk
index 7ad447c723edf0c084b00e6550eb59488124debc..86a1858ec64b620325e6af90cbb0e15c9ebace44 100644 (file)
@@ -128,34 +128,23 @@ endef
 
 $(eval $(call KernelPackage,usb-adm5120))
 
-define KernelPackage/usb-etrax
-$(call KernelPackage/usb/Depends,@TARGET_etrax)
-  TITLE:=Support for the ETRAX USB host controller
-  KCONFIG:=CONFIG_ETRAX_USB_HOST \
-       CONFIG_ETRAX_USB_HOST_PORT1=y CONFIG_ETRAX_USB_HOST_PORT2=y
-  FILES:=$(LINUX_DIR)/drivers/usb/host/hc-crisv10.$(LINUX_KMOD_SUFFIX)
-  AUTOLOAD:=$(call AutoLoad,50,hc-crisv10,1)
-endef
-
-define KernelPackage/usb-etrax/description
- Kernel support for the ETRAX USB host controller
-endef
 
-$(eval $(call KernelPackage,usb-etrax))
-
-define KernelPackage/usb-octeon
-$(call KernelPackage/usb/Depends,@TARGET_octeon)
-  TITLE:=Support for the Octeon USB OTG controller
-  KCONFIG:=CONFIG_USB_DWC_OTG
-  FILES:=$(LINUX_DIR)/drivers/usb/host/dwc_otg/dwc_otg.$(LINUX_KMOD_SUFFIX)
-  AUTOLOAD:=$(call AutoLoad,50,dwc_otg)
+define KernelPackage/usb-isp116x-hcd
+$(call KernelPackage/usb/Depends,@TARGET_ppc40x)
+  TITLE:=Support for the ISP116x USB Host Controller
+  KCONFIG:= \
+       CONFIG_USB_ISP116X_HCD \
+       CONFIG_USB_ISP116X_HCD_OF=y \
+       CONFIG_USB_ISP116X_HCD_PLATFORM=n
+  FILES:=$(LINUX_DIR)/drivers/usb/host/isp116x-hcd.$(LINUX_KMOD_SUFFIX)
+  AUTOLOAD:=$(call AutoLoad,50,isp116x-hcd)
 endef
 
-define KernelPackage/usb-octeon/description
-  Kernel support for the Octeon USB host controller
+define KernelPackage/usb-isp116x-hcd/description
+  Kernel support for the ISP116X USB Host Controller
 endef
 
-$(eval $(call KernelPackage,usb-octeon))
+$(eval $(call KernelPackage,usb-isp116x-hcd))
 
 
 define KernelPackage/usb2
@@ -451,6 +440,24 @@ endef
 $(eval $(call KernelPackage,usb-serial-visor))
 
 
+define KernelPackage/usb-serial-cypress-m8
+$(call KernelPackage/usb-serial/Depends,)
+  TITLE:=Support for CypressM8 USB-Serial
+  KCONFIG:=CONFIG_USB_SERIAL_CYPRESS_M8
+  FILES:=$(LINUX_DIR)/drivers/usb/serial/cypress_m8.$(LINUX_KMOD_SUFFIX)
+  AUTOLOAD:=$(call AutoLoad,65,cypress_m8)
+endef
+
+define KernelPackage/usb-serial-cypress-m8/description
+ Kernel support for devices with Cypress M8 USB to Serial chip
+ (for example, the Delorme Earthmate LT-20 GPS)
+ Supported microcontrollers in the CY4601 family are:
+       CY7C63741 CY7C63742 CY7C63743 CY7C64013
+endef
+
+$(eval $(call KernelPackage,usb-serial-cypress-m8))
+
+
 define KernelPackage/usb-serial-keyspan
 $(call KernelPackage/usb-serial/Depends,)
   TITLE:=Support for Keyspan USB-to-Serial devices
@@ -495,11 +502,11 @@ $(eval $(call KernelPackage,usb-serial-option))
 
 
 define KernelPackage/usb-storage
-$(call KernelPackage/usb/Depends,+kmod-scsi-core)
+$(call KernelPackage/usb/Depends,+!TARGET_x86:kmod-scsi-core)
   TITLE:=USB Storage support
   KCONFIG:=CONFIG_USB_STORAGE
   FILES:=$(LINUX_DIR)/drivers/usb/storage/usb-storage.$(LINUX_KMOD_SUFFIX)
-  AUTOLOAD:=$(call AutoLoad,60,scsi_mod sd_mod usb-storage,1)
+  AUTOLOAD:=$(call AutoLoad,60,usb-storage,1)
 endef
 
 define KernelPackage/usb-storage/description
@@ -508,6 +515,45 @@ endef
 
 $(eval $(call KernelPackage,usb-storage))
 
+define KernelPackage/usb-storage-extras
+  SUBMENU:=$(USB_MENU)
+  TITLE:=Extra drivers for usb-storage
+  DEPENDS:=@LINUX_2_6 \
+       +!TARGET_ixp4xx_harddisk||!TARGET_orion_harddisk||!TARGET_x86_olpc:kmod-usb-storage
+  KCONFIG:= \
+       CONFIG_USB_STORAGE_ALAUDA \
+       CONFIG_USB_STORAGE_CYPRESS_ATACB \
+       CONFIG_USB_STORAGE_DATAFAB \
+       CONFIG_USB_STORAGE_FREECOM \
+       CONFIG_USB_STORAGE_ISD200 \
+       CONFIG_USB_STORAGE_JUMPSHOT \
+       CONFIG_USB_STORAGE_KARMA \
+       CONFIG_USB_STORAGE_SDDR09 \
+       CONFIG_USB_STORAGE_SDDR55 \
+       CONFIG_USB_STORAGE_USBAT
+  FILES:= \
+       $(LINUX_DIR)/drivers/usb/storage/ums-alauda.$(LINUX_KMOD_SUFFIX) \
+       $(LINUX_DIR)/drivers/usb/storage/ums-cypress.$(LINUX_KMOD_SUFFIX) \
+       $(LINUX_DIR)/drivers/usb/storage/ums-datafab.$(LINUX_KMOD_SUFFIX) \
+       $(LINUX_DIR)/drivers/usb/storage/ums-freecom.$(LINUX_KMOD_SUFFIX) \
+       $(LINUX_DIR)/drivers/usb/storage/ums-isd200.$(LINUX_KMOD_SUFFIX) \
+       $(LINUX_DIR)/drivers/usb/storage/ums-jumpshot.$(LINUX_KMOD_SUFFIX) \
+       $(LINUX_DIR)/drivers/usb/storage/ums-karma.$(LINUX_KMOD_SUFFIX) \
+       $(LINUX_DIR)/drivers/usb/storage/ums-sddr09.$(LINUX_KMOD_SUFFIX) \
+       $(LINUX_DIR)/drivers/usb/storage/ums-sddr55.$(LINUX_KMOD_SUFFIX) \
+       $(LINUX_DIR)/drivers/usb/storage/ums-usbat.$(LINUX_KMOD_SUFFIX)
+  AUTOLOAD:=$(call AutoLoad,60,ums-alauda ums-cypress ums-datafab \
+                               ums-freecom ums-isd200 ums-jumpshot \
+                               ums-karma ums-sddr09 ums-sddr55 ums-usbat)
+endef
+
+define KernelPackage/usb-storage-extras/description
+  Say Y here if you want to have some more drivers,
+  such as for SmartMedia card readers.
+endef
+
+$(eval $(call KernelPackage,usb-storage-extras))
+
 
 define KernelPackage/usb-video
 $(call KernelPackage/usb/Depends,@LINUX_2_6)
@@ -634,7 +680,7 @@ $(eval $(call KernelPackage,usb-net-asix))
 
 
 define KernelPackage/usb-net-hso
-$(call KernelPackage/usb-net/Depends,@LINUX_2_6 +!TARGET_rb532||!TARGET_avr32||!TARGET_brcm47xx||!TARGET_s3c24xx||!TARGET_ifxmips||!TARGET_atheros||!TARGET_adm5120||!TARGET_ar7||!TARGET_ppc40x||!TARGET_ixp4xx||!TARGET_rdc:kmod-rfkill)
+$(call KernelPackage/usb-net/Depends,@LINUX_2_6 +!TARGET_rb532||!TARGET_avr32||!TARGET_brcm47xx||!TARGET_lantiq||!TARGET_atheros||!TARGET_adm5120||!TARGET_ar7||!TARGET_ppc40x||!TARGET_ixp4xx||!TARGET_rdc:kmod-rfkill)
   TITLE:=Kernel module for Option USB High Speed Mobile Devices
   KCONFIG:=CONFIG_USB_HSO
   FILES:= \
@@ -726,7 +772,7 @@ $(eval $(call KernelPackage,usb-net-cdc-ether))
 define KernelPackage/usb-net-rndis
 $(call KernelPackage/usb-net/Depends,@LINUX_2_6 +kmod-usb-net-cdc-ether)
   TITLE:=Support for RNDIS connections
-  KCONFIG:=CONFIG_USB_NET_RNDIS_HOST 
+  KCONFIG:=CONFIG_USB_NET_RNDIS_HOST
   FILES:= $(LINUX_DIR)/drivers/$(USBNET_DIR)/rndis_host.$(LINUX_KMOD_SUFFIX)
   AUTOLOAD:=$(call AutoLoad,62,rndis_host)
 endef
@@ -739,9 +785,9 @@ $(eval $(call KernelPackage,usb-net-rndis))
 
 
 define KernelPackage/usb-hid
-$(call KernelPackage/usb/Depends,@LINUX_2_6 +kmod-input-core +kmod-input-evdev +kmod-hid)
+$(call KernelPackage/usb/Depends,@LINUX_2_6 +!TARGET_x86:kmod-input-core +kmod-input-evdev +!TARGET_x86:kmod-hid)
   TITLE:=Support for USB Human Input Devices
-  KCONFIG:=CONFIG_HID_SUPPORT=y CONFIG_USB_HID
+  KCONFIG:=CONFIG_HID_SUPPORT=y CONFIG_USB_HID CONFIG_USB_HIDDEV=y
   FILES:=$(LINUX_DIR)/drivers/$(USBHID_DIR)/usbhid.ko
   AUTOLOAD:=$(call AutoLoad,70,usbhid)
 endef
@@ -755,7 +801,7 @@ $(eval $(call KernelPackage,usb-hid))
 
 
 define KernelPackage/usb-yealink
-$(call KernelPackage/usb/Depends,@LINUX_2_6 +kmod-input-core +kmod-input-evdev)
+$(call KernelPackage/usb/Depends,@LINUX_2_6 +!TARGET_x86:kmod-input-core +kmod-input-evdev)
   TITLE:=USB Yealink VOIP phone
   KCONFIG:=CONFIG_USB_YEALINK CONFIG_INPUT_YEALINK CONFIG_INPUT=m CONFIG_INPUT_MISC=y
   FILES:=$(LINUX_DIR)/drivers/$(USBINPUT_DIR)/yealink.ko
@@ -770,7 +816,7 @@ $(eval $(call KernelPackage,usb-yealink))
 
 
 define KernelPackage/usb-cm109
-$(call KernelPackage/usb/Depends,@LINUX_2_6 +kmod-input-core +kmod-input-evdev)
+$(call KernelPackage/usb/Depends,@LINUX_2_6 +!TARGET_x86:kmod-input-core +kmod-input-evdev)
   TITLE:=Support for CM109 device
   KCONFIG:=CONFIG_USB_CM109 CONFIG_INPUT_CM109 CONFIG_INPUT=m CONFIG_INPUT_MISC=y
   FILES:=$(LINUX_DIR)/drivers/$(USBINPUT_DIR)/cm109.ko