# subsystems should select the appropriate symbols.
config REGMAP
-- default y if (REGMAP_I2C || REGMAP_SPI || REGMAP_SPMI || REGMAP_W1 || REGMAP_AC97 || REGMAP_MMIO || REGMAP_IRQ)
+- default y if (REGMAP_I2C || REGMAP_SPI || REGMAP_SPMI || REGMAP_W1 || REGMAP_AC97 || REGMAP_MMIO || REGMAP_IRQ || REGMAP_SCCB || REGMAP_I3C)
select IRQ_DOMAIN if REGMAP_IRQ
- bool
+ tristate
config REGCACHE_COMPRESSED
select LZO_COMPRESS
-@@ -18,6 +17,7 @@ config REGMAP_AC97
+@@ -18,38 +17,49 @@ config REGMAP_AC97
config REGMAP_I2C
tristate
depends on I2C
config REGMAP_SLIMBUS
-@@ -26,20 +26,26 @@ config REGMAP_SLIMBUS
+ tristate
++ select REGMAP
+ depends on SLIMBUS
config REGMAP_SPI
tristate
depends on SPI
config REGMAP_SPMI
-+ select REGMAP
tristate
++ select REGMAP
depends on SPMI
config REGMAP_W1
-+ select REGMAP
tristate
++ select REGMAP
depends on W1
config REGMAP_MMIO
+ select REGMAP
config REGMAP_IRQ
-+ select REGMAP
bool
++ select REGMAP
config REGMAP_SOUNDWIRE
+ tristate
++ select REGMAP
+ depends on SOUNDWIRE
+
+ config REGMAP_SCCB
+ tristate
++ select REGMAP
+ depends on I2C
+
+ config REGMAP_I3C
+ tristate
++ select REGMAP
+ depends on I3C
--- a/drivers/base/regmap/Makefile
+++ b/drivers/base/regmap/Makefile
@@ -2,10 +2,14 @@
obj-$(CONFIG_REGMAP_SLIMBUS) += regmap-slimbus.o
--- a/drivers/base/regmap/regmap.c
+++ b/drivers/base/regmap/regmap.c
-@@ -13,6 +13,7 @@
+@@ -9,6 +9,7 @@
#include <linux/device.h>
#include <linux/slab.h>
#include <linux/export.h>
#include <linux/mutex.h>
#include <linux/err.h>
#include <linux/of.h>
-@@ -3039,3 +3040,5 @@ static int __init regmap_initcall(void)
+@@ -3124,3 +3125,5 @@ static int __init regmap_initcall(void)
return 0;
}
postcore_initcall(regmap_initcall);
+MODULE_LICENSE("GPL");
--- a/include/linux/regmap.h
+++ b/include/linux/regmap.h
-@@ -187,7 +187,7 @@ struct reg_sequence {
+@@ -185,7 +185,7 @@ struct reg_sequence {
pollret ?: ((cond) ? 0 : -ETIMEDOUT); \
})