disp: msm: sde: track available hw resources

Track available hw resources using a common data structure in
the sde_rm object and pass available hw resource info to
interface drivers to make informed decisions in preparing
or filtering display modes.

Change-Id: I05649623233b0f531582e8c90d1ef92c7fceded4
Signed-off-by: Nilaan Gunabalachandran <ngunabal@codeaurora.org>
This commit is contained in:
Nilaan Gunabalachandran
2019-05-23 11:20:39 -04:00
parent d92000cdd4
commit c7bf5c0293
3 changed files with 121 additions and 0 deletions

View File

@@ -370,6 +370,7 @@ static void sde_connector_get_avail_res_info(struct drm_connector *conn,
{
struct msm_drm_private *priv;
struct sde_kms *sde_kms;
struct drm_encoder *drm_enc = NULL;
if (!conn || !conn->dev || !conn->dev->dev_private)
return;
@@ -380,6 +381,13 @@ static void sde_connector_get_avail_res_info(struct drm_connector *conn,
if (!sde_kms)
return;
if (conn->state && conn->state->best_encoder)
drm_enc = conn->state->best_encoder;
else
drm_enc = conn->encoder;
sde_rm_get_resource_info(&sde_kms->rm, drm_enc, avail_res);
avail_res->max_mixer_width = sde_kms->catalog->max_mixer_width;
}