[PATCH 3/3] ARM: OMAP: hwmod: Look for hwmod/module level context lost count if supported
Cousson, Benoit
b-cousson at ti.com
Tue Nov 29 13:10:15 EST 2011
Hi Rajendra,
Sorry for the delay, I kind of forgot your series :-(
On 11/3/2011 11:54 AM, Nayak, Rajendra wrote:
> Now that OMAP4 has hwmod/module level context lost counters, make
> omap_hwmod_get_context_loss_count() return them on platforms where they
> exist, else fall back on the pwrdm level counters for older platforms.
>
> Signed-off-by: Rajendra Nayak<rnayak at ti.com>
> ---
> arch/arm/mach-omap2/omap_hwmod.c | 11 ++++++++---
> 1 files changed, 8 insertions(+), 3 deletions(-)
>
> diff --git a/arch/arm/mach-omap2/omap_hwmod.c b/arch/arm/mach-omap2/omap_hwmod.c
> index ac17748..9d140c4 100644
> --- a/arch/arm/mach-omap2/omap_hwmod.c
> +++ b/arch/arm/mach-omap2/omap_hwmod.c
> @@ -2658,9 +2658,14 @@ u32 omap_hwmod_get_context_loss_count(struct omap_hwmod *oh)
> struct powerdomain *pwrdm;
> int ret = 0;
>
> - pwrdm = omap_hwmod_get_pwrdm(oh);
> - if (pwrdm)
> - ret = pwrdm_get_context_loss_count(pwrdm);
> + if (oh->prcm.omap4.context_offs) {
I don't think it is safe to use that, since this is an union.
You do know what OMAP2 & 3 will put in that location.
It might be zero, but who knows?
> + /* Support for per-hwmod context register */
> + ret = oh->prcm.omap4.context_lost_counter;
> + } else {
> + pwrdm = omap_hwmod_get_pwrdm(oh);
> + if (pwrdm)
> + ret = pwrdm_get_context_loss_count(pwrdm);
> + }
>
> return ret;
> }
Regards,
Benoit
More information about the linux-arm-kernel
mailing list