On Tue, 28 Jun 2016, Keerthy wrote: > 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@xxxxxx> > --- > > Changes in v4: > > * Regrouped the mfd cells better. > > drivers/mfd/tps65218.c | 18 ++++++++++++++++-- > 1 file changed, 16 insertions(+), 2 deletions(-) For my own reference: Acked-by: Lee Jones <lee.jones@xxxxxxxxxx> > diff --git a/drivers/mfd/tps65218.c b/drivers/mfd/tps65218.c > index f20a531..f13c8d9 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. > * > @@ -236,8 +248,10 @@ static int tps65218_probe(struct i2c_client *client, > if (ret < 0) > return ret; > > - 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; > -- Lee Jones Linaro STMicroelectronics Landing Team Lead Linaro.org │ Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html