|
@@ -1030,7 +1030,7 @@ bool intel_crtc_active(struct intel_crtc *crtc)
|
|
|
enum transcoder intel_pipe_to_cpu_transcoder(struct drm_i915_private *dev_priv,
|
|
|
enum pipe pipe)
|
|
|
{
|
|
|
- struct intel_crtc *crtc = dev_priv->pipe_to_crtc_mapping[pipe];
|
|
|
+ struct intel_crtc *crtc = intel_get_crtc_for_pipe(dev_priv, pipe);
|
|
|
|
|
|
return crtc->config->cpu_transcoder;
|
|
|
}
|
|
@@ -1785,7 +1785,8 @@ void vlv_wait_port_ready(struct drm_i915_private *dev_priv,
|
|
|
static void ironlake_enable_pch_transcoder(struct drm_i915_private *dev_priv,
|
|
|
enum pipe pipe)
|
|
|
{
|
|
|
- struct intel_crtc *intel_crtc = dev_priv->pipe_to_crtc_mapping[pipe];
|
|
|
+ struct intel_crtc *intel_crtc = intel_get_crtc_for_pipe(dev_priv,
|
|
|
+ pipe);
|
|
|
i915_reg_t reg;
|
|
|
uint32_t val, pipeconf_val;
|
|
|
|
|
@@ -11662,7 +11663,7 @@ static bool pageflip_finished(struct intel_crtc *crtc,
|
|
|
void intel_finish_page_flip_cs(struct drm_i915_private *dev_priv, int pipe)
|
|
|
{
|
|
|
struct drm_device *dev = &dev_priv->drm;
|
|
|
- struct intel_crtc *crtc = dev_priv->pipe_to_crtc_mapping[pipe];
|
|
|
+ struct intel_crtc *crtc = intel_get_crtc_for_pipe(dev_priv, pipe);
|
|
|
struct intel_flip_work *work;
|
|
|
unsigned long flags;
|
|
|
|
|
@@ -11688,7 +11689,7 @@ void intel_finish_page_flip_cs(struct drm_i915_private *dev_priv, int pipe)
|
|
|
void intel_finish_page_flip_mmio(struct drm_i915_private *dev_priv, int pipe)
|
|
|
{
|
|
|
struct drm_device *dev = &dev_priv->drm;
|
|
|
- struct intel_crtc *crtc = dev_priv->pipe_to_crtc_mapping[pipe];
|
|
|
+ struct intel_crtc *crtc = intel_get_crtc_for_pipe(dev_priv, pipe);
|
|
|
struct intel_flip_work *work;
|
|
|
unsigned long flags;
|
|
|
|
|
@@ -12118,7 +12119,7 @@ static bool __pageflip_stall_check_cs(struct drm_i915_private *dev_priv,
|
|
|
void intel_check_page_flip(struct drm_i915_private *dev_priv, int pipe)
|
|
|
{
|
|
|
struct drm_device *dev = &dev_priv->drm;
|
|
|
- struct intel_crtc *crtc = dev_priv->pipe_to_crtc_mapping[pipe];
|
|
|
+ struct intel_crtc *crtc = intel_get_crtc_for_pipe(dev_priv, pipe);
|
|
|
struct intel_flip_work *work;
|
|
|
|
|
|
WARN_ON(!in_interrupt());
|
|
@@ -14177,7 +14178,8 @@ static void intel_atomic_wait_for_vblanks(struct drm_device *dev,
|
|
|
return;
|
|
|
|
|
|
for_each_pipe(dev_priv, pipe) {
|
|
|
- struct intel_crtc *crtc = dev_priv->pipe_to_crtc_mapping[pipe];
|
|
|
+ struct intel_crtc *crtc = intel_get_crtc_for_pipe(dev_priv,
|
|
|
+ pipe);
|
|
|
|
|
|
if (!((1 << pipe) & crtc_mask))
|
|
|
continue;
|
|
@@ -14192,7 +14194,8 @@ static void intel_atomic_wait_for_vblanks(struct drm_device *dev,
|
|
|
}
|
|
|
|
|
|
for_each_pipe(dev_priv, pipe) {
|
|
|
- struct intel_crtc *crtc = dev_priv->pipe_to_crtc_mapping[pipe];
|
|
|
+ struct intel_crtc *crtc = intel_get_crtc_for_pipe(dev_priv,
|
|
|
+ pipe);
|
|
|
long lret;
|
|
|
|
|
|
if (!((1 << pipe) & crtc_mask))
|
|
@@ -16867,7 +16870,7 @@ static void intel_modeset_readout_hw_state(struct drm_device *dev)
|
|
|
pipe = 0;
|
|
|
|
|
|
if (encoder->get_hw_state(encoder, &pipe)) {
|
|
|
- crtc = dev_priv->pipe_to_crtc_mapping[pipe];
|
|
|
+ crtc = intel_get_crtc_for_pipe(dev_priv, pipe);
|
|
|
|
|
|
encoder->base.crtc = &crtc->base;
|
|
|
crtc->config->output_types |= 1 << encoder->type;
|
|
@@ -16969,7 +16972,7 @@ intel_modeset_setup_hw_state(struct drm_device *dev)
|
|
|
}
|
|
|
|
|
|
for_each_pipe(dev_priv, pipe) {
|
|
|
- crtc = dev_priv->pipe_to_crtc_mapping[pipe];
|
|
|
+ crtc = intel_get_crtc_for_pipe(dev_priv, pipe);
|
|
|
|
|
|
intel_sanitize_crtc(crtc);
|
|
|
intel_dump_pipe_config(crtc, crtc->config,
|