diff options
author | Jisheng Zhang <Jisheng.Zhang@synaptics.com> | 2019-08-27 08:47:30 +0000 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2019-08-27 20:46:12 +0100 |
commit | 67a7b05b297eba72ee4e0655966ae7cc769d3a26 (patch) | |
tree | ec5c8636d3826e41648374ba78c6cb8ae123255a /drivers/regulator | |
parent | 90de3ae410aaaa63ee7518fac3dabd38f15972c4 (diff) | |
download | linux-67a7b05b297eba72ee4e0655966ae7cc769d3a26.tar.gz linux-67a7b05b297eba72ee4e0655966ae7cc769d3a26.tar.bz2 linux-67a7b05b297eba72ee4e0655966ae7cc769d3a26.zip |
regulator: sy8824x: add SY8824E support
The only difference between SY8824E and SY8824C/D is the vsel_min.
Signed-off-by: Jisheng Zhang <Jisheng.Zhang@synaptics.com>
Link: https://lore.kernel.org/r/20190827163537.52023c4e@xhacker.debian
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'drivers/regulator')
-rw-r--r-- | drivers/regulator/Kconfig | 2 | ||||
-rw-r--r-- | drivers/regulator/sy8824x.c | 17 |
2 files changed, 16 insertions, 3 deletions
diff --git a/drivers/regulator/Kconfig b/drivers/regulator/Kconfig index e2bf936d0be6..2e50423b3c08 100644 --- a/drivers/regulator/Kconfig +++ b/drivers/regulator/Kconfig @@ -908,7 +908,7 @@ config REGULATOR_SY8106A This driver supports SY8106A single output regulator. config REGULATOR_SY8824X - tristate "Silergy SY8824C regulator" + tristate "Silergy SY8824C/SY8824E regulator" depends on I2C && (OF || COMPILE_TEST) select REGMAP_I2C help diff --git a/drivers/regulator/sy8824x.c b/drivers/regulator/sy8824x.c index 2d8a61ca6643..b1438d94eee2 100644 --- a/drivers/regulator/sy8824x.c +++ b/drivers/regulator/sy8824x.c @@ -1,6 +1,6 @@ // SPDX-License-Identifier: GPL-2.0 /* - * SY8824C regulator driver + * SY8824C/SY8824E regulator driver * * Copyright (C) 2019 Synaptics Incorporated * @@ -162,11 +162,24 @@ static const struct sy8824_config sy8824c_cfg = { .vsel_count = 64, }; +static const struct sy8824_config sy8824e_cfg = { + .vol_reg = 0x00, + .mode_reg = 0x00, + .enable_reg = 0x00, + .vsel_min = 700000, + .vsel_step = 12500, + .vsel_count = 64, +}; + static const struct of_device_id sy8824_dt_ids[] = { { .compatible = "silergy,sy8824c", .data = &sy8824c_cfg }, + { + .compatible = "silergy,sy8824e", + .data = &sy8824e_cfg + }, { } }; MODULE_DEVICE_TABLE(of, sy8824_dt_ids); @@ -188,5 +201,5 @@ static struct i2c_driver sy8824_regulator_driver = { module_i2c_driver(sy8824_regulator_driver); MODULE_AUTHOR("Jisheng Zhang <jszhang@kernel.org>"); -MODULE_DESCRIPTION("SY8824C regulator driver"); +MODULE_DESCRIPTION("SY8824C/SY8824E regulator driver"); MODULE_LICENSE("GPL v2"); |