drm/amd/display: add dummy PG callback for beige goby
authorAurabindo Pillai <aurabindo.pillai@amd.com>
Fri, 11 Jun 2021 14:31:04 +0000 (10:31 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Fri, 11 Jun 2021 20:04:04 +0000 (16:04 -0400)
[Why&How]
PG registers are absent in beige goby, so programming these registers
generate call trace. Fix this by adding a dummy function in dcn303
initialization function which prevents writing to non existant registers.

Fixes: cd6d421e3d1ad5 ("drm/amd/display: Initial DC support for Beige Goby")
Signed-off-by: Aurabindo Pillai <aurabindo.pillai@amd.com>
Acked-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/dcn303/dcn303_hwseq.c
drivers/gpu/drm/amd/display/dc/dcn303/dcn303_hwseq.h
drivers/gpu/drm/amd/display/dc/dcn303/dcn303_init.c

index dc33ec8..b48b732 100644 (file)
@@ -38,3 +38,8 @@ void dcn303_dsc_pg_control(struct dce_hwseq *hws, unsigned int dsc_inst, bool po
 {
        /*DCN303 removes PG registers*/
 }
+
+void dcn303_enable_power_gating_plane(struct dce_hwseq *hws, bool enable)
+{
+       /*DCN303 removes PG registers*/
+}
index fc6cab7..8b69a3b 100644 (file)
@@ -13,5 +13,6 @@
 void dcn303_dpp_pg_control(struct dce_hwseq *hws, unsigned int dpp_inst, bool power_on);
 void dcn303_hubp_pg_control(struct dce_hwseq *hws, unsigned int hubp_inst, bool power_on);
 void dcn303_dsc_pg_control(struct dce_hwseq *hws, unsigned int dsc_inst, bool power_on);
+void dcn303_enable_power_gating_plane(struct dce_hwseq *hws, bool enable);
 
 #endif /* __DC_HWSS_DCN303_H__ */
index 86d4b30..aa5dbba 100644 (file)
@@ -16,4 +16,5 @@ void dcn303_hw_sequencer_construct(struct dc *dc)
        dc->hwseq->funcs.dpp_pg_control = dcn303_dpp_pg_control;
        dc->hwseq->funcs.hubp_pg_control = dcn303_hubp_pg_control;
        dc->hwseq->funcs.dsc_pg_control = dcn303_dsc_pg_control;
+       dc->hwseq->funcs.enable_power_gating_plane = dcn303_enable_power_gating_plane;
 }