drm/amdgpu: skip TV/CV in display parsing
authorAlex Deucher <alexander.deucher@amd.com>
Wed, 24 Aug 2016 17:04:15 +0000 (13:04 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 7 Sep 2016 06:32:42 +0000 (08:32 +0200)
commit 611a1507fe8569ce1adab3abc982ea58ab559fb9 upstream.

No asics supported by amdgpu support analog TV.

Workaround for bug:
https://bugs.freedesktop.org/show_bug.cgi?id=97460

Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c

index 7c9848c9b71c47371dc6ab5983d67bb1e51a2f5d..51a9942cdb40f48044b85e98fef482b20bf9d6b8 100644 (file)
@@ -331,6 +331,13 @@ bool amdgpu_atombios_get_connector_info_from_object_table(struct amdgpu_device *
                            (le16_to_cpu(path->usConnObjectId) &
                             OBJECT_TYPE_MASK) >> OBJECT_TYPE_SHIFT;
 
+                       /* Skip TV/CV support */
+                       if ((le16_to_cpu(path->usDeviceTag) ==
+                            ATOM_DEVICE_TV1_SUPPORT) ||
+                           (le16_to_cpu(path->usDeviceTag) ==
+                            ATOM_DEVICE_CV_SUPPORT))
+                               continue;
+
                        if (con_obj_id >= ARRAY_SIZE(object_connector_convert)) {
                                DRM_ERROR("invalid con_obj_id %d for device tag 0x%04x\n",
                                          con_obj_id, le16_to_cpu(path->usDeviceTag));