aboutsummaryrefslogtreecommitdiffstats
path: root/include/drm
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2011-10-10 15:05:21 -0400
committerDave Airlie <airlied@redhat.com>2011-10-10 15:05:21 -0400
commit62addcb8c188eaa28968e27a02518404939851d7 (patch)
tree265f431c92c2c677474e390ada03397c56850a5b /include/drm
parent5438ae88d098c086cfb94be5327c49a04fc6bfd7 (diff)
parent64a742fac3a22f57303d8f1b7e347350a1c48254 (diff)
Merge branch 'drm-intel-next' of git://people.freedesktop.org/~keithp/linux into drm-core-next
* 'drm-intel-next' of git://people.freedesktop.org/~keithp/linux: drm/i915: Dumb down the semaphore logic drm/i915: pass ELD to HDMI/DP audio driver drm: support routines for HDMI/DP ELD drm/i915: Enable dither whenever display bpc < frame buffer bpc drm/i915: Enable dither whenever display bpc < frame buffer bpc
Diffstat (limited to 'include/drm')
-rw-r--r--include/drm/drm_crtc.h9
-rw-r--r--include/drm/drm_edid.h9
2 files changed, 18 insertions, 0 deletions
diff --git a/include/drm/drm_crtc.h b/include/drm/drm_crtc.h
index 44335e57eaaa..802079809282 100644
--- a/include/drm/drm_crtc.h
+++ b/include/drm/drm_crtc.h
@@ -466,6 +466,8 @@ enum drm_connector_force {
466/* DACs should rarely do this without a lot of testing */ 466/* DACs should rarely do this without a lot of testing */
467#define DRM_CONNECTOR_POLL_DISCONNECT (1 << 2) 467#define DRM_CONNECTOR_POLL_DISCONNECT (1 << 2)
468 468
469#define MAX_ELD_BYTES 128
470
469/** 471/**
470 * drm_connector - central DRM connector control structure 472 * drm_connector - central DRM connector control structure
471 * @crtc: CRTC this connector is currently connected to, NULL if none 473 * @crtc: CRTC this connector is currently connected to, NULL if none
@@ -523,6 +525,13 @@ struct drm_connector {
523 uint32_t force_encoder_id; 525 uint32_t force_encoder_id;
524 struct drm_encoder *encoder; /* currently active encoder */ 526 struct drm_encoder *encoder; /* currently active encoder */
525 527
528 /* EDID bits */
529 uint8_t eld[MAX_ELD_BYTES];
530 bool dvi_dual;
531 int max_tmds_clock; /* in MHz */
532 bool latency_present[2];
533 int video_latency[2]; /* [0]: progressive, [1]: interlaced */
534 int audio_latency[2];
526 int null_edid_counter; /* needed to workaround some HW bugs where we get all 0s */ 535 int null_edid_counter; /* needed to workaround some HW bugs where we get all 0s */
527}; 536};
528 537
diff --git a/include/drm/drm_edid.h b/include/drm/drm_edid.h
index eacb415b309a..74ce91684629 100644
--- a/include/drm/drm_edid.h
+++ b/include/drm/drm_edid.h
@@ -230,4 +230,13 @@ struct edid {
230 230
231#define EDID_PRODUCT_ID(e) ((e)->prod_code[0] | ((e)->prod_code[1] << 8)) 231#define EDID_PRODUCT_ID(e) ((e)->prod_code[0] | ((e)->prod_code[1] << 8))
232 232
233struct drm_encoder;
234struct drm_connector;
235struct drm_display_mode;
236void drm_edid_to_eld(struct drm_connector *connector, struct edid *edid);
237int drm_av_sync_delay(struct drm_connector *connector,
238 struct drm_display_mode *mode);
239struct drm_connector *drm_select_eld(struct drm_encoder *encoder,
240 struct drm_display_mode *mode);
241
233#endif /* __DRM_EDID_H__ */ 242#endif /* __DRM_EDID_H__ */