Skip to content

Commit cd2e31a

Browse files
superm1alexdeucher
authored andcommitted
drm/amd/display: Set minimum requirement for using PSR-SU on Phoenix
The same parade TCON issue can potentially happen on Phoenix, and the same PSR resilience changes have been ported into the DMUB firmware. Don't allow running PSR-SU unless on the newer firmware. Cc: [email protected] Cc: Sean Wang <[email protected]> Cc: Marc Rossi <[email protected]> Cc: Hamza Mahfooz <[email protected]> Cc: Tsung-hua (Ryan) Lin <[email protected]> Signed-off-by: Mario Limonciello <[email protected]> Reviewed-by: Leo Li <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
1 parent c35b6ea commit cd2e31a

File tree

3 files changed

+8
-0
lines changed

3 files changed

+8
-0
lines changed

drivers/gpu/drm/amd/display/dmub/src/dmub_dcn314.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,3 +60,8 @@ const struct dmub_srv_dcn31_regs dmub_srv_dcn314_regs = {
6060
{ DMUB_DCN31_FIELDS() },
6161
#undef DMUB_SF
6262
};
63+
64+
bool dmub_dcn314_is_psrsu_supported(struct dmub_srv *dmub)
65+
{
66+
return dmub->fw_version >= DMUB_FW_VERSION(8, 0, 16);
67+
}

drivers/gpu/drm/amd/display/dmub/src/dmub_dcn314.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,4 +30,6 @@
3030

3131
extern const struct dmub_srv_dcn31_regs dmub_srv_dcn314_regs;
3232

33+
bool dmub_dcn314_is_psrsu_supported(struct dmub_srv *dmub);
34+
3335
#endif /* _DMUB_DCN314_H_ */

drivers/gpu/drm/amd/display/dmub/src/dmub_srv.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -228,6 +228,7 @@ static bool dmub_srv_hw_setup(struct dmub_srv *dmub, enum dmub_asic asic)
228228
case DMUB_ASIC_DCN316:
229229
if (asic == DMUB_ASIC_DCN314) {
230230
dmub->regs_dcn31 = &dmub_srv_dcn314_regs;
231+
funcs->is_psrsu_supported = dmub_dcn314_is_psrsu_supported;
231232
} else if (asic == DMUB_ASIC_DCN315) {
232233
dmub->regs_dcn31 = &dmub_srv_dcn315_regs;
233234
} else if (asic == DMUB_ASIC_DCN316) {

0 commit comments

Comments
 (0)