The existing TV connector types are often unsuitable either because
there is no way to probe them until they're actually plugged in or
because they can change during run time (e.g. 7-pin DIN connectors
that behave as S-Video, Component, Composite or SCART depending on the
adaptor plugged in).

Signed-off-by: Francisco Jerez <curroje...@riseup.net>
---
 drivers/gpu/drm/drm_crtc.c  |    1 +
 drivers/gpu/drm/drm_sysfs.c |    3 +++
 include/drm/drm_mode.h      |    1 +
 3 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/drivers/gpu/drm/drm_crtc.c b/drivers/gpu/drm/drm_crtc.c
index 8fab789..9421a14 100644
--- a/drivers/gpu/drm/drm_crtc.c
+++ b/drivers/gpu/drm/drm_crtc.c
@@ -146,6 +146,7 @@ static struct drm_conn_prop_enum_list 
drm_connector_enum_list[] =
        { DRM_MODE_CONNECTOR_DisplayPort, "DisplayPort", 0 },
        { DRM_MODE_CONNECTOR_HDMIA, "HDMI Type A", 0 },
        { DRM_MODE_CONNECTOR_HDMIB, "HDMI Type B", 0 },
+       { DRM_MODE_CONNECTOR_TV, "TV", 0 },
 };
 
 static struct drm_prop_enum_list drm_encoder_enum_list[] =
diff --git a/drivers/gpu/drm/drm_sysfs.c b/drivers/gpu/drm/drm_sysfs.c
index 85ec31b..adc1794 100644
--- a/drivers/gpu/drm/drm_sysfs.c
+++ b/drivers/gpu/drm/drm_sysfs.c
@@ -247,6 +247,7 @@ static ssize_t subconnector_show(struct device *device,
                case DRM_MODE_CONNECTOR_Composite:
                case DRM_MODE_CONNECTOR_SVIDEO:
                case DRM_MODE_CONNECTOR_Component:
+               case DRM_MODE_CONNECTOR_TV:
                        prop = dev->mode_config.tv_subconnector_property;
                        is_tv = 1;
                        break;
@@ -287,6 +288,7 @@ static ssize_t select_subconnector_show(struct device 
*device,
                case DRM_MODE_CONNECTOR_Composite:
                case DRM_MODE_CONNECTOR_SVIDEO:
                case DRM_MODE_CONNECTOR_Component:
+               case DRM_MODE_CONNECTOR_TV:
                        prop = dev->mode_config.tv_select_subconnector_property;
                        is_tv = 1;
                        break;
@@ -385,6 +387,7 @@ int drm_sysfs_connector_add(struct drm_connector *connector)
                case DRM_MODE_CONNECTOR_Composite:
                case DRM_MODE_CONNECTOR_SVIDEO:
                case DRM_MODE_CONNECTOR_Component:
+               case DRM_MODE_CONNECTOR_TV:
                        for (i = 0; i < ARRAY_SIZE(connector_attrs_opt1); i++) {
                                ret = device_create_file(&connector->kdev, 
&connector_attrs_opt1[i]);
                                if (ret)
diff --git a/include/drm/drm_mode.h b/include/drm/drm_mode.h
index ae304cc..c51e9f5 100644
--- a/include/drm/drm_mode.h
+++ b/include/drm/drm_mode.h
@@ -155,6 +155,7 @@ struct drm_mode_get_encoder {
 #define DRM_MODE_CONNECTOR_DisplayPort 10
 #define DRM_MODE_CONNECTOR_HDMIA       11
 #define DRM_MODE_CONNECTOR_HDMIB       12
+#define DRM_MODE_CONNECTOR_TV          13
 
 struct drm_mode_get_connector {
 
-- 
1.6.3.3


------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
--
_______________________________________________
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to