"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