Skip to content

Commit cf6b2b5

Browse files
Ben Skeggsairlied
authored andcommitted
drm/nouveau/gsp: add hal for disp.get_active()
555.42.02 has incompatible changes to NV0073_CTRL_CMD_SYSTEM_GET_ACTIVE. Signed-off-by: Ben Skeggs <bskeggs@nvidia.com> Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Timur Tabi <ttabi@nvidia.com> Tested-by: Timur Tabi <ttabi@nvidia.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
1 parent bfbae41 commit cf6b2b5

2 files changed

Lines changed: 6 additions & 2 deletions

File tree

  • drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm

drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/r535/disp.c

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -724,7 +724,7 @@ r535_outp_acquire(struct nvkm_outp *outp, bool hda)
724724
}
725725

726726
static int
727-
r535_disp_head_displayid(struct nvkm_disp *disp, int head, u32 *displayid)
727+
r535_disp_get_active(struct nvkm_disp *disp, unsigned head, u32 *displayid)
728728
{
729729
NV0073_CTRL_SYSTEM_GET_ACTIVE_PARAMS *ctrl;
730730
int ret;
@@ -757,7 +757,9 @@ r535_outp_inherit(struct nvkm_outp *outp)
757757
int ret;
758758

759759
list_for_each_entry(head, &disp->heads, head) {
760-
ret = r535_disp_head_displayid(disp, head->id, &displayid);
760+
const struct nvkm_rm_api *rmapi = disp->rm.objcom.client->gsp->rm->api;
761+
762+
ret = rmapi->disp->get_active(disp, head->id, &displayid);
761763
if (WARN_ON(ret))
762764
return NULL;
763765

@@ -1758,6 +1760,7 @@ r535_disp = {
17581760
.get_static_info = r535_disp_get_static_info,
17591761
.get_supported = r535_disp_get_supported,
17601762
.get_connect_state = r535_disp_get_connect_state,
1763+
.get_active = r535_disp_get_active,
17611764
.bl_ctrl = r535_bl_ctrl,
17621765
.dp = {
17631766
.set_indexed_link_rates = r535_dp_set_indexed_link_rates,

drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/rm.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,7 @@ struct nvkm_rm_api {
8282
int (*get_static_info)(struct nvkm_disp *);
8383
int (*get_supported)(struct nvkm_disp *, unsigned long *display_mask);
8484
int (*get_connect_state)(struct nvkm_disp *, unsigned display_id);
85+
int (*get_active)(struct nvkm_disp *, unsigned head, u32 *display_id);
8586

8687
int (*bl_ctrl)(struct nvkm_disp *, unsigned display_id, bool set, int *val);
8788

0 commit comments

Comments
 (0)