projects
/
linux-2.6-microblaze.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
drm/i915: prefer 3-letter acronym for ivybridge
[linux-2.6-microblaze.git]
/
drivers
/
gpu
/
drm
/
i915
/
display
/
intel_crt.c
diff --git
a/drivers/gpu/drm/i915/display/intel_crt.c
b/drivers/gpu/drm/i915/display/intel_crt.c
index
39cc6d7
..
cbe5978
100644
(file)
--- a/
drivers/gpu/drm/i915/display/intel_crt.c
+++ b/
drivers/gpu/drm/i915/display/intel_crt.c
@@
-132,9
+132,9
@@
static void intel_crt_get_config(struct intel_encoder *encoder,
{
pipe_config->output_types |= BIT(INTEL_OUTPUT_ANALOG);
{
pipe_config->output_types |= BIT(INTEL_OUTPUT_ANALOG);
- pipe_config->
base
.adjusted_mode.flags |= intel_crt_get_flags(encoder);
+ pipe_config->
hw
.adjusted_mode.flags |= intel_crt_get_flags(encoder);
- pipe_config->
base
.adjusted_mode.crtc_clock = pipe_config->port_clock;
+ pipe_config->
hw
.adjusted_mode.crtc_clock = pipe_config->port_clock;
}
static void hsw_crt_get_config(struct intel_encoder *encoder,
}
static void hsw_crt_get_config(struct intel_encoder *encoder,
@@
-144,13
+144,13
@@
static void hsw_crt_get_config(struct intel_encoder *encoder,
intel_ddi_get_config(encoder, pipe_config);
intel_ddi_get_config(encoder, pipe_config);
- pipe_config->
base
.adjusted_mode.flags &= ~(DRM_MODE_FLAG_PHSYNC |
+ pipe_config->
hw
.adjusted_mode.flags &= ~(DRM_MODE_FLAG_PHSYNC |
DRM_MODE_FLAG_NHSYNC |
DRM_MODE_FLAG_PVSYNC |
DRM_MODE_FLAG_NVSYNC);
DRM_MODE_FLAG_NHSYNC |
DRM_MODE_FLAG_PVSYNC |
DRM_MODE_FLAG_NVSYNC);
- pipe_config->
base
.adjusted_mode.flags |= intel_crt_get_flags(encoder);
+ pipe_config->
hw
.adjusted_mode.flags |= intel_crt_get_flags(encoder);
- pipe_config->
base
.adjusted_mode.crtc_clock = lpt_get_iclkip(dev_priv);
+ pipe_config->
hw
.adjusted_mode.crtc_clock = lpt_get_iclkip(dev_priv);
}
/* Note: The caller is required to filter out dpms modes not supported by the
}
/* Note: The caller is required to filter out dpms modes not supported by the
@@
-161,8
+161,8
@@
static void intel_crt_set_dpms(struct intel_encoder *encoder,
{
struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
struct intel_crt *crt = intel_encoder_to_crt(encoder);
{
struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
struct intel_crt *crt = intel_encoder_to_crt(encoder);
- struct intel_crtc *crtc = to_intel_crtc(crtc_state->
base
.crtc);
- const struct drm_display_mode *adjusted_mode = &crtc_state->
base
.adjusted_mode;
+ struct intel_crtc *crtc = to_intel_crtc(crtc_state->
uapi
.crtc);
+ const struct drm_display_mode *adjusted_mode = &crtc_state->
hw
.adjusted_mode;
u32 adpa;
if (INTEL_GEN(dev_priv) >= 5)
u32 adpa;
if (INTEL_GEN(dev_priv) >= 5)
@@
-241,6
+241,14
@@
static void hsw_post_disable_crt(struct intel_encoder *encoder,
{
struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
{
struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
+ intel_crtc_vblank_off(old_crtc_state);
+
+ intel_disable_pipe(old_crtc_state);
+
+ intel_ddi_disable_transcoder_func(old_crtc_state);
+
+ ilk_pfit_disable(old_crtc_state);
+
intel_ddi_disable_pipe_clock(old_crtc_state);
pch_post_disable_crt(encoder, old_crtc_state, old_conn_state);
intel_ddi_disable_pipe_clock(old_crtc_state);
pch_post_disable_crt(encoder, old_crtc_state, old_conn_state);
@@
-271,14
+279,14
@@
static void hsw_pre_enable_crt(struct intel_encoder *encoder,
const struct drm_connector_state *conn_state)
{
struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
const struct drm_connector_state *conn_state)
{
struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
- struct intel_crtc *crtc = to_intel_crtc(crtc_state->
base
.crtc);
+ struct intel_crtc *crtc = to_intel_crtc(crtc_state->
uapi
.crtc);
enum pipe pipe = crtc->pipe;
WARN_ON(!crtc_state->has_pch_encoder);
intel_set_cpu_fifo_underrun_reporting(dev_priv, pipe, false);
enum pipe pipe = crtc->pipe;
WARN_ON(!crtc_state->has_pch_encoder);
intel_set_cpu_fifo_underrun_reporting(dev_priv, pipe, false);
-
dev_priv->display.fdi_link_train(crtc
, crtc_state);
+
hsw_fdi_link_train(encoder
, crtc_state);
intel_ddi_enable_pipe_clock(crtc_state);
}
intel_ddi_enable_pipe_clock(crtc_state);
}
@@
-288,7
+296,7
@@
static void hsw_enable_crt(struct intel_encoder *encoder,
const struct drm_connector_state *conn_state)
{
struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
const struct drm_connector_state *conn_state)
{
struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
- struct intel_crtc *crtc = to_intel_crtc(crtc_state->
base
.crtc);
+ struct intel_crtc *crtc = to_intel_crtc(crtc_state->
uapi
.crtc);
enum pipe pipe = crtc->pipe;
WARN_ON(!crtc_state->has_pch_encoder);
enum pipe pipe = crtc->pipe;
WARN_ON(!crtc_state->has_pch_encoder);
@@
-343,7
+351,7
@@
intel_crt_mode_valid(struct drm_connector *connector,
/* The FDI receiver on LPT only supports 8bpc and only has 2 lanes. */
if (HAS_PCH_LPT(dev_priv) &&
/* The FDI receiver on LPT only supports 8bpc and only has 2 lanes. */
if (HAS_PCH_LPT(dev_priv) &&
-
(ironlake_get_lanes_required(mode->clock, 270000, 24) > 2)
)
+
ilk_get_lanes_required(mode->clock, 270000, 24) > 2
)
return MODE_CLOCK_HIGH;
/* HSW/BDW FDI limited to 4k */
return MODE_CLOCK_HIGH;
/* HSW/BDW FDI limited to 4k */
@@
-358,7
+366,7
@@
static int intel_crt_compute_config(struct intel_encoder *encoder,
struct drm_connector_state *conn_state)
{
struct drm_display_mode *adjusted_mode =
struct drm_connector_state *conn_state)
{
struct drm_display_mode *adjusted_mode =
- &pipe_config->
base
.adjusted_mode;
+ &pipe_config->
hw
.adjusted_mode;
if (adjusted_mode->flags & DRM_MODE_FLAG_DBLSCAN)
return -EINVAL;
if (adjusted_mode->flags & DRM_MODE_FLAG_DBLSCAN)
return -EINVAL;
@@
-373,7
+381,7
@@
static int pch_crt_compute_config(struct intel_encoder *encoder,
struct drm_connector_state *conn_state)
{
struct drm_display_mode *adjusted_mode =
struct drm_connector_state *conn_state)
{
struct drm_display_mode *adjusted_mode =
- &pipe_config->
base
.adjusted_mode;
+ &pipe_config->
hw
.adjusted_mode;
if (adjusted_mode->flags & DRM_MODE_FLAG_DBLSCAN)
return -EINVAL;
if (adjusted_mode->flags & DRM_MODE_FLAG_DBLSCAN)
return -EINVAL;
@@
-390,7
+398,7
@@
static int hsw_crt_compute_config(struct intel_encoder *encoder,
{
struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
struct drm_display_mode *adjusted_mode =
{
struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
struct drm_display_mode *adjusted_mode =
- &pipe_config->
base
.adjusted_mode;
+ &pipe_config->
hw
.adjusted_mode;
if (adjusted_mode->flags & DRM_MODE_FLAG_DBLSCAN)
return -EINVAL;
if (adjusted_mode->flags & DRM_MODE_FLAG_DBLSCAN)
return -EINVAL;
@@
-419,7
+427,7
@@
static int hsw_crt_compute_config(struct intel_encoder *encoder,
return 0;
}
return 0;
}
-static bool i
ntel_ironlake
_crt_detect_hotplug(struct drm_connector *connector)
+static bool i
lk
_crt_detect_hotplug(struct drm_connector *connector)
{
struct drm_device *dev = connector->dev;
struct intel_crt *crt = intel_attached_crt(connector);
{
struct drm_device *dev = connector->dev;
struct intel_crt *crt = intel_attached_crt(connector);
@@
-527,7
+535,7
@@
static bool intel_crt_detect_hotplug(struct drm_connector *connector)
int i, tries = 0;
if (HAS_PCH_SPLIT(dev_priv))
int i, tries = 0;
if (HAS_PCH_SPLIT(dev_priv))
- return i
ntel_ironlake
_crt_detect_hotplug(connector);
+ return i
lk
_crt_detect_hotplug(connector);
if (IS_VALLEYVIEW(dev_priv))
return valleyview_crt_detect_hotplug(connector);
if (IS_VALLEYVIEW(dev_priv))
return valleyview_crt_detect_hotplug(connector);