disp: msm: sde: replace demura pipe index cap. with general pipe index
Generalize the demura pipe index capability on sde_plane objects to instead provide the relative pipe index for all plane types. This information can be used by clients to fully determine a plane type and its position. Change-Id: I597da0dab92c249b16934b9327353e4937635606 Signed-off-by: Christopher Braga <cbraga@codeaurora.org>
This commit is contained in:

committed by
Gerrit - the friendly Code Review server

parent
f6a6169748
commit
d036a97b00
@@ -3544,6 +3544,7 @@ static void _sde_plane_setup_capabilities_blob(struct sde_plane *psde,
|
|||||||
bool is_master = !psde->is_virtual;
|
bool is_master = !psde->is_virtual;
|
||||||
const struct sde_format_extended *format_list;
|
const struct sde_format_extended *format_list;
|
||||||
u32 index;
|
u32 index;
|
||||||
|
int pipe_id;
|
||||||
|
|
||||||
if (is_master) {
|
if (is_master) {
|
||||||
format_list = psde->pipe_sblk->format_list;
|
format_list = psde->pipe_sblk->format_list;
|
||||||
@@ -3582,13 +3583,22 @@ static void _sde_plane_setup_capabilities_blob(struct sde_plane *psde,
|
|||||||
psde->pipe_sblk->max_per_pipe_bw * 1000LL);
|
psde->pipe_sblk->max_per_pipe_bw * 1000LL);
|
||||||
sde_kms_info_add_keyint(info, "max_per_pipe_bw_high",
|
sde_kms_info_add_keyint(info, "max_per_pipe_bw_high",
|
||||||
psde->pipe_sblk->max_per_pipe_bw_high * 1000LL);
|
psde->pipe_sblk->max_per_pipe_bw_high * 1000LL);
|
||||||
|
|
||||||
|
if (psde->pipe <= SSPP_VIG3 && psde->pipe >= SSPP_VIG0)
|
||||||
|
pipe_id = psde->pipe - SSPP_VIG0;
|
||||||
|
else if (psde->pipe <= SSPP_RGB3 && psde->pipe >= SSPP_RGB0)
|
||||||
|
pipe_id = psde->pipe - SSPP_RGB0;
|
||||||
|
else if (psde->pipe <= SSPP_DMA3 && psde->pipe >= SSPP_DMA0)
|
||||||
|
pipe_id = psde->pipe - SSPP_DMA0;
|
||||||
|
else
|
||||||
|
pipe_id = -1;
|
||||||
|
|
||||||
|
sde_kms_info_add_keyint(info, "pipe_idx", pipe_id);
|
||||||
|
|
||||||
index = (master_plane_id == 0) ? 0 : 1;
|
index = (master_plane_id == 0) ? 0 : 1;
|
||||||
if (catalog->has_demura &&
|
if (catalog->has_demura &&
|
||||||
catalog->demura_supported[psde->pipe][index] != ~0x0) {
|
catalog->demura_supported[psde->pipe][index] != ~0x0)
|
||||||
sde_kms_info_add_keyint(info, "demura_block", index);
|
sde_kms_info_add_keyint(info, "demura_block", index);
|
||||||
sde_kms_info_add_keyint(info, "demura_pipe_id",
|
|
||||||
psde->pipe - SSPP_DMA0);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (psde->features & BIT(SDE_SSPP_SEC_UI_ALLOWED))
|
if (psde->features & BIT(SDE_SSPP_SEC_UI_ALLOWED))
|
||||||
sde_kms_info_add_keyint(info, "sec_ui_allowed", 1);
|
sde_kms_info_add_keyint(info, "sec_ui_allowed", 1);
|
||||||
|
Reference in New Issue
Block a user