diff options
| author | Jisheng Zhang <jszhang@kernel.org> | 2025-06-29 17:51:07 +0800 |
|---|---|---|
| committer | Mark Brown <broonie@kernel.org> | 2025-06-30 12:15:40 +0100 |
| commit | 427ceac823e58813b510e585011488f603f0d891 (patch) | |
| tree | 39f44323675de0bf68b2b6363aba097f7d60edb9 | |
| parent | b402dfe84057e376b39c8adadeb65ad51aaffeb4 (diff) | |
regulator: tps6286x-regulator: Enable REGCACHE_MAPLE
Enable regmap cache to reduce i2c transactions and corresponding
interrupts if regulator is accessed frequently.
Signed-off-by: Jisheng Zhang <jszhang@kernel.org>
Link: https://patch.msgid.link/20250629095107.804-1-jszhang@kernel.org
Signed-off-by: Mark Brown <broonie@kernel.org>
| -rw-r--r-- | drivers/regulator/tps6286x-regulator.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/regulator/tps6286x-regulator.c b/drivers/regulator/tps6286x-regulator.c index 75f441f36de7..778f169b0acc 100644 --- a/drivers/regulator/tps6286x-regulator.c +++ b/drivers/regulator/tps6286x-regulator.c @@ -19,13 +19,22 @@ #define TPS6286X_CONTROL_FPWM BIT(4) #define TPS6286X_CONTROL_SWEN BIT(5) +#define TPS6286X_STATUS 0x05 + #define TPS6286X_MIN_MV 400 #define TPS6286X_MAX_MV 1675 #define TPS6286X_STEP_MV 5 +static bool tps6287x_volatile_reg(struct device *dev, unsigned int reg) +{ + return reg == TPS6286X_STATUS; +} + static const struct regmap_config tps6286x_regmap_config = { .reg_bits = 8, .val_bits = 8, + .cache_type = REGCACHE_MAPLE, + .volatile_reg = tps6287x_volatile_reg, }; static int tps6286x_set_mode(struct regulator_dev *rdev, unsigned int mode) |
