Skip to content

Commit 63be976

Browse files
jeffchang-richtekbroonie
authored andcommitted
regulator: rt6160: Add rt6166 vout min_uV setting for compatible
1. remove unintentional GPL change 2. using switch case for Device ID probe check. Signed-off-by: Jeff Chang <[email protected]> Link: https://patch.msgid.link/[email protected] Signed-off-by: Mark Brown <[email protected]>
1 parent 43728a6 commit 63be976

File tree

1 file changed

+17
-2
lines changed

1 file changed

+17
-2
lines changed

drivers/regulator/rt6160-regulator.c

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,11 @@
3131
#define RT6160_PGSTAT_MASK BIT(0)
3232

3333
#define RT6160_VENDOR_ID 0xA0
34+
#define RT6166_VENDOR_ID 0xB0
3435
#define RT6160_VOUT_MINUV 2025000
3536
#define RT6160_VOUT_MAXUV 5200000
37+
#define RT6166_VOUT_MINUV 1800000
38+
#define RT6166_VOUD_MAXUV 4950000
3639
#define RT6160_VOUT_STPUV 25000
3740
#define RT6160_N_VOUTS ((RT6160_VOUT_MAXUV - RT6160_VOUT_MINUV) / RT6160_VOUT_STPUV + 1)
3841

@@ -43,6 +46,7 @@ struct rt6160_priv {
4346
struct gpio_desc *enable_gpio;
4447
struct regmap *regmap;
4548
bool enable_state;
49+
uint8_t devid;
4650
};
4751

4852
static const unsigned int rt6160_ramp_tables[] = {
@@ -260,15 +264,26 @@ static int rt6160_probe(struct i2c_client *i2c)
260264
if (ret)
261265
return ret;
262266

263-
if ((devid & RT6160_VID_MASK) != RT6160_VENDOR_ID) {
267+
devid = devid & RT6160_VID_MASK;
268+
269+
switch (devid) {
270+
case RT6166_VENDOR_ID:
271+
case RT6160_VENDOR_ID:
272+
break;
273+
default:
264274
dev_err(&i2c->dev, "VID not correct [0x%02x]\n", devid);
265275
return -ENODEV;
266276
}
267277

278+
priv->devid = devid;
279+
268280
priv->desc.name = "rt6160-buckboost";
269281
priv->desc.type = REGULATOR_VOLTAGE;
270282
priv->desc.owner = THIS_MODULE;
271-
priv->desc.min_uV = RT6160_VOUT_MINUV;
283+
if (priv->devid == RT6166_VENDOR_ID)
284+
priv->desc.min_uV = RT6166_VOUT_MINUV;
285+
else
286+
priv->desc.min_uV = RT6160_VOUT_MINUV;
272287
priv->desc.uV_step = RT6160_VOUT_STPUV;
273288
if (vsel_active_low)
274289
priv->desc.vsel_reg = RT6160_REG_VSELL;

0 commit comments

Comments
 (0)