Re: [PATCH V4] OMAP3: PM: Set/clear T2 bit for Smartreflex on TWL

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

On Tue, Feb 15, 2011 at 10:00 PM, Vishwanath Sripathy
<vishwanath.bs@xxxxxx> wrote:
>> -----Original Message-----
>> From: linux-arm-kernel-bounces@xxxxxxxxxxxxxxxxxxx [mailto:linux-arm-
>> kernel-bounces@xxxxxxxxxxxxxxxxxxx] On Behalf Of Jarkko Nikula
>> Sent: Tuesday, February 15, 2011 8:47 PM
>> To: Shweta Gulati
>> Cc: Nishanth Menon; Thara Gopinath; linux-omap@xxxxxxxxxxxxxxx;
>> linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
>> Subject: Re: [PATCH V4] OMAP3: PM: Set/clear T2 bit for Smartreflex on
>> TWL
>>
>> On Tue, 15 Feb 2011 13:28:58 +0530
>> Shweta Gulati <shweta.gulati@xxxxxx> wrote:
>>
>> > This patch is based on LO PM Branch and Smartreflex has been
>> > tested on OMAP3430 SDP, OMAP3630 SDP and boot tested on
>> > OMAP2430 SDP.
>> >
>> I saw this was working on N900 (kind of special instrumentation
>> setup) after enabling /sys/kernel/debug/voltage/[vdd_core |
>> vdd_mpu]/smartreflex/autocomp. Few comments below.
>>
>> > @@ -269,6 +276,18 @@ int __init omap3_twl_init(void)
>> >             omap3_core_volt_info.vp_vddmax =
>> OMAP3630_VP2_VLIMITTO_VDDMAX;
>> >     }
>> ...
>> > +   if (!twl_sr_enable_autoinit)
>> > +           omap3_twl_set_sr_bit(true);
>> ...
>> > +int __init omap3_twl_set_sr_bit(bool enable)
>> > +{
>> > +   u8 temp;
>> > +   int ret;
>> > +   if (twl_sr_enable_autoinit)
>> > +           pr_warning("%s: unexpected multiple calls\n", __func__);
>> > +
>> > +   ret = twl_i2c_read_u8(TWL4030_MODULE_PM_RECEIVER, &temp,
>> > +                                   TWL4030_DCDC_GLOBAL_CFG);
>> > +   if (ret)
>> > +           goto err;
>> > +
>> > +   if (enable)
>> > +           temp |= SMARTREFLEX_ENABLE;
>> > +   else
>> > +           temp &= ~SMARTREFLEX_ENABLE;
>> > +
>> > +   ret = twl_i2c_write_u8(TWL4030_MODULE_PM_RECEIVER, temp,
>> > +                           TWL4030_DCDC_GLOBAL_CFG);
>>
>> Would it make more sense to set only the flag here and do the register
>> writes when omap3_twl_init is executing? Then it's not so strict when
>> the board code calls this function.
> What if board code calls this function after twl_init is executed? Then
> you will not clear the bit right?
> Intention of this function is to make sure the bit is set/cleared when it
> is called.
ompa3_twl_init is called from 'omap2_common_pm_late_init' which is
late_initcall.
So it would be called after board specific initializations are
completed in 'init' process.
> vishwa
>>
>> > +   if (!ret) {
>> > +           twl_sr_enable_autoinit = true;
>> > +           return 0;
>>
>> Should this be twl_sr_enable_autoinit = enable (if going to do
>> register write here)?
>>
>> --
>> Jarkko
>>
>> _______________________________________________
>> linux-arm-kernel mailing list
>> linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
>> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
>



-- 
Thanks,
Regards,
Shweta
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux