|
@@ -106,6 +106,31 @@ int sec_reg_update(struct sec_pmic_dev *sec_pmic, u8 reg, u8 val, u8 mask)
|
|
|
}
|
|
|
EXPORT_SYMBOL_GPL(sec_reg_update);
|
|
|
|
|
|
+static bool s2mps11_volatile(struct device *dev, unsigned int reg)
|
|
|
+{
|
|
|
+ switch (reg) {
|
|
|
+ case S2MPS11_REG_INT1M:
|
|
|
+ case S2MPS11_REG_INT2M:
|
|
|
+ case S2MPS11_REG_INT3M:
|
|
|
+ return false;
|
|
|
+ default:
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+static bool s5m8763_volatile(struct device *dev, unsigned int reg)
|
|
|
+{
|
|
|
+ switch (reg) {
|
|
|
+ case S5M8763_REG_IRQM1:
|
|
|
+ case S5M8763_REG_IRQM2:
|
|
|
+ case S5M8763_REG_IRQM3:
|
|
|
+ case S5M8763_REG_IRQM4:
|
|
|
+ return false;
|
|
|
+ default:
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
static struct regmap_config sec_regmap_config = {
|
|
|
.reg_bits = 8,
|
|
|
.val_bits = 8,
|
|
@@ -116,6 +141,8 @@ static struct regmap_config s2mps11_regmap_config = {
|
|
|
.val_bits = 8,
|
|
|
|
|
|
.max_register = S2MPS11_REG_L38CTRL,
|
|
|
+ .volatile_reg = s2mps11_volatile,
|
|
|
+ .cache_type = REGCACHE_FLAT,
|
|
|
};
|
|
|
|
|
|
static struct regmap_config s5m8763_regmap_config = {
|
|
@@ -123,6 +150,8 @@ static struct regmap_config s5m8763_regmap_config = {
|
|
|
.val_bits = 8,
|
|
|
|
|
|
.max_register = S5M8763_REG_LBCNFG2,
|
|
|
+ .volatile_reg = s5m8763_volatile,
|
|
|
+ .cache_type = REGCACHE_FLAT,
|
|
|
};
|
|
|
|
|
|
static struct regmap_config s5m8767_regmap_config = {
|
|
@@ -130,6 +159,8 @@ static struct regmap_config s5m8767_regmap_config = {
|
|
|
.val_bits = 8,
|
|
|
|
|
|
.max_register = S5M8767_REG_LDO28CTRL,
|
|
|
+ .volatile_reg = s2mps11_volatile,
|
|
|
+ .cache_type = REGCACHE_FLAT,
|
|
|
};
|
|
|
|
|
|
#ifdef CONFIG_OF
|