disp: msm: sde: add trusted UI support for SDE
Extends atomic check to validate TUI transition request aginst SDE and non-SDE client states. Triggers HW assignment after making sure current frame is completely flushed out of HW pipeline. Initiate the acquire after TUI end after restoring the software states. Change-Id: I6ceccd44c18526ff818723b5631b66af3ff083c1 Signed-off-by: Jeykumar Sankaran <jsanka@codeaurora.org>
This commit is contained in:
@@ -259,9 +259,12 @@ static void _sde_vm_set_ops(struct sde_vm_ops *ops)
|
||||
ops->vm_release = _sde_vm_release;
|
||||
ops->vm_owns_hw = sde_vm_owns_hw;
|
||||
ops->vm_deinit = _sde_vm_deinit;
|
||||
ops->vm_prepare_commit = sde_kms_vm_primary_prepare_commit;
|
||||
ops->vm_post_commit = sde_kms_vm_primary_post_commit;
|
||||
ops->vm_request_valid = sde_vm_request_valid;
|
||||
}
|
||||
|
||||
int sde_vm_primary_init(struct sde_kms *kms, struct sde_vm_ops *ops)
|
||||
int sde_vm_primary_init(struct sde_kms *kms)
|
||||
{
|
||||
struct sde_vm_primary *sde_vm;
|
||||
void *cookie;
|
||||
@@ -271,7 +274,7 @@ int sde_vm_primary_init(struct sde_kms *kms, struct sde_vm_ops *ops)
|
||||
if (!sde_vm)
|
||||
return -ENOMEM;
|
||||
|
||||
_sde_vm_set_ops(ops);
|
||||
_sde_vm_set_ops(&sde_vm->base.vm_ops);
|
||||
|
||||
cookie = hh_mem_notifier_register(HH_MEM_NOTIFIER_TAG_DISPLAY,
|
||||
sde_vm_mem_release_notification_handler, sde_vm);
|
||||
@@ -290,7 +293,7 @@ int sde_vm_primary_init(struct sde_kms *kms, struct sde_vm_ops *ops)
|
||||
|
||||
return 0;
|
||||
init_fail:
|
||||
_sde_vm_deinit(kms, ops);
|
||||
_sde_vm_deinit(kms, &sde_vm->base.vm_ops);
|
||||
|
||||
return rc;
|
||||
}
|
||||
|
Reference in New Issue
Block a user