Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 329423
b: refs/heads/master
c: b1dc332
h: refs/heads/master
i:
  329421: a6cf7a6
  329419: f193e05
  329415: 48ff80b
  329407: c9e6e4d
v: v3
  • Loading branch information
Daniel Vetter committed Sep 6, 2012
1 parent 50cd696 commit 2e8552d
Show file tree
Hide file tree
Showing 2 changed files with 29 additions and 1 deletion.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 9a8ee983e0b77a8b07d3f20a7627202e5f9a7ba5
refs/heads/master: b1dc332c4d1524fe5d901ca91aa4c4e776526b4f
28 changes: 28 additions & 0 deletions trunk/drivers/gpu/drm/i915/intel_lvds.c
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,32 @@ static struct intel_lvds *intel_attached_lvds(struct drm_connector *connector)
struct intel_lvds, base);
}

static bool intel_lvds_get_hw_state(struct intel_encoder *encoder,
enum pipe *pipe)
{
struct drm_device *dev = encoder->base.dev;
struct drm_i915_private *dev_priv = dev->dev_private;
u32 lvds_reg, tmp;

if (HAS_PCH_SPLIT(dev)) {
lvds_reg = PCH_LVDS;
} else {
lvds_reg = LVDS;
}

tmp = I915_READ(lvds_reg);

if (!(tmp & LVDS_PORT_EN))
return false;

if (HAS_PCH_CPT(dev))
*pipe = PORT_TO_PIPE_CPT(tmp);
else
*pipe = PORT_TO_PIPE(tmp);

return true;
}

/**
* Sets the power state for the panel.
*/
Expand Down Expand Up @@ -937,6 +963,8 @@ bool intel_lvds_init(struct drm_device *dev)

intel_encoder->enable = intel_enable_lvds;
intel_encoder->disable = intel_disable_lvds;
intel_encoder->get_hw_state = intel_lvds_get_hw_state;
intel_connector->get_hw_state = intel_connector_get_hw_state;

intel_connector_attach_encoder(intel_connector, intel_encoder);
intel_encoder->type = INTEL_OUTPUT_LVDS;
Expand Down

0 comments on commit 2e8552d

Please sign in to comment.