Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 282514
b: refs/heads/master
c: 75e9d01
h: refs/heads/master
v: v3
  • Loading branch information
Patrik Jakobsson authored and Dave Airlie committed Dec 20, 2011
1 parent ce3ef59 commit 9da28f0
Show file tree
Hide file tree
Showing 3 changed files with 33 additions and 16 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 9e38a66171a297f150a0332469ca3f186f2766da
refs/heads/master: 75e9d019d5625032b708576e02e025c79e04ae44
7 changes: 7 additions & 0 deletions trunk/drivers/gpu/drm/gma500/psb_intel_display.c
Original file line number Diff line number Diff line change
Expand Up @@ -1429,3 +1429,10 @@ struct drm_encoder *psb_intel_best_encoder(struct drm_connector *connector)
return &psb_intel_output->enc;
}

void psb_intel_connector_attach_encoder(struct psb_intel_connector *connector,
struct psb_intel_encoder *encoder)
{
connector->encoder = encoder;
drm_mode_connector_attach_encoder(&connector->base,
&encoder->base);
}
40 changes: 25 additions & 15 deletions trunk/drivers/gpu/drm/gma500/psb_intel_drv.h
Original file line number Diff line number Diff line change
Expand Up @@ -93,19 +93,19 @@ struct psb_intel_i2c_chan {
u8 slave_addr;
};

struct psb_intel_output {
struct drm_connector base;

struct drm_encoder enc;
struct psb_intel_encoder {
struct drm_encoder base;
int type;
bool needs_tv_clock;
void (*hot_plug)(struct psb_intel_encoder *);
int crtc_mask;
int clone_mask;
void *dev_priv; /* For sdvo_priv, lvds_priv, etc... */
};

struct psb_intel_i2c_chan *i2c_bus; /* for control functions */
struct psb_intel_i2c_chan *ddc_bus; /* for DDC only stuff */
bool load_detect_temp;
void *dev_priv;

struct psb_intel_mode_device *mode_dev;
struct i2c_adapter *hdmi_i2c_adapter; /* for control functions */
struct psb_intel_connector {
struct drm_connector base;
struct psb_intel_encoder *encoder;
};

struct psb_intel_crtc_state {
Expand Down Expand Up @@ -156,10 +156,10 @@ struct psb_intel_crtc {

#define to_psb_intel_crtc(x) \
container_of(x, struct psb_intel_crtc, base)
#define to_psb_intel_output(x) \
container_of(x, struct psb_intel_output, base)
#define enc_to_psb_intel_output(x) \
container_of(x, struct psb_intel_output, enc)
#define to_psb_intel_connector(x) \
container_of(x, struct psb_intel_connector, base)
#define to_psb_intel_encoder(x) \
container_of(x, struct psb_intel_encoder, base)
#define to_psb_intel_framebuffer(x) \
container_of(x, struct psb_intel_framebuffer, base)

Expand Down Expand Up @@ -190,6 +190,16 @@ extern void psb_intel_crtc_load_lut(struct drm_crtc *crtc);
extern void psb_intel_encoder_prepare(struct drm_encoder *encoder);
extern void psb_intel_encoder_commit(struct drm_encoder *encoder);

static inline struct psb_intel_encoder *psb_intel_attached_encoder(
struct drm_connector *connector)
{
return to_psb_intel_connector(connector)->encoder;
}

extern void psb_intel_connector_attach_encoder(
struct psb_intel_connector *connector,
struct psb_intel_encoder *encoder);

extern struct drm_encoder *psb_intel_best_encoder(struct drm_connector
*connector);

Expand Down

0 comments on commit 9da28f0

Please sign in to comment.