summaryrefslogtreecommitdiffstats
path: root/drivers/mfd
diff options
context:
space:
mode:
authorKeerthy <j-keerthy@ti.com>2016-09-19 13:09:05 +0530
committerLee Jones <lee.jones@linaro.org>2016-10-26 10:30:29 +0100
commit4531156db726d27e593d35800d43c74be4e393b9 (patch)
treef52775b7aa8563f16cc65edb2941122aaa866a3d /drivers/mfd
parent77aa99265a8dda5b497ff4ebbcafafa7fa07e87f (diff)
downloadlinux-4531156db726d27e593d35800d43c74be4e393b9.tar.bz2
mfd: tps65218: Use mfd_add_devices instead of of_platform_populate
mfd_add_devices enables parsing device tree nodes without compatibles for regulators and gpio modules. Replace of_platform_populate with mfd_add_devices. mfd_cell currently is populated with regulators, gpio and powerbutton. Signed-off-by: Keerthy <j-keerthy@ti.com> Signed-off-by: Lee Jones <lee.jones@linaro.org>
Diffstat (limited to 'drivers/mfd')
-rw-r--r--drivers/mfd/tps65218.c18
1 files changed, 16 insertions, 2 deletions
diff --git a/drivers/mfd/tps65218.c b/drivers/mfd/tps65218.c
index 9bca1b1b60ce..13834a0d2817 100644
--- a/drivers/mfd/tps65218.c
+++ b/drivers/mfd/tps65218.c
@@ -33,6 +33,18 @@
#define TPS65218_PASSWORD_REGS_UNLOCK 0x7D
+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.
*
@@ -245,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;