e67f0ebac2
REGMAP_MMIO is a hidden symbol, so it cannot be directly selected. If nothing selects it, it will fail the build with: ERROR: module '/store/buildbot/slave/slave/rb532/build/build_dir/target-mipsel_mips32_musl-1.1.10/linux-rb532/linux-3.18.19/drivers/base/regmap/regmap-mmio.ko' is missing. make[2]: *** [/store/buildbot/slave/slave/rb532/build/bin/rb532/packages/base/kmod-regmap_3.18.19-1_rb532.ipk] Error 1 Fix this by adding a description to allow selecting it manually. Fixes: r46451 ("kmod-regmap: enable MMIO support") Signed-off-by: Jonas Gorski <jogo@openwrt.org> SVN-Revision: 46485
81 lines
1.9 KiB
Diff
81 lines
1.9 KiB
Diff
--- a/drivers/base/regmap/Kconfig
|
|
+++ b/drivers/base/regmap/Kconfig
|
|
@@ -3,26 +3,31 @@
|
|
# subsystems should select the appropriate symbols.
|
|
|
|
config REGMAP
|
|
- default y if (REGMAP_I2C || REGMAP_SPI || REGMAP_SPMI || REGMAP_MMIO || REGMAP_IRQ)
|
|
select LZO_COMPRESS
|
|
select LZO_DECOMPRESS
|
|
select IRQ_DOMAIN if REGMAP_IRQ
|
|
- bool
|
|
+ tristate "Regmap"
|
|
|
|
config REGMAP_I2C
|
|
- tristate
|
|
+ tristate "Regmap I2C"
|
|
+ select REGMAP
|
|
depends on I2C
|
|
|
|
config REGMAP_SPI
|
|
- tristate
|
|
+ tristate "Regmap SPI"
|
|
+ select REGMAP
|
|
+ depends on SPI_MASTER
|
|
depends on SPI
|
|
|
|
config REGMAP_SPMI
|
|
+ select REGMAP
|
|
tristate
|
|
depends on SPMI
|
|
|
|
config REGMAP_MMIO
|
|
- tristate
|
|
+ tristate "Regmap MMIO"
|
|
+ select REGMAP
|
|
|
|
config REGMAP_IRQ
|
|
+ select REGMAP
|
|
bool
|
|
--- a/include/linux/regmap.h
|
|
+++ b/include/linux/regmap.h
|
|
@@ -49,7 +49,7 @@ struct reg_default {
|
|
unsigned int def;
|
|
};
|
|
|
|
-#ifdef CONFIG_REGMAP
|
|
+#if IS_ENABLED(CONFIG_REGMAP)
|
|
|
|
enum regmap_endian {
|
|
/* Unspecified -> 0 -> Backwards compatible default */
|
|
--- a/drivers/base/regmap/Makefile
|
|
+++ b/drivers/base/regmap/Makefile
|
|
@@ -1,6 +1,8 @@
|
|
-obj-$(CONFIG_REGMAP) += regmap.o regcache.o
|
|
-obj-$(CONFIG_REGMAP) += regcache-rbtree.o regcache-lzo.o regcache-flat.o
|
|
-obj-$(CONFIG_DEBUG_FS) += regmap-debugfs.o
|
|
+regmap-core-objs = regmap.o regcache.o regcache-rbtree.o regcache-lzo.o regcache-flat.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_SPMI) += regmap-spmi.o
|
|
--- a/drivers/base/regmap/regmap.c
|
|
+++ b/drivers/base/regmap/regmap.c
|
|
@@ -13,6 +13,7 @@
|
|
#include <linux/device.h>
|
|
#include <linux/slab.h>
|
|
#include <linux/export.h>
|
|
+#include <linux/module.h>
|
|
#include <linux/mutex.h>
|
|
#include <linux/err.h>
|
|
#include <linux/of.h>
|
|
@@ -2630,3 +2631,5 @@ static int __init regmap_initcall(void)
|
|
return 0;
|
|
}
|
|
postcore_initcall(regmap_initcall);
|
|
+
|
|
+MODULE_LICENSE("GPL");
|