mirror of
https://github.com/torvalds/linux.git
synced 2026-05-24 15:12:13 +02:00
drm/i915/psr: Read Intel DPCD workaround register
Read Intel DPCD workaround register and store it into intel_connector->dp.psr_caps. psr_caps was chosen as currently it contains only PSR workaround for PSR2 SDP on prior scanline implementation. Signed-off-by: Jouni Högander <jouni.hogander@intel.com> Reviewed-by: Suraj Kandpal <suraj.kandpal@intel.com> Link: https://patch.msgid.link/20260515095756.2799483-3-jouni.hogander@intel.com (cherry picked from commit c48ff24d0f4ab7ad696b2d35ad64ce7e049c668c) Signed-off-by: Tvrtko Ursulin <tursulin@ursulin.net>
This commit is contained in:
parent
fbceb39b53
commit
f30bece421
|
|
@ -584,6 +584,7 @@ struct intel_connector {
|
|||
|
||||
struct {
|
||||
u8 dpcd[EDP_PSR_RECEIVER_CAP_SIZE];
|
||||
u8 intel_wa_dpcd;
|
||||
|
||||
bool support;
|
||||
bool su_support;
|
||||
|
|
|
|||
|
|
@ -43,6 +43,7 @@
|
|||
#include "intel_display_wa.h"
|
||||
#include "intel_dmc.h"
|
||||
#include "intel_dp.h"
|
||||
#include "intel_dpcd.h"
|
||||
#include "intel_dp_aux.h"
|
||||
#include "intel_dsb.h"
|
||||
#include "intel_frontbuffer.h"
|
||||
|
|
@ -716,8 +717,14 @@ static void _psr_init_dpcd(struct intel_dp *intel_dp, struct intel_connector *co
|
|||
connector->dp.psr_caps.su_support ? "" : "not ");
|
||||
}
|
||||
|
||||
if (connector->dp.psr_caps.su_support)
|
||||
if (connector->dp.psr_caps.su_support) {
|
||||
ret = drm_dp_dpcd_read_byte(&intel_dp->aux,
|
||||
INTEL_DPCD_INTEL_WA_REGISTER_CAPS,
|
||||
&connector->dp.psr_caps.intel_wa_dpcd);
|
||||
if (ret < 0)
|
||||
return;
|
||||
_psr_compute_su_granularity(intel_dp, connector);
|
||||
}
|
||||
}
|
||||
|
||||
void intel_psr_init_dpcd(struct intel_dp *intel_dp, struct intel_connector *connector)
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user