diff --git a/package/kernel/modules/other.mk b/package/kernel/modules/other.mk index 2b6b86bfc1..2de923f952 100644 --- a/package/kernel/modules/other.mk +++ b/package/kernel/modules/other.mk @@ -127,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) @@ -552,7 +552,7 @@ $(eval $(call KernelPackage,cs5535-clockevt)) define KernelPackage/cs5535-mfgpt SUBMENU:=$(OTHER_MENU) TITLE:=CS5535/6 Multifunction General Purpose Timer - DEPENDS:=@TARGET_x86 + DEPENDS:=@TARGET_x86 +kmod-cs5535-mfd KCONFIG:=CONFIG_CS5535_MFGPT FILES:=$(LINUX_DIR)/drivers/misc/cs5535-mfgpt.ko AUTOLOAD:=$(call AutoLoad,45,cs5535-mfgpt) @@ -565,6 +565,24 @@ 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 diff --git a/target/linux/generic/patches-2.6.38/260-geode-mfd.patch b/target/linux/generic/patches-2.6.38/260-geode-mfd.patch new file mode 100644 index 0000000000..5f7630ffcc --- /dev/null +++ b/target/linux/generic/patches-2.6.38/260-geode-mfd.patch @@ -0,0 +1,11 @@ +--- linux-2.6.38.8/drivers/gpio/Kconfig.orig 2011-06-02 19:35:11.000000000 -0600 ++++ linux-2.6.38.8/drivers/gpio/Kconfig 2011-06-29 20:05:20.000000000 -0600 +@@ -295,7 +295,7 @@ comment "PCI GPIO expanders:" + + config GPIO_CS5535 + tristate "AMD CS5535/CS5536 GPIO support" +- depends on PCI && X86 && !CS5535_GPIO ++ depends on PCI && X86 && !CS5535_GPIO && MFD_CS5535 + help + The AMD CS5535 and CS5536 southbridges support 28 GPIO pins that + can be used for quite a number of things. The CS5535/6 is found on diff --git a/target/linux/generic/patches-2.6.39/260-geode-mfd.patch b/target/linux/generic/patches-2.6.39/260-geode-mfd.patch new file mode 100644 index 0000000000..f67d1895eb --- /dev/null +++ b/target/linux/generic/patches-2.6.39/260-geode-mfd.patch @@ -0,0 +1,11 @@ +--- linux-2.6.39.2/drivers/gpio/Kconfig.orig 2011-06-23 16:06:00.000000000 -0600 ++++ linux-2.6.39.2/drivers/gpio/Kconfig 2011-06-29 22:43:23.000000000 -0600 +@@ -298,7 +298,7 @@ comment "PCI GPIO expanders:" + + config GPIO_CS5535 + tristate "AMD CS5535/CS5536 GPIO support" +- depends on PCI && X86 && !CS5535_GPIO ++ depends on PCI && X86 && !CS5535_GPIO && MFD_CS5535 + help + The AMD CS5535 and CS5536 southbridges support 28 GPIO pins that + can be used for quite a number of things. The CS5535/6 is found on