aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu
diff options
context:
space:
mode:
authorThomas Hellstrom <thellstrom@vmware.com>2011-10-22 04:36:19 -0400
committerDave Airlie <airlied@redhat.com>2011-11-01 12:01:42 -0400
commita7331e5cb2cc680ac30337cec5299956a8454ced (patch)
tree8a56f07f946f40fbbfda5c9c66cdac2e2dc65b72 /drivers/gpu
parent094803e0aab3fe75bbf8202a8f4b5280eaade375 (diff)
drm: Introduce "Virtual" connectors and encoders
This will allow us to attach various properties specific to virtual monitors in the future. Note that we don't export an EDID property for "Virtual" connectors. Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com> Reviewed-by: Jakob Bornecrantz <jakob@vmware.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu')
-rw-r--r--drivers/gpu/drm/drm_crtc.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/gpu/drm/drm_crtc.c b/drivers/gpu/drm/drm_crtc.c
index fe738f05309b..f3ef654fd268 100644
--- a/drivers/gpu/drm/drm_crtc.c
+++ b/drivers/gpu/drm/drm_crtc.c
@@ -162,6 +162,7 @@ static struct drm_conn_prop_enum_list drm_connector_enum_list[] =
162 { DRM_MODE_CONNECTOR_HDMIB, "HDMI-B", 0 }, 162 { DRM_MODE_CONNECTOR_HDMIB, "HDMI-B", 0 },
163 { DRM_MODE_CONNECTOR_TV, "TV", 0 }, 163 { DRM_MODE_CONNECTOR_TV, "TV", 0 },
164 { DRM_MODE_CONNECTOR_eDP, "eDP", 0 }, 164 { DRM_MODE_CONNECTOR_eDP, "eDP", 0 },
165 { DRM_MODE_CONNECTOR_VIRTUAL, "Virtual", 0},
165}; 166};
166 167
167static struct drm_prop_enum_list drm_encoder_enum_list[] = 168static struct drm_prop_enum_list drm_encoder_enum_list[] =
@@ -170,6 +171,7 @@ static struct drm_prop_enum_list drm_encoder_enum_list[] =
170 { DRM_MODE_ENCODER_TMDS, "TMDS" }, 171 { DRM_MODE_ENCODER_TMDS, "TMDS" },
171 { DRM_MODE_ENCODER_LVDS, "LVDS" }, 172 { DRM_MODE_ENCODER_LVDS, "LVDS" },
172 { DRM_MODE_ENCODER_TVDAC, "TV" }, 173 { DRM_MODE_ENCODER_TVDAC, "TV" },
174 { DRM_MODE_ENCODER_VIRTUAL, "Virtual" },
173}; 175};
174 176
175char *drm_get_encoder_name(struct drm_encoder *encoder) 177char *drm_get_encoder_name(struct drm_encoder *encoder)
@@ -463,8 +465,10 @@ void drm_connector_init(struct drm_device *dev,
463 list_add_tail(&connector->head, &dev->mode_config.connector_list); 465 list_add_tail(&connector->head, &dev->mode_config.connector_list);
464 dev->mode_config.num_connector++; 466 dev->mode_config.num_connector++;
465 467
466 drm_connector_attach_property(connector, 468 if (connector_type != DRM_MODE_CONNECTOR_VIRTUAL)
467 dev->mode_config.edid_property, 0); 469 drm_connector_attach_property(connector,
470 dev->mode_config.edid_property,
471 0);
468 472
469 drm_connector_attach_property(connector, 473 drm_connector_attach_property(connector,
470 dev->mode_config.dpms_property, 0); 474 dev->mode_config.dpms_property, 0);