diff options
author | Laxman Dewangan <ldewangan@nvidia.com> | 2013-02-10 01:06:38 +0530 |
---|---|---|
committer | Mandar Padmawar <mpadmawar@nvidia.com> | 2013-02-11 05:13:10 -0800 |
commit | c234ec797037e4168a0ce1f87b19347e71d6b909 (patch) | |
tree | e8753be6794e03c77ef618ff5feb1548561ec92a /include | |
parent | 4aae1b8da409ec83b0edff1e7d9d34bdb4b5ede9 (diff) |
regulator: palmas: implement errata for ES1.0,ES2.0 and ES2.1
The device has the errata and sw need to implement the WAR for
proper functioning of the device.
The errata are:
1. SMPS- slew rate (TSTEP) is slower than expected
-----------------------------------------------
when output voltage target is close to previous one
IMPACT: The settling time is greater than specified slew rate in
register map and datasheet for voltage scaling of the SMPS.
DESCRIPTION: Measurement done on WCSP ES2.0, SMPS8, SMPS6, SMPS12
for TSTEP=0x02(5mV/us)
- step from VOUT= 0.5v to 1.65V ==>slew rate is around 5mV/us
- step from VOUT= 0.96v to 1.04V ==>slew rate is around 2.5mV/us
for TSTEP=0x03(2.5mV/us)
- step from VOUT= 0.5v to 1.65V ==>slew rate is around 2.5mV/us
- step from VOUT= 0.96v to 1.04V ==>slew rate is around 1.6mV/us
WORKAROUND: Adapt wait time using above value.
REVISION IMPACTED: ES1.0/ES2.0/ES2.1
2. LDO8_TRACKING: PD in tracking mode
-------------------------------------
IMPACT: Higher consumption and performance impact when LDO8 is set in
tracking mode and LDO is set to have its pull down enabled in OFF mode.
DESCRIPTION: When LDO8 is set in tracking mode and the LDO is set to have
its pull down enabled in OFF, the pull down is also enabled in ACTIVE mode.
WORKAROUND: In tracking mode, bit7 of LDO_PD_CTRL1 register must be set to 0.
When LDO8 is disabled, to have the pull down, bit7 of LDO_PD_CTRL1 register must
then be set to 1.
In LDO8 regulation mode, behavior is the same as the other LDOs.
REVISION IMPACTED: ES 2.1 ES2.0 ES1.0
bug 1228386
bug 1195226
Change-Id: Ib19a21cb722b1bc07d93a0cf866c134672ef8735
Signed-off-by: Laxman Dewangan <ldewangan@nvidia.com>
Reviewed-on: http://git-master/r/199132
Reviewed-by: Automatic_Commit_Validation_User
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/mfd/palmas.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/include/linux/mfd/palmas.h b/include/linux/mfd/palmas.h index a3a65999d57b..4dfc50bde015 100644 --- a/include/linux/mfd/palmas.h +++ b/include/linux/mfd/palmas.h @@ -2805,4 +2805,16 @@ static inline int palmas_irq_get_virq(struct palmas *palmas, int irq) return regmap_irq_get_virq(palmas->irq_data, irq); } +static inline int palmas_is_es_version_or_less(struct palmas *palmas, + int major, int minor) +{ + if (palmas->es_major_version < major) + return true; + + if ((palmas->es_major_version == major) && + (palmas->es_minor_version <= minor)) + return true; + + return false; +} #endif /* __LINUX_MFD_PALMAS_H */ |