[Intel-gfx] [PATCH 1/7] drm/i915: Detect SDVO/HDMI output always based on SDVO_B detection bit
ykzhao
yakui.zhao at intel.com
Mon Aug 24 08:10:09 CEST 2009
On Mon, 2009-08-24 at 13:50 +0800, yakui.zhao at intel.com wrote:
> From: Ma Ling <ling.ma at intel.com>
>
> After the following commit is shipped, the SDVO C detection will depend on
> the SDVO_C/DP detion bit.
> commit 13520b051e8888dd3af9bda639d83e7df76613d1
> Author: Kristian Høgsberg <krh at redhat.com>
> Date: Fri Mar 13 15:42:14 2009 -0400
>
> drm/i915: Read the right SDVO register when detecting SVDO/HDMI.
>
> In fact it is incorrect. According to the spec we should continue to
> detect the SDVO_B/C based on the SDVO_B detection bit.
> Of course the detection bit is defined in G4X platform. But it is for
> the HDMI_C detection rather than SDVO_C detection.
Hi, Eric
Will you please pick up this patch set? Several bugs of high priority
are blocked by the patch set(22891/22247).
1. fix the issue about SDVO C detection on G4x platform (This is a
regression)
2. Set crtc/clone mask in different output devices. This will be
set in the initialization of every output device. In such case we can
set the crtc/clone mask correctly. And this patch is to avoid that one
pipe is shared by two HDMIs.
3. Set the TV_format based on connector type(integrated TV)
When the connector type is S-video/composite, we had better use
the TV format that is for component. And we can get the correct
modeline.
4. Enable PAL/SCEAM TV and add the property for SDVO TV
Add the support of PAL/SCEAM for SDVO TV. At the same time the
property is also added for SDVO TV
5. Sync about SDVO multiplier on G33 platfom between UMS and KMS
6. Add the window control property for SDVO-TV. (of course the
brightness/contrast/hue/saturation properties are also added for
SDVO-TV). This is realized by using the picture enhancements SDVO
command.
7. Add the brightness property for SDVO-LVDS. When the brightness
enhancement is supported for SDVO-LVDS, we will add the property for it.
Thanks.
Yakui
>
> https://bugs.freedesktop.org/show_bug.cgi?id=20639
>
> Signed-off-by: Ma Ling <ling.ma at intel.com>
> Acked-by: Zhao Yakui <yakui.zhao at intel.com>
> ---
> drivers/gpu/drm/i915/intel_display.c | 18 +++++++++---------
> 1 file changed, 9 insertions(+), 9 deletions(-)
>
> Index: linux-2.6/drivers/gpu/drm/i915/intel_display.c
> ===================================================================
> --- linux-2.6.orig/drivers/gpu/drm/i915/intel_display.c 2009-08-21 16:30:34.000000000 +0800
> +++ linux-2.6/drivers/gpu/drm/i915/intel_display.c 2009-08-21 16:31:41.000000000 +0800
> @@ -3218,30 +3218,30 @@
> intel_dp_init(dev, PCH_DP_D);
>
> } else if (IS_I9XX(dev)) {
> - int found;
> - u32 reg;
> + bool found = false;
>
> if (I915_READ(SDVOB) & SDVO_DETECTED) {
> found = intel_sdvo_init(dev, SDVOB);
> if (!found && SUPPORTS_INTEGRATED_HDMI(dev))
> intel_hdmi_init(dev, SDVOB);
> +
> if (!found && SUPPORTS_INTEGRATED_DP(dev))
> intel_dp_init(dev, DP_B);
> }
>
> /* Before G4X SDVOC doesn't have its own detect register */
> - if (IS_G4X(dev))
> - reg = SDVOC;
> - else
> - reg = SDVOB;
>
> - if (I915_READ(reg) & SDVO_DETECTED) {
> + if (I915_READ(SDVOB) & SDVO_DETECTED)
> found = intel_sdvo_init(dev, SDVOC);
> - if (!found && SUPPORTS_INTEGRATED_HDMI(dev))
> +
> + if (!found && (I915_READ(SDVOC) & SDVO_DETECTED)) {
> +
> + if (SUPPORTS_INTEGRATED_HDMI(dev))
> intel_hdmi_init(dev, SDVOC);
> - if (!found && SUPPORTS_INTEGRATED_DP(dev))
> + if (SUPPORTS_INTEGRATED_DP(dev))
> intel_dp_init(dev, DP_C);
> }
> +
> if (SUPPORTS_INTEGRATED_DP(dev) && (I915_READ(DP_D) & DP_DETECTED))
> intel_dp_init(dev, DP_D);
> } else
More information about the Intel-gfx
mailing list