[Bug 55121] Limited color range on screen that is connected via HDMI [SandyBridge]

bugzilla-daemon at bugzilla.kernel.org bugzilla-daemon at bugzilla.kernel.org
Wed Apr 10 06:51:54 PDT 2013


https://bugzilla.kernel.org/show_bug.cgi?id=55121


Ville Syrjala <ville.syrjala at linux.intel.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |ville.syrjala at linux.intel.c
                   |                            |om




--- Comment #6 from Ville Syrjala <ville.syrjala at linux.intel.com>  2013-04-10 13:51:53 ---
(In reply to comment #4)
> Here is the section regarding HDMI black levels from monitor manual:
> 
> HDMI Black Level When watching with a DVD or set-top box connecting to the
> product via HDMI, image quality deterioration (black level, lower-quality
> contrast, lighter color tone, etc.) may occur depending on the connected
> external device.
> •<Normal>
> •<Low>
> This function is active only when the external device is connected via <HDMI>.
> The <HDMI Black Level> function may not be compatible with all external
> devices.
> 
> It defaults to Normal (AFAIK it represents the full range mode) and it worked
> before this commit.
> 
> So, somehow "Automatic" mode for the "Broadcast RGB" property defaults to
> limited range output even though full range mode is supported.

As stated in the commit message, the logic selects limited range when a CE
video mode is used. And your monitor's preferred mode just happens to be one of
these CE video modes, so there you have it.

Some monitors/TVs don't even allow you to change the setting from the OSD when
a CE video mode is used (my TV is like this), so following the spec is pretty
much the only option we have to guarantee that we see the expected result with
most displays. In your case your monitor apparently allows you to change the
setting even when using a CE video mode.

Unfortunately your monitor doesn't support another feature that would allow it
to detect which setting is used by the source device, so you must manually
choose the matching option from the OSD. And for some reason the monitor
doesn't implement the CEA spec correctly, so it gives you the wrong default
setting.

You said that you get a better picture when you configure your TV for "Low",
but you said whites are dirty. Does that mean it's still too dark or something?
I'm not 100% sure we're utilizing the 16-235 range fully, or if we're
under/overshooting the signal a bit. Unfortunately I'd need a HDMI/DP frame
grabber or some kind of analyzer to find out for sure, and I don't have such
devices currently.

> Thanks for the explanation Daniel, I had the missfortune to step on more than a
> few landmines that OEM's layed out _strictly_ following "standard" specs (ie
> ACPI tables) so I'll guess I will just wait and keep an eye out for any patches
> regarding this commit and report back if anything changes.
> 
> If Ville wants to have any patches tested against this exact case before hiting
> mainline I would be glad to help out.

Unfortunately I don't see any good way to resolve this. Your monitor just
implements the spec incorrectly, which means you have to configure such things
manually.

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
You are the assignee for the bug.


More information about the intel-gfx-bugs mailing list