diff options
author | Oleksandr Kozaruk <oleksandr.kozaruk@ti.com> | 2011-11-07 18:21:44 -0600 |
---|---|---|
committer | Ziyann <jaraidaniel@gmail.com> | 2014-10-01 12:55:17 +0200 |
commit | 4072148d202b2fb7707951af329bcd1e79549a6d (patch) | |
tree | b7e5bee4e66e7e8c5d514c4e7fe1db80e41a4283 /arch/arm/mach-omap2/opp4xxx_data.c | |
parent | b6f983a2f024da6f62db479b2dd5e460a7efbf70 (diff) | |
download | kernel_samsung_tuna-4072148d202b2fb7707951af329bcd1e79549a6d.zip kernel_samsung_tuna-4072148d202b2fb7707951af329bcd1e79549a6d.tar.gz kernel_samsung_tuna-4072148d202b2fb7707951af329bcd1e79549a6d.tar.bz2 |
OMAP4: DPLL: override for untrimmed unit
Read the value of DPLL TRIM register to check if unit is trimmed.
If it is not trimmed override OMAP4_DPLL_NWELL_TRIM_0 register
with value 0x29.
Change-Id: I5a1678860a9b663b4ce9f1f53694de9930593147
Signed-off-by: Oleksandr Kozaruk <oleksandr.kozaruk@ti.com>
Diffstat (limited to 'arch/arm/mach-omap2/opp4xxx_data.c')
-rw-r--r-- | arch/arm/mach-omap2/opp4xxx_data.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/arch/arm/mach-omap2/opp4xxx_data.c b/arch/arm/mach-omap2/opp4xxx_data.c index dc7043e..5bc31e6 100644 --- a/arch/arm/mach-omap2/opp4xxx_data.c +++ b/arch/arm/mach-omap2/opp4xxx_data.c @@ -387,15 +387,21 @@ static void __init omap4_mpu_opp_enable(unsigned long freq) int __init omap4_opp_init(void) { int r = -ENODEV; + int trimmed = 1; if (!cpu_is_omap44xx()) return r; if (cpu_is_omap443x()) r = omap_init_opp_table(omap443x_opp_def_list, ARRAY_SIZE(omap443x_opp_def_list)); - else if (cpu_is_omap446x()) + else if (cpu_is_omap446x()) { r = omap_init_opp_table(omap446x_opp_def_list, ARRAY_SIZE(omap446x_opp_def_list)); + trimmed = omap_readl(0x4a002268) & ((1 << 18) | (1 << 19)); + /* if device is untrimmed override DPLL TRIM register */ + if (!trimmed) + omap_writel(0x29, 0x4a002330); + } if (!r) { if (omap4_has_mpu_1_2ghz()) |