[PATCHv9 3/5] arm: omap3: add common twl configurations for vdd1 and vdd2

Tero Kristo t-kristo at ti.com
Fri Feb 17 06:06:54 EST 2012


On Thu, 2012-02-16 at 12:23 -0600, Menon, Nishanth wrote:
> On Thu, Feb 16, 2012 at 04:27, Tero Kristo <t-kristo at ti.com> wrote:
> > VDD1 and VDD2 are the core voltage regulators on OMAP3. VDD1 is used
> > to control MPU/IVA voltage, and VDD2 is used for CORE. These regulators
> > are needed by DVFS.
> >
> > Voltage ranges for VDD1 and VDD2 are taken from twl4030/twl5030 data manual.
> 
> Please provide documentation version referenced, else we will loose
> track of details at a later point of time.

How should this be marked down? There are too many naming conventions
for the TI docs, and I couldn't find any example from kernel commit logs
for this. Personally I was using twl5030 es1.2 DM rev E / twl4030 es3.1
DM rev L. Or should the literature code be used? Or is there also some
numerical version info available somewhere?

> 
> Also should we rename VDD1 with vdd_mpu_iva and VDD2 as vdd_core to be readable?

This can be changed if needed, it is just a name.
regulator/twl-regulator.c is using vdd1 / vdd2 though, and also
pmic_data struct uses these. All the other regulators use Vxx type
naming also. These are the names I see on my board through
sys/class/regulator:

dummy
VDD1
VDD2
VMMC1
VDAC
VDVI
VSIM


-Tero

> 
> Regards,
> Nishanth Menon
> >
> > Signed-off-by: Tero Kristo <t-kristo at ti.com>
> > ---
> >  arch/arm/mach-omap2/twl-common.c |   36 ++++++++++++++++++++++++++++++++++++
> >  1 files changed, 36 insertions(+), 0 deletions(-)
> >
> > diff --git a/arch/arm/mach-omap2/twl-common.c b/arch/arm/mach-omap2/twl-common.c
> > index 10b20c6..5f62e51 100644
> > --- a/arch/arm/mach-omap2/twl-common.c
> > +++ b/arch/arm/mach-omap2/twl-common.c
> > @@ -126,6 +126,38 @@ static struct regulator_init_data omap3_vpll2_idata = {
> >        .consumer_supplies              = omap3_vpll2_supplies,
> >  };
> >
> > +static struct regulator_consumer_supply omap3_vdd1_supply[] = {
> > +       REGULATOR_SUPPLY("vcc", "mpu.0"),
> > +};
> > +
> > +static struct regulator_consumer_supply omap3_vdd2_supply[] = {
> > +       REGULATOR_SUPPLY("vcc", "l3_main.0"),
> > +};
> > +
> > +static struct regulator_init_data omap3_vdd1 = {
> > +       .constraints = {
> > +               .name                   = "VDD1",
> > +               .min_uV                 = 600000,
> > +               .max_uV                 = 1450000,
> > +               .valid_modes_mask       = REGULATOR_MODE_NORMAL,
> > +               .valid_ops_mask         = REGULATOR_CHANGE_VOLTAGE,
> > +       },
> > +       .num_consumer_supplies          = ARRAY_SIZE(omap3_vdd1_supply),
> > +       .consumer_supplies              = omap3_vdd1_supply,
> > +};
> > +
> > +static struct regulator_init_data omap3_vdd2 = {
> > +       .constraints = {
> > +               .name                   = "VDD2",
> > +               .min_uV                 = 600000,
> > +               .max_uV                 = 1450000,
> > +               .valid_modes_mask       = REGULATOR_MODE_NORMAL,
> > +               .valid_ops_mask         = REGULATOR_CHANGE_VOLTAGE,
> > +       },
> > +       .num_consumer_supplies          = ARRAY_SIZE(omap3_vdd2_supply),
> > +       .consumer_supplies              = omap3_vdd2_supply,
> > +};
> > +
> >  void __init omap3_pmic_get_config(struct twl4030_platform_data *pmic_data,
> >                                  u32 pdata_flags, u32 regulators_flags)
> >  {
> > @@ -133,6 +165,10 @@ void __init omap3_pmic_get_config(struct twl4030_platform_data *pmic_data,
> >                pmic_data->irq_base = TWL4030_IRQ_BASE;
> >        if (!pmic_data->irq_end)
> >                pmic_data->irq_end = TWL4030_IRQ_END;
> > +       if (!pmic_data->vdd1)
> > +               pmic_data->vdd1 = &omap3_vdd1;
> > +       if (!pmic_data->vdd2)
> > +               pmic_data->vdd2 = &omap3_vdd2;
> >
> >        /* Common platform data configurations */
> >        if (pdata_flags & TWL_COMMON_PDATA_USB && !pmic_data->usb)
> > --
> > 1.7.4.1
> >
> >
> > _______________________________________________
> > linux-arm-kernel mailing list
> > linux-arm-kernel at lists.infradead.org
> > http://lists.infradead.org/mailman/listinfo/linux-arm-kernel





More information about the linux-arm-kernel mailing list