From: Stephen Warren <swarren@wwwdotorg.org>
To: Laxman Dewangan <ldewangan@nvidia.com>
Cc: broonie@opensource.wolfsonmicro.com, sameo@linux.intel.com,
lrg@ti.com, swarren@wwwdotorg.com, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] regulator: tps6586x: register regulator even if no init data
Date: Tue, 28 Aug 2012 07:18:06 -0700 [thread overview]
Message-ID: <503CD31E.6050207@wwwdotorg.org> (raw)
In-Reply-To: <1346149767-31602-1-git-send-email-ldewangan@nvidia.com>
On 08/28/2012 03:29 AM, Laxman Dewangan wrote:
> Register all TPS6586x regulators even if there is no regulator
> init data for platform i.e. without any user-supplied constraints.
> diff --git a/drivers/mfd/tps6586x.c b/drivers/mfd/tps6586x.c
> @@ -396,19 +396,19 @@ static struct tps6586x_platform_data *tps6586x_parse_dt(struct i2c_client *clien
> for (i = 0, j = 0; i < num && j < count; i++) {
> struct regulator_init_data *reg_idata;
>
> - if (!tps6586x_matches[i].init_data)
> - continue;
> -
> reg_idata = tps6586x_matches[i].init_data;
> devs[j].name = "tps6586x-regulator";
> devs[j].platform_data = tps6586x_matches[i].init_data;
> devs[j].id = (int)tps6586x_matches[i].driver_data;
> - if (devs[j].id == TPS6586X_ID_SYS)
> - sys_rail_name = reg_idata->constraints.name;
>
> - if ((devs[j].id == TPS6586X_ID_LDO_5) ||
> - (devs[j].id == TPS6586X_ID_LDO_RTC))
> - reg_idata->supply_regulator = sys_rail_name;
> + if (tps6586x_matches[i].init_data) {
The variable that's being used inside this block is reg_idata.
Admittedly the value of that variable is tps6586x_matches[i].init_data,
but I think it'd be much cleaner if the if statement checked reg_idata
directly; that way, someone reading the code wouldn't have to look above
to find out that reg_idata and tps6586x_matches[i].init_data are related.
> + if (devs[j].id == TPS6586X_ID_SYS)
> + sys_rail_name = reg_idata->constraints.name;
In the MAX8907 patch this attempts to duplicate; if there is no init
data where the user gives an explicit name, the name from the descriptor
is used:
if (idata && idata->constraints.name)
mbatt_rail_name = idata->constraints.name;
else
mbatt_rail_name = pmic->desc[i].name;
Shouldn't that same algorithm be used here?
> diff --git a/drivers/regulator/tps6586x-regulator.c b/drivers/regulator/tps6586x-regulator.c
> @@ -332,6 +332,9 @@ static int __devinit tps6586x_regulator_probe(struct platform_device *pdev)
>
> platform_set_drvdata(pdev, rdev);
>
> + if (!pdev->dev.platform_data)
> + return 0;
> +
> return tps6586x_regulator_set_slew_rate(pdev);
> }
Sorry, I don't immediately see why that's related?
next prev parent reply other threads:[~2012-08-28 14:18 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-08-28 10:29 [PATCH] regulator: tps6586x: register regulator even if no init data Laxman Dewangan
2012-08-28 10:29 ` [PATCH] regulator: tps65910: " Laxman Dewangan
2012-08-28 14:18 ` Stephen Warren [this message]
2012-08-28 14:56 ` [PATCH] regulator: tps6586x: " Laxman Dewangan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=503CD31E.6050207@wwwdotorg.org \
--to=swarren@wwwdotorg.org \
--cc=broonie@opensource.wolfsonmicro.com \
--cc=ldewangan@nvidia.com \
--cc=linux-kernel@vger.kernel.org \
--cc=lrg@ti.com \
--cc=sameo@linux.intel.com \
--cc=swarren@wwwdotorg.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.