OMAP2+: hwmod: fix incorrect computation of autoidle_mask
authorTarun Kanti DebBarma <tarun.kanti@ti.com>
Thu, 3 Mar 2011 21:22:46 +0000 (14:22 -0700)
committerPaul Walmsley <paul@pwsan.com>
Thu, 10 Mar 2011 10:23:55 +0000 (03:23 -0700)
Autoidle is a single bit, TIOCP_CFG[0], setting on OMAP1/2/3/4 platforms.
In _set_module_autoidle() I am seeing 0x3 value where the mask is computed.
This should be 0x1.

v2:
(1) Modified the subject.
(2) Modified the description with further specific information.

Baseline:
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git

Tested Info:
Boot tested on OMAP 1/2/3/4.

Signed-off-by: Tarun Kanti DebBarma <tarun.kanti@ti.com>
Acked-by: Rajendra Nayak <rnayak@ti.com>
Acked-by: Benoit Cousson <b-cousson@ti.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
arch/arm/mach-omap2/omap_hwmod.c

index e282e35..b18c36b 100644 (file)
@@ -373,7 +373,7 @@ static int _set_module_autoidle(struct omap_hwmod *oh, u8 autoidle,
        }
 
        autoidle_shift = oh->class->sysc->sysc_fields->autoidle_shift;
-       autoidle_mask = (0x3 << autoidle_shift);
+       autoidle_mask = (0x1 << autoidle_shift);
 
        *v &= ~autoidle_mask;
        *v |= autoidle << autoidle_shift;