All of lore.kernel.org
 help / color / mirror / Atom feed
From: broonie@opensource.wolfsonmicro.com (Mark Brown)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 1/3] ISL6271A voltage regulator support.
Date: Sat, 12 Jun 2010 18:21:14 +0100	[thread overview]
Message-ID: <20100612172114.GA20610@opensource.wolfsonmicro.com> (raw)
In-Reply-To: <1276346679-2893-1-git-send-email-marek.vasut@gmail.com>

On Sat, Jun 12, 2010 at 02:44:37PM +0200, Marek Vasut wrote:
> This device is very simple, it supports only one LDO. This single LDO is
> programmed over I2C to 16 possible voltages.

Google tells me that the device has three regulators on it - two LDOs
and one DCDC buck convertor:

   http://www.intersil.com/products/deviceinfo.asp?pn=ISL6271A

While the LDOs look like they have no software control it'd be best to
provide hookup for them, even if that's just a case of instantiating the
appropriate fixed voltage regulators.

> Signed-off-by: Marek Vasut <marek.vasut@gmail.com>

> +/* Supported voltage values for regulators */
> +static const u32 core_buck_table[] = {
> +	 850000,  900000,  950000, 1000000,
> +	1050000, 1100000, 1150000, 1200000,
> +	1250000, 1300000, 1350000, 1400000,
> +	1450000, 1500000, 1550000, 1600000,
> +};

This looks like it could be replaced with a simple function rather than
a lookup table which would simplify the code.

Also, are you sure this is a buck?  That's a specific technical term
usually only applied to DCDC regulators - LDOs are a different type of
regulator 

> +static int __devinit isl6271a_probe(struct i2c_client *client,
> +				     const struct i2c_device_id *id)
> +{
> +	struct regulator_init_data *init_data	= client->dev.platform_data;
> +	struct isl_pmic *pmic;
> +	int err;
> +
> +	if (!i2c_check_functionality(client->adapter, I2C_FUNC_SMBUS_BYTE_DATA))
> +		return -EIO;
> +
> +	if (!init_data)
> +		return -EIO;

It'd be better to print an error message here so users know what's going
on when the device fails to appear.

  parent reply	other threads:[~2010-06-12 17:21 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-06-12 12:44 [PATCH 1/3] ISL6271A voltage regulator support Marek Vasut
2010-06-12 12:44 ` [PATCH 2/3] ARM/scoop: Add CPR register bit definitions Marek Vasut
2010-06-12 12:44 ` [PATCH 3/3] pxa/spitz: Rework spitz Marek Vasut
2010-06-12 17:21 ` Mark Brown [this message]
2010-06-13 10:30   ` [PATCH 1/3] ISL6271A voltage regulator support Marek Vasut
2010-06-13 14:00     ` Mark Brown

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=20100612172114.GA20610@opensource.wolfsonmicro.com \
    --to=broonie@opensource.wolfsonmicro.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /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.