summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorblogic <blogic@3c298f89-4303-0410-b956-a3cf2f4a3e73>2013-01-05 00:20:05 +0000
committerblogic <blogic@3c298f89-4303-0410-b956-a3cf2f4a3e73>2013-01-05 00:20:05 +0000
commit6408679755dc3f52868384567d51bd9ae0d63389 (patch)
tree93782db841178698bcd906f92b7fa52107b672b1
parentd1fbf6e81007ddae8ef6829de4916179cbc2450c (diff)
[kernel] fix regmap debloat patch
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@35015 3c298f89-4303-0410-b956-a3cf2f4a3e73
-rw-r--r--package/kernel/modules/other.mk11
-rw-r--r--target/linux/generic/patches-3.3/270-regmap_dynamic.patch33
-rw-r--r--target/linux/generic/patches-3.7/259-regmap_dynamic.patch38
3 files changed, 63 insertions, 19 deletions
diff --git a/package/kernel/modules/other.mk b/package/kernel/modules/other.mk
index 2374d191a9..1c8a3dcfef 100644
--- a/package/kernel/modules/other.mk
+++ b/package/kernel/modules/other.mk
@@ -698,15 +698,16 @@ $(eval $(call KernelPackage,acpi-button))
define KernelPackage/regmap
SUBMENU:=$(OTHER_MENU)
TITLE:=Generic register map support
- DEPENDS:=+kmod-lib-lzo
- KCONFIG:=CONFIG_REGMAP=y \
+ DEPENDS:=+kmod-lib-lzo +kmod-i2c-core
+ KCONFIG:=CONFIG_REGMAP \
CONFIG_REGMAP_SPI \
- CONFIG_REGMAP_I2C
+ CONFIG_REGMAP_I2C \
+ CONFIG_SPI=y
FILES:= \
- $(LINUX_DIR)/drivers/base/regmap/regmap.ko \
+ $(LINUX_DIR)/drivers/base/regmap/regmap-core.ko \
$(LINUX_DIR)/drivers/base/regmap/regmap-i2c.ko \
$(LINUX_DIR)/drivers/base/regmap/regmap-spi.ko
- AUTOLOAD:=$(call AutoLoad,10,regmap regmap-i2c regmap-spi)
+ AUTOLOAD:=$(call AutoLoad,10,regmap-core regmap-i2c regmap-spi)
endef
define KernelPackage/regmap/description
diff --git a/target/linux/generic/patches-3.3/270-regmap_dynamic.patch b/target/linux/generic/patches-3.3/270-regmap_dynamic.patch
index eaa6dbf367..a583cb4c40 100644
--- a/target/linux/generic/patches-3.3/270-regmap_dynamic.patch
+++ b/target/linux/generic/patches-3.3/270-regmap_dynamic.patch
@@ -1,6 +1,8 @@
---- a/drivers/base/regmap/Kconfig
-+++ b/drivers/base/regmap/Kconfig
-@@ -3,15 +3,16 @@
+Index: linux-3.3.8/drivers/base/regmap/Kconfig
+===================================================================
+--- linux-3.3.8.orig/drivers/base/regmap/Kconfig 2013-01-04 23:40:36.288481779 +0100
++++ linux-3.3.8/drivers/base/regmap/Kconfig 2013-01-04 23:40:39.760481927 +0100
+@@ -3,16 +3,17 @@
# subsystems should select the appropriate symbols.
config REGMAP
@@ -8,14 +10,33 @@
select LZO_COMPRESS
select LZO_DECOMPRESS
- bool
-+ tristate
++ tristate "Regmap"
config REGMAP_I2C
+- tristate
+ select REGMAP
- tristate
++ tristate "Regmap I2C"
config REGMAP_SPI
+- tristate
+ select REGMAP
- tristate
++ tristate "Regmap SPI"
config REGMAP_IRQ
+ bool
+Index: linux-3.3.8/drivers/base/regmap/Makefile
+===================================================================
+--- linux-3.3.8.orig/drivers/base/regmap/Makefile 2012-06-01 09:16:13.000000000 +0200
++++ linux-3.3.8/drivers/base/regmap/Makefile 2013-01-05 00:20:31.236584162 +0100
+@@ -1,6 +1,8 @@
+-obj-$(CONFIG_REGMAP) += regmap.o regcache.o
+-obj-$(CONFIG_REGMAP) += regcache-rbtree.o regcache-lzo.o
+-obj-$(CONFIG_DEBUG_FS) += regmap-debugfs.o
++regmap-core-objs = regmap.o regcache.o regcache-rbtree.o regcache-lzo.o
++ifdef CONFIG_DEBUGFS
++regmap-core-objs += regmap-debugfs.o
++endif
++obj-$(CONFIG_REGMAP) += regmap-core.o
+ obj-$(CONFIG_REGMAP_I2C) += regmap-i2c.o
+ obj-$(CONFIG_REGMAP_SPI) += regmap-spi.o
+ obj-$(CONFIG_REGMAP_IRQ) += regmap-irq.o
diff --git a/target/linux/generic/patches-3.7/259-regmap_dynamic.patch b/target/linux/generic/patches-3.7/259-regmap_dynamic.patch
index 3c30652017..df75b4ee21 100644
--- a/target/linux/generic/patches-3.7/259-regmap_dynamic.patch
+++ b/target/linux/generic/patches-3.7/259-regmap_dynamic.patch
@@ -1,5 +1,7 @@
---- a/drivers/base/regmap/Kconfig
-+++ b/drivers/base/regmap/Kconfig
+Index: linux-3.7.1/drivers/base/regmap/Kconfig
+===================================================================
+--- linux-3.7.1.orig/drivers/base/regmap/Kconfig 2012-12-17 20:14:54.000000000 +0100
++++ linux-3.7.1/drivers/base/regmap/Kconfig 2013-01-05 01:07:25.712704474 +0100
@@ -3,20 +3,23 @@
# subsystems should select the appropriate symbols.
@@ -9,15 +11,17 @@
select LZO_DECOMPRESS
select IRQ_DOMAIN if REGMAP_IRQ
- bool
-+ tristate
++ tristate "Regmap"
config REGMAP_I2C
+- tristate
+ select REGMAP
- tristate
++ tristate "Regmap I2C"
config REGMAP_SPI
+- tristate
+ select REGMAP
- tristate
++ tristate "Regmap SPI"
config REGMAP_MMIO
+ select REGMAP
@@ -26,9 +30,11 @@
config REGMAP_IRQ
+ select REGMAP
bool
---- a/include/linux/regmap.h
-+++ b/include/linux/regmap.h
-@@ -43,7 +43,7 @@ struct reg_default {
+Index: linux-3.7.1/include/linux/regmap.h
+===================================================================
+--- linux-3.7.1.orig/include/linux/regmap.h 2012-12-17 20:14:54.000000000 +0100
++++ linux-3.7.1/include/linux/regmap.h 2013-01-05 01:03:32.012694484 +0100
+@@ -43,7 +43,7 @@
unsigned int def;
};
@@ -37,3 +43,19 @@
enum regmap_endian {
/* Unspecified -> 0 -> Backwards compatible default */
+Index: linux-3.7.1/drivers/base/regmap/Makefile
+===================================================================
+--- linux-3.7.1.orig/drivers/base/regmap/Makefile 2012-12-17 20:14:54.000000000 +0100
++++ linux-3.7.1/drivers/base/regmap/Makefile 2013-01-05 01:08:16.592706650 +0100
+@@ -1,6 +1,8 @@
+-obj-$(CONFIG_REGMAP) += regmap.o regcache.o
+-obj-$(CONFIG_REGMAP) += regcache-rbtree.o regcache-lzo.o
+-obj-$(CONFIG_DEBUG_FS) += regmap-debugfs.o
++regmap-core-objs = regmap.o regcache.o regcache-rbtree.o regcache-lzo.o
++ifdef CONFIG_DEBUG_FS
++regmap-core-objs += regmap-debugfs.o
++endif
++obj-$(CONFIG_REGMAP) += regmap-core.o
+ obj-$(CONFIG_REGMAP_I2C) += regmap-i2c.o
+ obj-$(CONFIG_REGMAP_SPI) += regmap-spi.o
+ obj-$(CONFIG_REGMAP_MMIO) += regmap-mmio.o