Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 329419
b: refs/heads/master
c: f0947c3
h: refs/heads/master
i:
  329417: 243cd4a
  329415: 48ff80b
v: v3
  • Loading branch information
Daniel Vetter committed Sep 6, 2012
1 parent 85469cd commit f193e05
Show file tree
Hide file tree
Showing 3 changed files with 20 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: 08a48469691a1b9ed6ee92e726b66d4e59ffc253
refs/heads/master: f0947c376f6944ade7079df9f84bbc958a893e0f
11 changes: 11 additions & 0 deletions trunk/drivers/gpu/drm/i915/intel_display.c
Original file line number Diff line number Diff line change
Expand Up @@ -3584,6 +3584,17 @@ void intel_connector_dpms(struct drm_connector *connector, int mode)
encoder->connectors_active = false;
}

/* Simple connector->get_hw_state implementation for encoders that support only
* one connector and no cloning and hence the encoder state determines the state
* of the connector. */
bool intel_connector_get_hw_state(struct intel_connector *connector)
{
enum pipe pipe;
struct intel_encoder *encoder = connector->encoder;

return encoder->get_hw_state(encoder, &pipe);
}

static bool intel_crtc_mode_fixup(struct drm_crtc *crtc,
const struct drm_display_mode *mode,
struct drm_display_mode *adjusted_mode)
Expand Down
8 changes: 8 additions & 0 deletions trunk/drivers/gpu/drm/i915/intel_drv.h
Original file line number Diff line number Diff line change
Expand Up @@ -144,12 +144,19 @@ struct intel_encoder {
void (*hot_plug)(struct intel_encoder *);
void (*enable)(struct intel_encoder *);
void (*disable)(struct intel_encoder *);
/* Read out the current hw state of this connector, returning true if
* the encoder is active. If the encoder is enabled it also set the pipe
* it is connected to in the pipe parameter. */
bool (*get_hw_state)(struct intel_encoder *, enum pipe *pipe);
int crtc_mask;
};

struct intel_connector {
struct drm_connector base;
struct intel_encoder *encoder;
/* Reads out the current hw, returning true if the connector is enabled
* and active (i.e. dpms ON state). */
bool (*get_hw_state)(struct intel_connector *);
};

struct intel_crtc {
Expand Down Expand Up @@ -426,6 +433,7 @@ extern void intel_encoder_disable(struct drm_encoder *encoder);
extern void intel_encoder_destroy(struct drm_encoder *encoder);
extern void intel_encoder_dpms(struct intel_encoder *encoder, int mode);
extern void intel_connector_dpms(struct drm_connector *, int mode);
extern bool intel_connector_get_hw_state(struct intel_connector *connector);

static inline struct intel_encoder *intel_attached_encoder(struct drm_connector *connector)
{
Expand Down

0 comments on commit f193e05

Please sign in to comment.