kernel: move regmap bloat out of the kernel image if it is only being used in modules
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34999 3c298f89-4303-0410-b956-a3cf2f4a3e73master
parent
d774dfa969
commit
1691223d48
|
@ -698,12 +698,15 @@ $(eval $(call KernelPackage,acpi-button))
|
|||
define KernelPackage/regmap
|
||||
SUBMENU:=$(OTHER_MENU)
|
||||
TITLE:=Generic register map support
|
||||
DEPENDS:=+kmod-lib-lzo
|
||||
KCONFIG:=CONFIG_REGMAP=y \
|
||||
CONFIG_REGMAP_SPI \
|
||||
CONFIG_REGMAP_I2C
|
||||
FILES:=$(LINUX_DIR)/drivers/base/regmap/regmap-i2c.ko \
|
||||
$(LINUX_DIR)/drivers/base/regmap/regmap-spi.ko
|
||||
AUTOLOAD:=$(call AutoLoad,10,regmap-i2c regmap-spi)
|
||||
FILES:= \
|
||||
$(LINUX_DIR)/drivers/base/regmap/regmap.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)
|
||||
endef
|
||||
|
||||
define KernelPackage/regmap/description
|
||||
|
|
|
@ -0,0 +1,21 @@
|
|||
--- a/drivers/base/regmap/Kconfig
|
||||
+++ b/drivers/base/regmap/Kconfig
|
||||
@@ -3,15 +3,16 @@
|
||||
# subsystems should select the appropriate symbols.
|
||||
|
||||
config REGMAP
|
||||
- default y if (REGMAP_I2C || REGMAP_SPI)
|
||||
select LZO_COMPRESS
|
||||
select LZO_DECOMPRESS
|
||||
- bool
|
||||
+ tristate
|
||||
|
||||
config REGMAP_I2C
|
||||
+ select REGMAP
|
||||
tristate
|
||||
|
||||
config REGMAP_SPI
|
||||
+ select REGMAP
|
||||
tristate
|
||||
|
||||
config REGMAP_IRQ
|
|
@ -0,0 +1,37 @@
|
|||
--- a/drivers/base/regmap/Kconfig
|
||||
+++ b/drivers/base/regmap/Kconfig
|
||||
@@ -3,19 +3,21 @@
|
||||
# subsystems should select the appropriate symbols.
|
||||
|
||||
config REGMAP
|
||||
- default y if (REGMAP_I2C || REGMAP_SPI)
|
||||
select LZO_COMPRESS
|
||||
select LZO_DECOMPRESS
|
||||
select IRQ_DOMAIN if REGMAP_IRQ
|
||||
- bool
|
||||
+ tristate
|
||||
|
||||
config REGMAP_I2C
|
||||
+ select REGMAP
|
||||
tristate
|
||||
|
||||
config REGMAP_SPI
|
||||
+ select REGMAP
|
||||
tristate
|
||||
|
||||
config REGMAP_MMIO
|
||||
+ select REGMAP
|
||||
tristate
|
||||
|
||||
config REGMAP_IRQ
|
||||
--- a/include/linux/regmap.h
|
||||
+++ b/include/linux/regmap.h
|
||||
@@ -43,7 +43,7 @@ struct reg_default {
|
||||
unsigned int def;
|
||||
};
|
||||
|
||||
-#ifdef CONFIG_REGMAP
|
||||
+#if IS_ENABLED(CONFIG_REGMAP)
|
||||
|
||||
enum regmap_endian {
|
||||
/* Unspecified -> 0 -> Backwards compatible default */
|
|
@ -0,0 +1,39 @@
|
|||
--- a/drivers/base/regmap/Kconfig
|
||||
+++ b/drivers/base/regmap/Kconfig
|
||||
@@ -3,20 +3,23 @@
|
||||
# subsystems should select the appropriate symbols.
|
||||
|
||||
config REGMAP
|
||||
- default y if (REGMAP_I2C || REGMAP_SPI || REGMAP_MMIO || REGMAP_IRQ)
|
||||
select LZO_COMPRESS
|
||||
select LZO_DECOMPRESS
|
||||
select IRQ_DOMAIN if REGMAP_IRQ
|
||||
- bool
|
||||
+ tristate
|
||||
|
||||
config REGMAP_I2C
|
||||
+ select REGMAP
|
||||
tristate
|
||||
|
||||
config REGMAP_SPI
|
||||
+ select REGMAP
|
||||
tristate
|
||||
|
||||
config REGMAP_MMIO
|
||||
+ select REGMAP
|
||||
tristate
|
||||
|
||||
config REGMAP_IRQ
|
||||
+ select REGMAP
|
||||
bool
|
||||
--- a/include/linux/regmap.h
|
||||
+++ b/include/linux/regmap.h
|
||||
@@ -43,7 +43,7 @@ struct reg_default {
|
||||
unsigned int def;
|
||||
};
|
||||
|
||||
-#ifdef CONFIG_REGMAP
|
||||
+#if IS_ENABLED(CONFIG_REGMAP)
|
||||
|
||||
enum regmap_endian {
|
||||
/* Unspecified -> 0 -> Backwards compatible default */
|
Loading…
Reference in New Issue