diff options
author | Jani Nikula <jani.nikula@intel.com> | 2016-06-13 12:30:07 +0300 |
---|---|---|
committer | Jani Nikula <jani.nikula@intel.com> | 2016-06-29 17:41:50 +0300 |
commit | bb9c1b976150f62e36165eb4af2afe4c66533d08 (patch) | |
tree | 5075378995baf1873b0afea1cc23fc5866e0acaf /drivers/gpu/drm/i915/intel_opregion.c | |
parent | c37f7f57cc6ea2e74fc2c73c845c7555b846e05a (diff) | |
download | linux-stable-bb9c1b976150f62e36165eb4af2afe4c66533d08.tar.gz linux-stable-bb9c1b976150f62e36165eb4af2afe4c66533d08.tar.bz2 linux-stable-bb9c1b976150f62e36165eb4af2afe4c66533d08.zip |
drm/i915/opregion: handle missing connector types for acpi display types
Most notably eDP, DSI, and TV. Add MISSING_CASE handling so we won't
miss this in the future.
Reviewed-and-tested-by: Peter Wu <peter@lekensteyn.nl>
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/5773794027ea0d699052a343491b52343ba30504.1465810007.git.jani.nikula@intel.com
Diffstat (limited to 'drivers/gpu/drm/i915/intel_opregion.c')
-rw-r--r-- | drivers/gpu/drm/i915/intel_opregion.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/drivers/gpu/drm/i915/intel_opregion.c b/drivers/gpu/drm/i915/intel_opregion.c index 108cfbf65931..82e687dd09c3 100644 --- a/drivers/gpu/drm/i915/intel_opregion.c +++ b/drivers/gpu/drm/i915/intel_opregion.c @@ -676,7 +676,7 @@ static void set_did(struct intel_opregion *opregion, int i, u32 val) static u32 acpi_display_type(struct drm_connector *connector) { - u32 display_type = ACPI_DISPLAY_TYPE_OTHER; + u32 display_type; switch (connector->connector_type) { case DRM_MODE_CONNECTOR_VGA: @@ -687,6 +687,7 @@ static u32 acpi_display_type(struct drm_connector *connector) case DRM_MODE_CONNECTOR_SVIDEO: case DRM_MODE_CONNECTOR_Component: case DRM_MODE_CONNECTOR_9PinDIN: + case DRM_MODE_CONNECTOR_TV: display_type = ACPI_DISPLAY_TYPE_TV; break; case DRM_MODE_CONNECTOR_DVII: @@ -697,8 +698,18 @@ static u32 acpi_display_type(struct drm_connector *connector) display_type = ACPI_DISPLAY_TYPE_EXTERNAL_DIGITAL; break; case DRM_MODE_CONNECTOR_LVDS: + case DRM_MODE_CONNECTOR_eDP: + case DRM_MODE_CONNECTOR_DSI: display_type = ACPI_DISPLAY_TYPE_INTERNAL_DIGITAL; break; + case DRM_MODE_CONNECTOR_Unknown: + case DRM_MODE_CONNECTOR_VIRTUAL: + display_type = ACPI_DISPLAY_TYPE_OTHER; + break; + default: + MISSING_CASE(connector->connector_type); + display_type = ACPI_DISPLAY_TYPE_OTHER; + break; } return display_type; |