media: nvavp: make the clock requests be reference counted
authorDima Zavin <dima@android.com>
Fri, 11 May 2012 18:12:32 +0000 (11:12 -0700)
committerLokesh Pathak <lpathak@nvidia.com>
Mon, 14 May 2012 10:34:34 +0000 (03:34 -0700)
commitdfa3daebbc8dbe3ccc8e72400359dfce29053222
tree4214c263906da9d4f8a333a978c3d0b6ab66aa6d
parentc2a03d186704c4e28c68f5108f3b600a4f0e2c44
media: nvavp: make the clock requests be reference counted

Previously we only managed the clocks around pushbuffer submit by using
the non-emptiness of the pushbuffer as an implicit refcnt on the clock.
Add an actual refcnt on the clocks to allow other entities to keep
references on the clocks. Still use the queue being non-empty to request
clock, now represented by the pending flag.

This is a prerequisite for a follow-on patch that will allow avp client
to keep extra refs on the clocks to workaround an issue where the bsev
clocks need to be on to erase the DRM keys AFTER decode has been
finished. Currently, this would cause a lockup since the clocks would
be turned off at the end of decode.

Change-Id: I8314657d0073614ab6a2f6708ed1785e9aff2ff2
Reviewed-on: http://git-master/r/102023
Reviewed-by: Karan Jhavar <kjhavar@nvidia.com>
Reviewed-by: Prajakta Gudadhe <pgudadhe@nvidia.com>
Tested-by: Prajakta Gudadhe <pgudadhe@nvidia.com>
drivers/media/video/tegra/nvavp/nvavp_dev.c