[PATCH RESEND 2/4] regulator: tps65090: add DT support
Stephen Warren
swarren at wwwdotorg.org
Tue Jan 29 02:58:26 EST 2013
On 01/27/2013 01:57 AM, Laxman Dewangan wrote:
> Add DT support for TI PMIC tps65090 regulator driver. The DT of this
> device have node regulator and all regulator's node of this device is
> added under this node.
>
> The device tree binding document has the required information for
> adding this device on DTS file.
>
> Signed-off-by: Laxman Dewangan <ldewangan at nvidia.com>
> Reviewed-by: Mark Brown <broonie at opensource.wolfsonmicro.com>
> diff --git a/drivers/regulator/tps65090-regulator.c b/drivers/regulator/tps65090-regulator.c
> @@ -147,15 +228,20 @@ static int tps65090_regulator_probe(struct platform_device *pdev)
> struct tps65090_regulator_plat_data *tps_pdata;
> struct tps65090_regulator *pmic;
> struct tps65090_platform_data *tps65090_pdata;
> + struct of_regulator_match *tps65090_reg_matches = NULL;
> int num;
> int ret;
>
> dev_dbg(&pdev->dev, "Probing regulator\n");
>
> tps65090_pdata = dev_get_platdata(pdev->dev.parent);
> - if (!tps65090_pdata) {
> + if (!tps65090_pdata && tps65090_mfd->pdata &&
> + tps65090_mfd->dev->of_node)
> + tps65090_pdata = tps65090_parse_dt_reg_data(pdev,
> + &tps65090_reg_matches);
Why check "&& tps65090_mfd->pdata" here; why not always parse DT if
(!tps65090_pdata && tps65090_mfd->dev->of_node)? In that condition, the
parent MFD driver will always have allocated tps65090_mfd->pdata.
> + if (IS_ERR_OR_NULL(tps65090_pdata)) {
> dev_err(&pdev->dev, "Platform data missing\n");
> - return -EINVAL;
> + return (tps65090_pdata) ? PTR_ERR(tps65090_pdata) : -EINVAL;
No need for () there.
More information about the devicetree-discuss
mailing list