package/kernel/modules: Alexandros pointed me at this patch, and I noted that not...
[openwrt/staging/yousong.git] / package / kernel / modules / other.mk
index ac0416cc6c9d958e3c13c646c60063cf19131a22..2de923f9529a7d605f40d1ef8a238f4acb306a71 100644 (file)
@@ -32,20 +32,26 @@ define KernelPackage/bluetooth
        CONFIG_BT_HCIUSB \
        CONFIG_BT_HCIUART \
        CONFIG_BT_HCIUART_H4 \
-       CONFIG_BT_HIDP
+       CONFIG_BT_HIDP \
+       CONFIG_HID_SUPPORT=y
   $(call AddDepends/crc16)
   $(call AddDepends/hid)
   $(call AddDepends/rfkill)
   FILES:= \
        $(LINUX_DIR)/net/bluetooth/bluetooth.ko \
-       $(LINUX_DIR)/net/bluetooth/l2cap.ko \
-       $(LINUX_DIR)/net/bluetooth/sco.ko \
        $(LINUX_DIR)/net/bluetooth/rfcomm/rfcomm.ko \
        $(LINUX_DIR)/net/bluetooth/bnep/bnep.ko \
        $(LINUX_DIR)/net/bluetooth/hidp/hidp.ko \
        $(LINUX_DIR)/drivers/bluetooth/hci_uart.ko \
        $(LINUX_DIR)/drivers/bluetooth/btusb.ko
-  AUTOLOAD:=$(call AutoLoad,90,bluetooth l2cap sco rfcomm bnep hidp hci_uart btusb)
+  ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),ge,2.6.39)),1)
+    AUTOLOAD:=$(call AutoLoad,90,bluetooth rfcomm bnep hidp hci_uart btusb)
+  else
+    FILES+= \
+       $(LINUX_DIR)/net/bluetooth/l2cap.ko \
+       $(LINUX_DIR)/net/bluetooth/sco.ko
+    AUTOLOAD:=$(call AutoLoad,90,bluetooth l2cap sco rfcomm bnep hidp hci_uart btusb)
+  endif
 endef
 
 define KernelPackage/bluetooth/description
@@ -76,7 +82,7 @@ define KernelPackage/cpu-msr
   TITLE:=x86 CPU MSR support
   DEPENDS:=@TARGET_x86
   KCONFIG:=CONFIG_X86_MSR
-  FILES:=$(LINUX_DIR)/arch/x86/kernel/msr.$(LINUX_KMOD_SUFFIX)
+  FILES:=$(LINUX_DIR)/arch/x86/kernel/msr.ko
   AUTOLOAD:=$(call AutoLoad,20,msr)
 endef
 
@@ -121,7 +127,7 @@ $(eval $(call KernelPackage,gpio-cs5535))
 define KernelPackage/gpio-cs5535-new
   SUBMENU:=$(OTHER_MENU)
   TITLE:=AMD CS5535/CS5536 GPIO driver with improved sysfs support
-  DEPENDS:=@TARGET_x86 @!(LINUX_2_6_30||LINUX_2_6_31||LINUX_2_6_32)
+  DEPENDS:=@TARGET_x86 +kmod-cs5535-mfd @!(LINUX_2_6_30||LINUX_2_6_31||LINUX_2_6_32)
   KCONFIG:=CONFIG_GPIO_CS5535
   FILES:=$(LINUX_DIR)/drivers/gpio/cs5535-gpio.ko
   AUTOLOAD:=$(call AutoLoad,50,cs5535-gpio)
@@ -431,7 +437,7 @@ define KernelPackage/oprofile
   SUBMENU:=$(OTHER_MENU)
   TITLE:=OProfile profiling support
   KCONFIG:=CONFIG_OPROFILE
-  FILES:=$(LINUX_DIR)/arch/$(LINUX_KARCH)/oprofile/oprofile.$(LINUX_KMOD_SUFFIX)
+  FILES:=$(LINUX_DIR)/arch/$(LINUX_KARCH)/oprofile/oprofile.ko
   DEPENDS:=@KERNEL_PROFILING
 endef
 
@@ -514,7 +520,7 @@ $(eval $(call KernelPackage,ssb))
 define KernelPackage/wdt-geode
   SUBMENU:=$(OTHER_MENU)
   TITLE:=Geode/LX Watchdog timer
-  DEPENDS:=@TARGET_x86
+  DEPENDS:=@TARGET_x86 +kmod-cs5535-mfgpt
   KCONFIG:=CONFIG_GEODE_WDT
   FILES:=$(LINUX_DIR)/drivers/$(WATCHDOG_DIR)/geodewdt.ko
   AUTOLOAD:=$(call AutoLoad,50,geodewdt)
