mdss: Add MDP_SMP_FORCE_ALLOC mdp flag

MDP_SMP_FORCE_ALLOC flag is used to allow SMP
allocations even when there is mismatch between
allocated and requested SMPs for a pipe.
User space can make use of this flag in extreme scenarios
where SMP allocations need to pass like GPU composition
and playback of protected  or secure videos.

Change-Id: I369b4361e7e2bbfc8150add467678c4ef8d5cfb6
Signed-off-by: Justin Philip <jphili@codeaurora.org>
This commit is contained in:
Justin Philip 2014-08-12 13:46:54 +05:30
parent bd217783ce
commit 41631eb73e
2 changed files with 2 additions and 7 deletions

View file

@ -511,13 +511,7 @@ int mdss_mdp_smp_reserve(struct mdss_mdp_pipe *pipe)
if (rc)
return rc;
/*
* Don't want to allow SMP changes for backend composition pipes
* inorder to preserve SMPs as much as possible.
* On the contrary for non backend composition pipes we should
* allow SMP allocations to prevent composition failures.
*/
force_alloc = !(pipe->flags & MDP_BACKEND_COMPOSITION);
force_alloc = pipe->flags & MDP_SMP_FORCE_ALLOC;
mutex_lock(&mdss_mdp_smp_lock);
if (!is_unused_smp_allowed()) {

View file

@ -221,6 +221,7 @@ enum {
#define MDP_MEMORY_ID_TYPE_FB 0x00001000
#define MDP_BWC_EN 0x00000400
#define MDP_DECIMATION_EN 0x00000800
#define MDP_SMP_FORCE_ALLOC 0x00200000
#define MDP_TRANSP_NOP 0xffffffff
#define MDP_ALPHA_NOP 0xff