drm: msm: sde: remove user commit validity check
Such validity check will let Android FDR test failed. This is because kernel has enabled interrupts, and access registers, but with this validity check, LK also co-exists with kernel, while it has disabled interrupts. Hence conflict happens. CRs-Fixed: 2247983 2258043 Change-Id: I21be9ae2beeaa0bc187aee241572ce530b9bc93a Signed-off-by: Guchun Chen <guchunc@codeaurora.org>
This commit is contained in:
parent
2ced56323b
commit
b80fa28840
3 changed files with 4 additions and 30 deletions
|
@ -345,7 +345,7 @@ static void sde_kms_prepare_commit(struct msm_kms *kms,
|
|||
|
||||
if (sde_kms->splash_info.handoff &&
|
||||
sde_kms->splash_info.display_splash_enabled)
|
||||
sde_splash_lk_stop_splash(kms, state);
|
||||
sde_splash_lk_stop_splash(kms);
|
||||
|
||||
sde_power_resource_enable(&priv->phandle,
|
||||
sde_kms->core_client, true);
|
||||
|
|
|
@ -367,29 +367,6 @@ static int _sde_splash_free_module_resource(struct msm_mmu *mmu,
|
|||
return 0;
|
||||
}
|
||||
|
||||
static bool _sde_splash_validate_commit(struct sde_kms *sde_kms,
|
||||
struct drm_atomic_state *state)
|
||||
{
|
||||
int i, nplanes;
|
||||
struct drm_plane *plane;
|
||||
struct drm_device *dev = sde_kms->dev;
|
||||
|
||||
nplanes = dev->mode_config.num_total_plane;
|
||||
|
||||
for (i = 0; i < nplanes; i++) {
|
||||
plane = state->planes[i];
|
||||
|
||||
/*
|
||||
* As plane state has been swapped, we need to check
|
||||
* fb in state->planes, not fb in state->plane_state.
|
||||
*/
|
||||
if (plane && plane->fb)
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
__ref int sde_splash_init(struct sde_power_handle *phandle, struct msm_kms *kms)
|
||||
{
|
||||
struct sde_kms *sde_kms;
|
||||
|
@ -883,8 +860,7 @@ int sde_splash_free_resource(struct msm_kms *kms,
|
|||
* 1. Notify LK to stop display splash.
|
||||
* 2. Set DOMAIN_ATTR_EARLY_MAP to 1 to enable stage 1 translation in iommu.
|
||||
*/
|
||||
int sde_splash_lk_stop_splash(struct msm_kms *kms,
|
||||
struct drm_atomic_state *state)
|
||||
int sde_splash_lk_stop_splash(struct msm_kms *kms)
|
||||
{
|
||||
struct sde_splash_info *sinfo;
|
||||
struct msm_mmu *mmu;
|
||||
|
@ -900,8 +876,7 @@ int sde_splash_lk_stop_splash(struct msm_kms *kms,
|
|||
|
||||
/* Monitor LK's status and tell it to exit. */
|
||||
mutex_lock(&sde_splash_lock);
|
||||
if (_sde_splash_validate_commit(sde_kms, state) &&
|
||||
sinfo->display_splash_enabled) {
|
||||
if (sinfo->display_splash_enabled) {
|
||||
if (_sde_splash_lk_check(sde_kms->hw_intr))
|
||||
_sde_splash_notify_lk_stop_splash(sde_kms->hw_intr);
|
||||
|
||||
|
|
|
@ -120,8 +120,7 @@ void sde_splash_setup_connector_count(struct sde_splash_info *sinfo,
|
|||
*
|
||||
* Tell LK to stop display splash once one valid user commit arrives.
|
||||
*/
|
||||
int sde_splash_lk_stop_splash(struct msm_kms *kms,
|
||||
struct drm_atomic_state *state);
|
||||
int sde_splash_lk_stop_splash(struct msm_kms *kms);
|
||||
|
||||
/**
|
||||
* sde_splash_free_resource.
|
||||
|
|
Loading…
Add table
Reference in a new issue