summaryrefslogtreecommitdiff
path: root/sys/dev/pci/drm/i915
diff options
context:
space:
mode:
authorJonathan Gray <jsg@cvs.openbsd.org>2020-06-26 04:47:17 +0000
committerJonathan Gray <jsg@cvs.openbsd.org>2020-06-26 04:47:17 +0000
commit2f494369ff839b2b7fbc38e2e33a13a595739c9a (patch)
tree1b5d571c44336e6b516ed4015f832df214ee8829 /sys/dev/pci/drm/i915
parent101fa581a317259056f70fae8a1dba2cc72f4d24 (diff)
drm/i915: Fix AUX power domain toggling across TypeC mode resets
From Imre Deak fa48b63218d09c080dfcdbc04efd282ba5849d98 in linux 5.7.y/5.7.6 d96536f0fe699729a0974eb5b65eb0d87cc747e1 in mainline linux
Diffstat (limited to 'sys/dev/pci/drm/i915')
-rw-r--r--sys/dev/pci/drm/i915/display/intel_dp.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/dev/pci/drm/i915/display/intel_dp.c b/sys/dev/pci/drm/i915/display/intel_dp.c
index 22d2b7e923c..fe1e8973ad4 100644
--- a/sys/dev/pci/drm/i915/display/intel_dp.c
+++ b/sys/dev/pci/drm/i915/display/intel_dp.c
@@ -1343,8 +1343,7 @@ intel_dp_aux_xfer(struct intel_dp *intel_dp,
bool is_tc_port = intel_phy_is_tc(i915, phy);
i915_reg_t ch_ctl, ch_data[5];
u32 aux_clock_divider;
- enum intel_display_power_domain aux_domain =
- intel_aux_power_domain(intel_dig_port);
+ enum intel_display_power_domain aux_domain;
intel_wakeref_t aux_wakeref;
intel_wakeref_t pps_wakeref;
int i, ret, recv_bytes;
@@ -1359,6 +1358,8 @@ intel_dp_aux_xfer(struct intel_dp *intel_dp,
if (is_tc_port)
intel_tc_port_lock(intel_dig_port);
+ aux_domain = intel_aux_power_domain(intel_dig_port);
+
aux_wakeref = intel_display_power_get(i915, aux_domain);
pps_wakeref = pps_lock(intel_dp);