提交 ba84cd1f 编写于 作者: C Chris Wilson

drm/i915/sdvo: Always add a 30ms delay to make SDVO TV detection reliable

Commit d09c23de intended to add a 30ms delay to give the ADD time to
detect any TVs connected. However, it used the sdvo->is_tv flag to do so
which is dependent upon the previous detection result and not whether the
output supports TVs.
Signed-off-by: NChris Wilson <chris@chris-wilson.co.uk>
Cc: stable@kernel.org
上级 cc840f77
...@@ -1377,10 +1377,12 @@ intel_sdvo_detect(struct drm_connector *connector, bool force) ...@@ -1377,10 +1377,12 @@ intel_sdvo_detect(struct drm_connector *connector, bool force)
if (!intel_sdvo_write_cmd(intel_sdvo, if (!intel_sdvo_write_cmd(intel_sdvo,
SDVO_CMD_GET_ATTACHED_DISPLAYS, NULL, 0)) SDVO_CMD_GET_ATTACHED_DISPLAYS, NULL, 0))
return connector_status_unknown; return connector_status_unknown;
if (intel_sdvo->is_tv) {
/* add 30ms delay when the output type is SDVO-TV */ /* add 30ms delay when the output type might be TV */
if (intel_sdvo->caps.output_flags &
(SDVO_OUTPUT_SVID0 | SDVO_OUTPUT_CVBS0))
mdelay(30); mdelay(30);
}
if (!intel_sdvo_read_response(intel_sdvo, &response, 2)) if (!intel_sdvo_read_response(intel_sdvo, &response, 2))
return connector_status_unknown; return connector_status_unknown;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册