On Wed, Apr 27, 2011 at 10:39:50AM +0100, Graeme Gregory wrote:

> +     switch (info->flags) {
> +     case 0:
> +             if (index == 0)
> +                     voltage = 0;
> +             else if (index < 58)
> +                     voltage = (600000 + (12500 * (index - 1)));
> +             else if (index == 58)
> +                     voltage = 1350 * 1000;
> +             else if (index == 59)
> +                     voltage = 1500 * 1000;
> +             else if (index == 60)
> +                     voltage = 1800 * 1000;
> +             else if (index == 61)
> +                     voltage = 1900 * 1000;
> +             else if (index == 62)
> +                     voltage = 2100 * 1000;

This reads like a switch statement with a default: case to me.

> +static int twl6030dcdc_get_voltage(struct regulator_dev *rdev)
> +{
> +     struct twlreg_info      *info = rdev_get_drvdata(rdev);
> +     int             vsel = twlreg_read(info, TWL_MODULE_PM_RECEIVER,
> +                                                     VREG_VOLTAGE_DCDC);
> +     int voltage = 0;
> +
> +     if (vsel < 0)
> +             return vsel;
> +     switch (info->flags) {

This should just call list_voltage() to do the mapping into a voltage or
better yet should be converted into a get_voltage_sel() which will mean
that the core can call list_voltage() for you.  Either way you save
duplicating the code to map from selector to voltage.
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to