mirror of https://gitee.com/openkylin/linux.git
drm/amd/display: Read LTTPR caps first on bootup
[WHY] SCR for DP 2.0 requires that LTTPR caps be read first on hotplug. For the sake of consistency, this should also be the case on bootup. Signed-off-by: Wesley Chalmers <Wesley.Chalmers@amd.com> Reviewed-by: Jun Lei <Jun.Lei@amd.com> Acked-by: Anson Jacob <Anson.Jacob@amd.com> Tested-by: Daniel Wheeler <daniel.wheeler@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
ee9b1992f1
commit
c5bc8c1bd4
|
@ -54,6 +54,7 @@
|
|||
#include "dce/dmub_hw_lock_mgr.h"
|
||||
#include "dc_trace.h"
|
||||
#include "dce/dmub_outbox.h"
|
||||
#include "inc/dc_link_dp.h"
|
||||
|
||||
#define DC_LOGGER_INIT(logger)
|
||||
|
||||
|
@ -1403,6 +1404,9 @@ void dcn10_init_hw(struct dc *dc)
|
|||
if (dc->links[i]->connector_signal != SIGNAL_TYPE_DISPLAY_PORT)
|
||||
continue;
|
||||
|
||||
/* DP 2.0 requires that LTTPR Caps be read first */
|
||||
dp_retrieve_lttpr_cap(dc->links[i]);
|
||||
|
||||
/*
|
||||
* If any of the displays are lit up turn them off.
|
||||
* The reason is that some MST hubs cannot be turned off
|
||||
|
|
|
@ -48,6 +48,7 @@
|
|||
#include "dc_dmub_srv.h"
|
||||
#include "link_hwss.h"
|
||||
#include "dpcd_defs.h"
|
||||
#include "inc/dc_link_dp.h"
|
||||
|
||||
|
||||
|
||||
|
@ -529,6 +530,8 @@ void dcn30_init_hw(struct dc *dc)
|
|||
for (i = 0; i < dc->link_count; i++) {
|
||||
if (dc->links[i]->connector_signal != SIGNAL_TYPE_DISPLAY_PORT)
|
||||
continue;
|
||||
/* DP 2.0 states that LTTPR regs must be read first */
|
||||
dp_retrieve_lttpr_cap(dc->links[i]);
|
||||
|
||||
/* if any of the displays are lit up turn them off */
|
||||
status = core_link_read_dpcd(dc->links[i], DP_SET_POWER,
|
||||
|
|
|
@ -190,4 +190,5 @@ enum dc_status dpcd_configure_lttpr_mode(
|
|||
struct link_training_settings *lt_settings);
|
||||
|
||||
enum dp_link_encoding dp_get_link_encoding_format(const struct dc_link_settings *link_settings);
|
||||
bool dp_retrieve_lttpr_cap(struct dc_link *link);
|
||||
#endif /* __DC_LINK_DP_H__ */
|
||||
|
|
Loading…
Reference in New Issue