"Mark A. Greer" <mgr...@mvista.com> writes:

> Clear any set bits in the 'NEXT' field of the MDCTL register in the
> Power and Sleep Controller (PSC) before setting any new bits.
> This also allows some minor cleanup by removing some no longer
> needed lines of code.
>
> Signed-off-by: Mark A. Greer <mgr...@mvista.com>

Thanks, pushing with minor fixup.  I #define'd a symbol for the 0x1f
mask.

Kevin


> ---
>  arch/arm/mach-davinci/psc.c |   16 +++++-----------
>  1 files changed, 5 insertions(+), 11 deletions(-)
>
> diff --git a/arch/arm/mach-davinci/psc.c b/arch/arm/mach-davinci/psc.c
> index 90f02b5..4d5eb86 100644
> --- a/arch/arm/mach-davinci/psc.c
> +++ b/arch/arm/mach-davinci/psc.c
> @@ -53,14 +53,13 @@ int __init davinci_psc_is_clk_active(unsigned int id)
>  /* Enable or disable a PSC domain */
>  void davinci_psc_config(unsigned int domain, unsigned int id, char enable)
>  {
> -     u32 epcpr, ptcmd, ptstat, pdstat, pdctl1, mdstat, mdctl, mdstat_mask;
> +     u32 epcpr, ptcmd, ptstat, pdstat, pdctl1, mdstat, mdctl;
>       void __iomem *psc_base = IO_ADDRESS(DAVINCI_PWR_SLEEP_CNTRL_BASE);
> +     u32 next_state = enable ? 0x3 : 0x2; /* 0x3 enables, 0x2 disables */
>  
>       mdctl = __raw_readl(psc_base + MDCTL + 4 * id);
> -     if (enable)
> -             mdctl |= 0x00000003;    /* Enable Module */
> -     else
> -             mdctl &= 0xFFFFFFE2;    /* Disable Module */
> +     mdctl &= ~0x0000001f;
> +     mdctl |= next_state;
>       __raw_writel(mdctl, psc_base + MDCTL + 4 * id);
>  
>       pdstat = __raw_readl(psc_base + PDSTAT);
> @@ -93,12 +92,7 @@ void davinci_psc_config(unsigned int domain, unsigned int 
> id, char enable)
>               } while (!(((ptstat >> domain) & 1) == 0));
>       }
>  
> -     if (enable)
> -             mdstat_mask = 0x3;
> -     else
> -             mdstat_mask = 0x2;
> -
>       do {
>               mdstat = __raw_readl(psc_base + MDSTAT + 4 * id);
> -     } while (!((mdstat & 0x0000001F) == mdstat_mask));
> +     } while (!((mdstat & 0x0000001F) == next_state));
>  }
> -- 
> 1.6.0.3
>
>
> _______________________________________________
> Davinci-linux-open-source mailing list
> Davinci-linux-open-source@linux.davincidsp.com
> http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

_______________________________________________
Davinci-linux-open-source mailing list
Davinci-linux-open-source@linux.davincidsp.com
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

Reply via email to