@@ -527,6 +533,56 @@ endef
 $(eval $(call KernelPackage,wdt-geode))
 
 
+define KernelPackage/cs5535-clockevt
+  SUBMENU:=$(OTHER_MENU)
+  TITLE:=CS5535/CS5536 high-res timer (MFGPT) events
+  DEPENDS:=@TARGET_x86 +kmod-cs5535-mfgpt
+  KCONFIG:=CONFIG_CS5535_CLOCK_EVENT_SRC
+  FILES:=$(LINUX_DIR)/drivers/clocksource/cs5535-clockevt.ko
+  AUTOLOAD:=$(call AutoLoad,50,cs5535-clockevt)
+endef
+
+define KernelPackage/cs5535-clockevt/description
+  Kernel module for CS5535/6 high-res clock event source
+endef
+
+$(eval $(call KernelPackage,cs5535-clockevt))
+
+
+define KernelPackage/cs5535-mfgpt
+  SUBMENU:=$(OTHER_MENU)
+  TITLE:=CS5535/6 Multifunction General Purpose Timer
+  DEPENDS:=@TARGET_x86 +kmod-cs5535-mfd
+  KCONFIG:=CONFIG_CS5535_MFGPT
+  FILES:=$(LINUX_DIR)/drivers/misc/cs5535-mfgpt.ko
+  AUTOLOAD:=$(call AutoLoad,45,cs5535-mfgpt)
+endef
+
+define KernelPackage/cs5535-mfgpt/description
+  Kernel module for CS5535/6 multifunction general purpose timer.
+endef
+
+$(eval $(call KernelPackage,cs5535-mfgpt))
+
+
+define KernelPackage/cs5535-mfd
+  SUBMENU:=$(OTHER_MENU)
+  TITLE:=CS5535/6 Multifunction General Purpose Driver
+  DEPENDS:=@TARGET_x86
+  KCONFIG:=CONFIG_MFD_CS5535
+  FILES:= \
+       $(LINUX_DIR)/drivers/mfd/mfd-core.ko \
+       $(LINUX_DIR)/drivers/mfd/cs5535-mfd.ko 
+  AUTOLOAD:=$(call AutoLoad,44,mfd-core cs5535-mfd)
+endef
+
+define KernelPackage/cs5535-mfd/description
+  Core driver for CS5535/CS5536 MFD functions.
+endef
+
+$(eval $(call KernelPackage,cs5535-mfd))
+
+
 define KernelPackage/wdt-omap
   SUBMENU:=$(OTHER_MENU)
   TITLE:=OMAP Watchdog timer
@@ -622,9 +678,10 @@ $(eval $(call KernelPackage,pwm-gpio))
 
 define KernelPackage/rtc-core
   SUBMENU:=$(OTHER_MENU)
+  DEPENDS:=@(!LINUX_3_0||BROKEN)
   TITLE:=Real Time Clock class support
   KCONFIG:=CONFIG_RTC_CLASS
-  FILES:=$(LINUX_DIR)/drivers/rtc/rtc-core.$(LINUX_KMOD_SUFFIX)
+  FILES:=$(LINUX_DIR)/drivers/rtc/rtc-core.ko
   AUTOLOAD:=$(call AutoLoad,29,rtc-core)
 endef
 
@@ -639,7 +696,7 @@ define KernelPackage/rtc-pcf8563
   TITLE:=Philips PCF8563/Epson RTC8564 RTC support
   DEPENDS:=+kmod-rtc-core
   KCONFIG:=CONFIG_RTC_DRV_PCF8563
-  FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf8563.$(LINUX_KMOD_SUFFIX)
+  FILES:=$(LINUX_DIR)/drivers/rtc/rtc-pcf8563.ko
   AUTOLOAD:=$(call AutoLoad,60,rtc-pcf8563)
 endef
 
@@ -656,7 +713,7 @@ define KernelPackage/n810bm
   TITLE:=Nokia N810 battery management driver
   DEPENDS:=@TARGET_omap24xx
   KCONFIG:=CONFIG_N810BM
-  FILES:=$(LINUX_DIR)/drivers/cbus/n810bm.$(LINUX_KMOD_SUFFIX)
+  FILES:=$(LINUX_DIR)/drivers/cbus/n810bm.ko
   AUTOLOAD:=$(call AutoLoad,01,n810bm)
 endef