On 2012-11-28 13:31, Archit Taneja wrote:
> When enabling a hwmod, omap_hwmod refers to the register mentioned in the
> hwmod struct's member 'prcm.omap4.context_offs' to see whether context was
> lost or not. It increments the context lost count for the hwmod and then 
> clears
> the register.
> 
> All the DSS hwmods have the same register(RM_DSS_DSS_CONTEXT) as context_offs.
> When DSS is enabled, the first hwmod to be enabled is the "dss_core" hwmod 
> since
> it's corresponding platform device is the parent platform 
> device("omapdss_dss").
> The dss_core hwmod updates it's context lost count correctly and clears the
> register. When the hwmods corresponding to the children platform devices are
> enabled, they see that the register is clear, and don't increment their 
> context
> lost count. Therefore, all the children platform devices never report a loss 
> in
> context.
> 
> The DISPC driver currently gets the context lost count for DSS power domain 
> from
> it's corresponding platform device instance("omapdss_dispc"). The DISPC 
> platform
> device is one of the child devices, and it's corresponding hwmod("dss_dispc")
> doesn't report the context lost count correctly.
> 
> Modify dss_get_ctx_loss_count() such that it always takes the "omapdss_dss"
> platform device as it's input, move the function to dss.c so that it has 
> access
> to that platform device.
> 
> Signed-off-by: Archit Taneja <[email protected]>
> ---
>  drivers/video/omap2/dss/core.c  |   15 ---------------
>  drivers/video/omap2/dss/dispc.c |    4 ++--
>  drivers/video/omap2/dss/dss.c   |   15 +++++++++++++++
>  drivers/video/omap2/dss/dss.h   |    3 ++-
>  4 files changed, 19 insertions(+), 18 deletions(-)

I think this looks fine. I'll apply to dss master.

 Tomi


Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to