diff options
author | Lee Jones <lee.jones@linaro.org> | 2016-11-21 12:59:46 +0000 |
---|---|---|
committer | Lee Jones <lee.jones@linaro.org> | 2016-11-21 12:59:46 +0000 |
commit | 94662d307598137a93ffe1e3996925b22726b7e0 (patch) | |
tree | f09cf67588b8bd0feec276a4cb0b4adb9998585d /drivers/mfd | |
parent | 40a3a0f2ba633fa219f69aef0fd0dcdd6e5756b0 (diff) | |
parent | 2dc4940360d4c0c38aa9275532c7c0d7542f6258 (diff) | |
download | linux-94662d307598137a93ffe1e3996925b22726b7e0.tar.gz linux-94662d307598137a93ffe1e3996925b22726b7e0.tar.bz2 linux-94662d307598137a93ffe1e3996925b22726b7e0.zip |
Merge branches 'ib-mfd-arm-leds-4.10' and 'ib-mfd-gpio-input-regulator-4.10' into ibs-for-mfd-merged
Diffstat (limited to 'drivers/mfd')
-rw-r--r-- | drivers/mfd/tps65218.c | 34 |
1 files changed, 17 insertions, 17 deletions
diff --git a/drivers/mfd/tps65218.c b/drivers/mfd/tps65218.c index ba610adbdbff..13834a0d2817 100644 --- a/drivers/mfd/tps65218.c +++ b/drivers/mfd/tps65218.c @@ -33,19 +33,17 @@ #define TPS65218_PASSWORD_REGS_UNLOCK 0x7D -/** - * tps65218_reg_read: Read a single tps65218 register. - * - * @tps: Device to read from. - * @reg: Register to read. - * @val: Contians the value - */ -int tps65218_reg_read(struct tps65218 *tps, unsigned int reg, - unsigned int *val) -{ - return regmap_read(tps->regmap, reg, val); -} -EXPORT_SYMBOL_GPL(tps65218_reg_read); +static const struct mfd_cell tps65218_cells[] = { + { + .name = "tps65218-pwrbutton", + .of_compatible = "ti,tps65218-pwrbutton", + }, + { + .name = "tps65218-gpio", + .of_compatible = "ti,tps65218-gpio", + }, + { .name = "tps65218-regulator", }, +}; /** * tps65218_reg_write: Write a single tps65218 register. @@ -93,7 +91,7 @@ static int tps65218_update_bits(struct tps65218 *tps, unsigned int reg, int ret; unsigned int data; - ret = tps65218_reg_read(tps, reg, &data); + ret = regmap_read(tps->regmap, reg, &data); if (ret) { dev_err(tps->dev, "Read from reg 0x%x failed\n", reg); return ret; @@ -251,7 +249,7 @@ static int tps65218_probe(struct i2c_client *client, if (ret < 0) return ret; - ret = tps65218_reg_read(tps, TPS65218_REG_CHIPID, &chipid); + ret = regmap_read(tps->regmap, TPS65218_REG_CHIPID, &chipid); if (ret) { dev_err(tps->dev, "Failed to read chipid: %d\n", ret); return ret; @@ -259,8 +257,10 @@ static int tps65218_probe(struct i2c_client *client, tps->rev = chipid & TPS65218_CHIPID_REV_MASK; - ret = of_platform_populate(client->dev.of_node, NULL, NULL, - &client->dev); + ret = mfd_add_devices(tps->dev, PLATFORM_DEVID_AUTO, tps65218_cells, + ARRAY_SIZE(tps65218_cells), NULL, 0, + regmap_irq_get_domain(tps->irq_data)); + if (ret < 0) goto err_irq; |