You are not logged in.

#1 2017-04-15 15:43:21

rafal5576
Member
Registered: 2017-04-15
Posts: 7

Reduced color depth on Intel card?

Few days ago I installed fresh Arch on my laptop. After few days I noticed something is wrong with color depth for images and videos. It resembles 16-bit color depth but I am not sure this is the real problem. It is not visible much, I can see it only for small changes in color. I have Intel graphics card.

I created an image containing color gradient (https://s21.postimg.org/3zwprewt3/test.png). I can clearly see irregular slant boundaries between the colors. So I took a photo of my monitor displaying the gradient file (https://s16.postimg.org/vfn132ret/photo.png) so that you can see it too.

When I connect TV via hdmi and display the gradient then it is not perfect but much (MUCH!) better (still running the same Arch!).
The gradient looks bad for both Gnome wayland and Gnome xorg sessions.
I even replaced xf86-video-intel with xf86-video-fbdev but it didn't solve the problem.

xwininfo reports 24-bit color depth.

When I run Mint Live CD and open the same gradient file then it is perfect. I have used Mint and Ubuntu on the laptop before and there was never any problem before.

Do you have an idea how to fix it?

Last edited by rafal5576 (2017-04-15 15:46:32)

Offline

#2 2017-04-15 18:43:09

c00ter
Member
From: Alaskan in Washington State
Registered: 2014-08-28
Posts: 395

Re: Reduced color depth on Intel card?

Users of most modern (Core) Intel-only CPU/GPUs find their best rendering by removing the xf86-video-intel driver and eliminating any related configuration file from X11/xorg.conf.d/. Also, did you install the intel-code https://wiki.archlinux.org/index.php/Mi … stallation ?

Regards


UNIX was not designed to stop you from doing stupid things, because that would also stop you from doing clever things. -- Doug Gwyn

Offline

#3 2017-04-15 19:04:49

R00KIE
Forum Fellow
From: Between a computer and a chair
Registered: 2008-09-14
Posts: 4,734

Re: Reduced color depth on Intel card?

I would start by looking into your xorg log (when running a x session), you can also look at the output of xdpyinfo and eventually 'xrandr -q --verbose' although I suspect this last one will not be of much use.


R00KIE
Tm90aGluZyB0byBzZWUgaGVyZSwgbW92ZSBhbG9uZy4K

Offline

#4 2017-04-15 20:13:50

rafal5576
Member
Registered: 2017-04-15
Posts: 7

Re: Reduced color depth on Intel card?

Thanks for you replies.

1. I haven't installed microcode before. Just did it - no change.
2. Removed xf86-video-driver - still no change. BTW. It seems i915 driver from kernel was reported to have been used even when xf86-video-intel was still installed (just realized, I don't understand implications of i915 vs. xf86-video-intel).
3. I have had /etc/X11/xorg.conf.d clean.
4. xdpyinfo (do you see sth interesting? I don't):

➜  ~ xdpyinfo 
name of display:    :0
version number:    11.0
vendor string:    The X.Org Foundation
vendor release number:    11903000
X.Org version: 1.19.3
maximum request size:  16777212 bytes
motion buffer size:  256
bitmap unit, bit order, padding:    32, LSBFirst, 32
image byte order:    LSBFirst
number of supported pixmap formats:    7
supported pixmap formats:
    depth 1, bits_per_pixel 1, scanline_pad 32
    depth 4, bits_per_pixel 8, scanline_pad 32
    depth 8, bits_per_pixel 8, scanline_pad 32
    depth 15, bits_per_pixel 16, scanline_pad 32
    depth 16, bits_per_pixel 16, scanline_pad 32
    depth 24, bits_per_pixel 32, scanline_pad 32
    depth 32, bits_per_pixel 32, scanline_pad 32
keycode range:    minimum 8, maximum 255
focus:  window 0xe00007, revert to Parent
number of extensions:    29
    BIG-REQUESTS
    Composite
    DAMAGE
    DOUBLE-BUFFER
    DPMS
    DRI2
    DRI3
    GLX
    Generic Event Extension
    MIT-SCREEN-SAVER
    MIT-SHM
    Present
    RANDR
    RECORD
    RENDER
    SECURITY
    SGI-GLX
    SHAPE
    SYNC
    X-Resource
    XC-MISC
    XFIXES
    XFree86-DGA
    XFree86-VidModeExtension
    XINERAMA
    XInputExtension
    XKEYBOARD
    XTEST
    XVideo
default screen number:    0
number of screens:    1

screen #0:
  dimensions:    1366x768 pixels (361x203 millimeters)
  resolution:    96x96 dots per inch
  depths (7):    24, 1, 4, 8, 15, 16, 32
  root window id:    0xd5
  depth of root window:    24 planes
  number of colormaps:    minimum 1, maximum 1
  default colormap:    0x22
  default number of colormap cells:    256
  preallocated pixels:    black 0, white 16777215
  options:    backing-store WHEN MAPPED, save-unders NO
  largest cursor:    256x256
  current input event mask:    0xda4033
    KeyPressMask             KeyReleaseMask           EnterWindowMask          
    LeaveWindowMask          KeymapStateMask          StructureNotifyMask      
    SubstructureNotifyMask   SubstructureRedirectMask PropertyChangeMask       
    ColormapChangeMask       
  number of visuals:    40
  default visual id:  0x20
  visual:
    visual id:    0x20
    class:    TrueColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0x21
    class:    DirectColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xaf
    class:    TrueColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xb0
    class:    TrueColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xb1
    class:    TrueColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xb2
    class:    TrueColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xb3
    class:    TrueColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xb4
    class:    TrueColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xb5
    class:    TrueColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xb6
    class:    TrueColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xb7
    class:    TrueColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xb8
    class:    TrueColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xb9
    class:    TrueColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xba
    class:    TrueColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xbb
    class:    TrueColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xbc
    class:    TrueColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xbd
    class:    TrueColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xbe
    class:    TrueColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xbf
    class:    TrueColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xc0
    class:    TrueColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xc1
    class:    DirectColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xc2
    class:    DirectColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xc3
    class:    DirectColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xc4
    class:    DirectColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xc5
    class:    DirectColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xc6
    class:    DirectColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xc7
    class:    DirectColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xc8
    class:    DirectColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xc9
    class:    DirectColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xca
    class:    DirectColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xcb
    class:    DirectColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xcc
    class:    DirectColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xcd
    class:    DirectColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xce
    class:    DirectColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xcf
    class:    DirectColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xd0
    class:    DirectColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xd1
    class:    DirectColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xd2
    class:    DirectColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0xd3
    class:    DirectColor
    depth:    24 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits
  visual:
    visual id:    0x6e
    class:    TrueColor
    depth:    32 planes
    available colormap entries:    256 per subfield
    red, green, blue masks:    0xff0000, 0xff00, 0xff
    significant bits in color specification:    8 bits

5. xrandr (I think still nothing interesting):

➜  ~ xrandr -q --verbose
Screen 0: minimum 320 x 200, current 1366 x 768, maximum 8192 x 8192
XWAYLAND0 connected 1366x768+0+0 (0x22) normal (normal left inverted right x axis y axis) 340mm x 190mm
	Identifier: 0x21
	Timestamp:  13439
	Subpixel:   unknown
	Gamma:      1.0:1.0:1.0
	Brightness: 0.0
	Clones:    
	CRTC:       0
	CRTCs:      0
	Transform:  1.000000 0.000000 0.000000
	            0.000000 1.000000 0.000000
	            0.000000 0.000000 1.000000
	           filter: 
  1366x768 (0x22) 84.750MHz -HSync +VSync *current +preferred
        h: width  1366 start 1431 end 1567 total 1776 skew    0 clock  47.72KHz
        v: height  768 start  771 end  781 total  798           clock  59.80Hz

In the meantime I have read about 6-bit color being "produced" by intel gpu by default and the way to change it (xrandr ... "Broadcas RGB" "Full") but it fails to execute. It seems my gpu doesn't support this parameter even though it is 4th gen. of intel (Haswell-ULT).

Last edited by rafal5576 (2017-04-16 07:53:54)

Offline

#5 2017-04-15 21:29:35

Ropid
Member
Registered: 2015-03-09
Posts: 1,069

Re: Reduced color depth on Intel card?

That "BROADCAST_RGB" stuff is not about 6-bit vs. 8-bit color channels. It's about a washed out look when showing a picture for TV on a PC monitor. The black in the TV signal will look like a dark-gray when shown on a PC monitor, and white isn't fully white.

I can find a "Dac6Bit" Xorg config option described in "man intel" that might be interesting:

       Option "Dac6Bit" "boolean"
              Enable or disable 6-bits per RGB for 8-bit modes.

              Default: 8-bits per RGB for 8-bit modes.

I can't find any explanation about this with Google.

About what might be happening in your photo, did you know a lot of LCD panels used in monitors are really 6bit per color channel? The 8bit color range is then somewhat fake and done through the monitor making the pixels flicker between different colors. Perhaps what's happening in your photo is that this is disabled for some reason? I've seen a setting for this in the NVIDIA drivers but I couldn't find anything similar for Intel. The NVIDIA stuff looks like this:

Examples:

    Option "FlatPanelProperties" "DitheringMode = Static-2x2"

set the flat panel dithering mode to Static-2x2 on all flat panels.

    Option "FlatPanelProperties" "GPU-0.DFP-0: Dithering = Disabled; DFP-1: Dithering = Enabled, DitheringMode = Static-2x2"

set dithering to disabled on DFP-0 on GPU-0, set DFP-1's dithering to enabled and dithering mode to static 2x2.

Offline

#6 2017-04-15 22:14:42

R00KIE
Forum Fellow
From: Between a computer and a chair
Registered: 2008-09-14
Posts: 4,734

Re: Reduced color depth on Intel card?

@rafal5576
When posting the output of commands don't trim the output. You still have to show us the Xorg log (for the X session) as that might have hints as to what may be wrong.


R00KIE
Tm90aGluZyB0byBzZWUgaGVyZSwgbW92ZSBhbG9uZy4K

Offline

#7 2017-04-16 08:19:01

rafal5576
Member
Registered: 2017-04-15
Posts: 7

Re: Reduced color depth on Intel card?

@Ropid
I checked Dac6Bit with true/false but without success.
I too had suspected dithering before and had looked for any related property for intel card. I too couldn't find anything but still looking.

I created another horizontal gradient image (not diagonal). I made it perfectly horizontal so that stripes should be perfectly vertical. I zoomed the image to clearly see the change in the color. It turned out the bounday is not perfectly regular and "pixels" got bigger (few milimeters on the screen). What is more, the "pixels" are "static" - they don't flicker or change or move when I scroll zoomed image up and down - they just move as the whole image moves. It looks like it was the image with limited color range and just got zommed in so that pixels got bigger. That is of course not true because when I opened the same image on another computer I couldn't see ANY pixels (gradient is too smooth).

I don't understand it. If it was dithering it would be done on a level of physical pixel so zooming the image wouldn't make it more visible. So after all for me it still seems to be related with color depth.


@R00KIE
I have updated xpdyinfo output.

xorg log:

[    12.832] (--) Log file renamed from "/home/rafal/.local/share/xorg/Xorg.pid-650.log" to "/home/rafal/.local/share/xorg/Xorg.0.log"
[    12.832] 
X.Org X Server 1.19.3
Release Date: 2017-03-15
[    12.832] X Protocol Version 11, Revision 0
[    12.832] Build Operating System: Linux 4.9.11-1-ARCH x86_64 
[    12.832] Current Operating System: Linux lenovo 4.10.9-1-ARCH #1 SMP PREEMPT Sat Apr 8 12:39:59 CEST 2017 x86_64
[    12.832] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-linux root=UUID=9131e2bd-009d-45d8-9a69-4ef69b5dcc94 rw quiet
[    12.833] Build Date: 07 April 2017  05:42:48PM
[    12.833]  
[    12.833] Current version of pixman: 0.34.0
[    12.833] 	Before reporting problems, check http://wiki.x.org
	to make sure that you have the latest version.
[    12.833] Markers: (--) probed, (**) from config file, (==) default setting,
	(++) from command line, (!!) notice, (II) informational,
	(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[    12.833] (==) Log file: "/home/rafal/.local/share/xorg/Xorg.0.log", Time: Sun Apr 16 09:25:28 2017
[    12.834] (==) Using config directory: "/etc/X11/xorg.conf.d"
[    12.834] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[    12.835] (==) No Layout section.  Using the first Screen section.
[    12.835] (==) No screen section available. Using defaults.
[    12.835] (**) |-->Screen "Default Screen Section" (0)
[    12.835] (**) |   |-->Monitor "<default monitor>"
[    12.836] (==) No device specified for screen "Default Screen Section".
	Using the first device section listed.
[    12.836] (**) |   |-->Device "Intel Graphics"
[    12.836] (==) No monitor specified for screen "Default Screen Section".
	Using a default monitor configuration.
[    12.836] (==) Automatically adding devices
[    12.836] (==) Automatically enabling devices
[    12.836] (==) Automatically adding GPU devices
[    12.836] (==) Automatically binding GPU devices
[    12.836] (==) Max clients allowed: 256, resource mask: 0x1fffff
[    12.836] (WW) The directory "/usr/share/fonts/Type1/" does not exist.
[    12.836] 	Entry deleted from font path.
[    12.836] (WW) `fonts.dir' not found (or not valid) in "/usr/share/fonts/100dpi/".
[    12.836] 	Entry deleted from font path.
[    12.836] 	(Run 'mkfontdir' on "/usr/share/fonts/100dpi/").
[    12.836] (WW) `fonts.dir' not found (or not valid) in "/usr/share/fonts/75dpi/".
[    12.836] 	Entry deleted from font path.
[    12.836] 	(Run 'mkfontdir' on "/usr/share/fonts/75dpi/").
[    12.836] (==) FontPath set to:
	/usr/share/fonts/misc/,
	/usr/share/fonts/TTF/,
	/usr/share/fonts/OTF/
[    12.836] (==) ModulePath set to "/usr/lib/xorg/modules"
[    12.836] (II) The server relies on udev to provide the list of input devices.
	If no devices become available, reconfigure udev or disable AutoAddDevices.
[    12.837] (II) Loader magic: 0x822d60
[    12.837] (II) Module ABI versions:
[    12.837] 	X.Org ANSI C Emulation: 0.4
[    12.837] 	X.Org Video Driver: 23.0
[    12.837] 	X.Org XInput driver : 24.1
[    12.837] 	X.Org Server Extension : 10.0
[    12.838] (++) using VT number 2

[    12.840] (II) systemd-logind: took control of session /org/freedesktop/login1/session/c2
[    12.840] (II) xfree86: Adding drm device (/dev/dri/card0)
[    12.841] (II) systemd-logind: got fd for /dev/dri/card0 226:0 fd 12 paused 0
[    12.842] (--) PCI:*(0:0:2:0) 8086:0a16:17aa:380c rev 11, Mem @ 0xc0000000/4194304, 0xb0000000/268435456, I/O @ 0x00004000/64, BIOS @ 0x????????/131072
[    12.842] (WW) Open ACPI failed (/var/run/acpid.socket) (No such file or directory)
[    12.842] (II) LoadModule: "glx"
[    12.843] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so
[    12.845] (II) Module glx: vendor="X.Org Foundation"
[    12.845] 	compiled for 1.19.3, module version = 1.0.0
[    12.845] 	ABI class: X.Org Server Extension, version 10.0
[    12.845] (II) LoadModule: "intel"
[    12.845] (II) Loading /usr/lib/xorg/modules/drivers/intel_drv.so
[    12.846] (II) Module intel: vendor="X.Org Foundation"
[    12.846] 	compiled for 1.19.3, module version = 2.99.917
[    12.846] 	Module class: X.Org Video Driver
[    12.846] 	ABI class: X.Org Video Driver, version 23.0
[    12.846] (II) intel: Driver for Intel(R) Integrated Graphics Chipsets:
	i810, i810-dc100, i810e, i815, i830M, 845G, 854, 852GM/855GM, 865G,
	915G, E7221 (i915), 915GM, 945G, 945GM, 945GME, Pineview GM,
	Pineview G, 965G, G35, 965Q, 946GZ, 965GM, 965GME/GLE, G33, Q35, Q33,
	GM45, 4 Series, G45/G43, Q45/Q43, G41, B43
[    12.848] (II) intel: Driver for Intel(R) HD Graphics
[    12.848] (II) intel: Driver for Intel(R) Iris(TM) Graphics
[    12.848] (II) intel: Driver for Intel(R) Iris(TM) Pro Graphics
[    12.848] xf86EnableIOPorts: failed to set IOPL for I/O (Operation not permitted)
[    12.848] (II) intel(0): Using Kernel Mode Setting driver: i915, version 1.6.0 20161121
[    12.848] (II) intel(0): SNA compiled from 2.99.917-770-gcb6ba2da
[    12.849] (WW) VGA arbiter: cannot open kernel arbiter, no multi-card support
[    12.849] (--) intel(0): Integrated Graphics Chipset: Intel(R) HD Graphics 4400
[    12.849] (--) intel(0): CPU: x86-64, sse2, sse3, ssse3, sse4.1, sse4.2, avx, avx2; using a maximum of 2 threads
[    12.849] (II) intel(0): Creating default Display subsection in Screen section
	"Default Screen Section" for depth/fbbpp 24/32
[    12.849] (==) intel(0): Depth 24, (--) framebuffer bpp 32
[    12.849] (==) intel(0): RGB weight 888
[    12.849] (==) intel(0): Default visual is TrueColor
[    12.850] (II) intel(0): Output eDP1 has no monitor section
[    12.850] (**) intel(0): Found backlight control interface intel_backlight (type 'raw') for output eDP1
[    12.850] (II) intel(0): Enabled output eDP1
[    12.850] (II) intel(0): Output HDMI1 has no monitor section
[    12.850] (II) intel(0): Enabled output HDMI1
[    12.850] (II) intel(0): Output DP1 has no monitor section
[    12.850] (II) intel(0): Enabled output DP1
[    12.851] (II) intel(0): Output HDMI2 has no monitor section
[    12.851] (II) intel(0): Enabled output HDMI2
[    12.851] (--) intel(0): Using a maximum size of 256x256 for hardware cursors
[    12.851] (II) intel(0): Output VIRTUAL1 has no monitor section
[    12.851] (II) intel(0): Enabled output VIRTUAL1
[    12.851] (--) intel(0): Output eDP1 using initial mode 1366x768 on pipe 0
[    12.851] (==) intel(0): TearFree disabled
[    12.851] (==) intel(0): Using gamma correction (1.0, 1.0, 1.0)
[    12.851] (==) intel(0): DPI set to (96, 96)
[    12.851] (II) Loading sub module "dri3"
[    12.851] (II) LoadModule: "dri3"
[    12.851] (II) Module "dri3" already built-in
[    12.851] (II) Loading sub module "dri2"
[    12.851] (II) LoadModule: "dri2"
[    12.851] (II) Module "dri2" already built-in
[    12.851] (II) Loading sub module "present"
[    12.851] (II) LoadModule: "present"
[    12.851] (II) Module "present" already built-in
[    12.851] (==) Depth 24 pixmap format is 32 bpp
[    12.853] (II) intel(0): SNA initialized with Haswell (gen7.5, gt2) backend
[    12.853] (==) intel(0): Backing store enabled
[    12.853] (==) intel(0): Silken mouse enabled
[    12.853] (II) intel(0): HW Cursor enabled
[    12.854] (II) intel(0): RandR 1.2 enabled, ignore the following RandR disabled message.
[    12.854] (==) intel(0): DPMS enabled
[    12.854] (==) intel(0): Display hotplug detection enabled
[    12.854] (II) intel(0): [DRI2] Setup complete
[    12.854] (II) intel(0): [DRI2]   DRI driver: i965
[    12.854] (II) intel(0): [DRI2]   VDPAU driver: va_gl
[    12.854] (II) intel(0): direct rendering: DRI2 DRI3 enabled
[    12.854] (II) intel(0): hardware support for Present enabled
[    12.854] (WW) intel(0): Option "Dac6bit" is not used
[    12.854] (--) RandR disabled
[    12.865] (II) AIGLX: enabled GLX_MESA_copy_sub_buffer
[    12.865] (II) AIGLX: enabled GLX_ARB_create_context
[    12.865] (II) AIGLX: enabled GLX_ARB_create_context_profile
[    12.865] (II) AIGLX: enabled GLX_EXT_create_context_es{,2}_profile
[    12.865] (II) AIGLX: enabled GLX_INTEL_swap_event
[    12.865] (II) AIGLX: enabled GLX_SGI_swap_control
[    12.865] (II) AIGLX: enabled GLX_EXT_framebuffer_sRGB
[    12.865] (II) AIGLX: enabled GLX_ARB_fbconfig_float
[    12.865] (II) AIGLX: enabled GLX_EXT_fbconfig_packed_float
[    12.865] (II) AIGLX: GLX_EXT_texture_from_pixmap backed by buffer objects
[    12.865] (II) AIGLX: enabled GLX_ARB_create_context_robustness
[    12.865] (II) AIGLX: Loaded and initialized i965
[    12.865] (II) GLX: Initialized DRI2 GL provider for screen 0
[    12.867] (II) intel(0): switch to mode 1366x768@60.0 on eDP1 using pipe 0, position (0, 0), rotation normal, reflection none
[    12.870] (II) intel(0): Setting screen physical size to 361 x 203
[    12.897] (II) config/udev: Adding input device Power Button (/dev/input/event2)
[    12.897] (**) Power Button: Applying InputClass "libinput keyboard catchall"
[    12.897] (II) LoadModule: "libinput"
[    12.897] (II) Loading /usr/lib/xorg/modules/input/libinput_drv.so
[    12.899] (II) Module libinput: vendor="X.Org Foundation"
[    12.899] 	compiled for 1.19.2, module version = 0.25.0
[    12.899] 	Module class: X.Org XInput Driver
[    12.899] 	ABI class: X.Org XInput driver, version 24.1
[    12.899] (II) Using input driver 'libinput' for 'Power Button'
[    12.900] (II) systemd-logind: got fd for /dev/input/event2 13:66 fd 22 paused 0
[    12.900] (**) Power Button: always reports core events
[    12.900] (**) Option "Device" "/dev/input/event2"
[    12.900] (**) Option "_source" "server/udev"
[    12.900] (II) event2  - (II) Power Button: (II) is tagged by udev as: Keyboard
[    12.900] (II) event2  - (II) Power Button: (II) device is a keyboard
[    12.900] (II) event2  - (II) Power Button: (II) device removed
[    12.900] (**) Option "config_info" "udev:/sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input2/event2"
[    12.900] (II) XINPUT: Adding extended input device "Power Button" (type: KEYBOARD, id 6)
[    12.901] (II) event2  - (II) Power Button: (II) is tagged by udev as: Keyboard
[    12.901] (II) event2  - (II) Power Button: (II) device is a keyboard
[    12.901] (II) config/udev: Adding input device Video Bus (/dev/input/event3)
[    12.901] (**) Video Bus: Applying InputClass "libinput keyboard catchall"
[    12.901] (II) Using input driver 'libinput' for 'Video Bus'
[    12.902] (II) systemd-logind: got fd for /dev/input/event3 13:67 fd 25 paused 0
[    12.902] (**) Video Bus: always reports core events
[    12.902] (**) Option "Device" "/dev/input/event3"
[    12.902] (**) Option "_source" "server/udev"
[    12.902] (II) event3  - (II) Video Bus: (II) is tagged by udev as: Keyboard
[    12.902] (II) event3  - (II) Video Bus: (II) device is a keyboard
[    12.902] (II) event3  - (II) Video Bus: (II) device removed
[    12.902] (**) Option "config_info" "udev:/sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/LNXVIDEO:00/input/input3/event3"
[    12.902] (II) XINPUT: Adding extended input device "Video Bus" (type: KEYBOARD, id 7)
[    12.903] (II) event3  - (II) Video Bus: (II) is tagged by udev as: Keyboard
[    12.903] (II) event3  - (II) Video Bus: (II) device is a keyboard
[    12.903] (II) config/udev: Adding input device Power Button (/dev/input/event1)
[    12.903] (**) Power Button: Applying InputClass "libinput keyboard catchall"
[    12.903] (II) Using input driver 'libinput' for 'Power Button'
[    12.904] (II) systemd-logind: got fd for /dev/input/event1 13:65 fd 26 paused 0
[    12.904] (**) Power Button: always reports core events
[    12.904] (**) Option "Device" "/dev/input/event1"
[    12.904] (**) Option "_source" "server/udev"
[    12.904] (II) event1  - (II) Power Button: (II) is tagged by udev as: Keyboard
[    12.904] (II) event1  - (II) Power Button: (II) device is a keyboard
[    12.904] (II) event1  - (II) Power Button: (II) device removed
[    12.904] (**) Option "config_info" "udev:/sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0C:00/input/input1/event1"
[    12.904] (II) XINPUT: Adding extended input device "Power Button" (type: KEYBOARD, id 8)
[    12.904] (II) event1  - (II) Power Button: (II) is tagged by udev as: Keyboard
[    12.904] (II) event1  - (II) Power Button: (II) device is a keyboard
[    12.905] (II) config/udev: Adding input device Lid Switch (/dev/input/event0)
[    12.905] (II) No input driver specified, ignoring this device.
[    12.905] (II) This device may have been added with another device file.
[    12.905] (II) config/udev: Adding input device HDA Intel HDMI HDMI/DP,pcm=3 (/dev/input/event10)
[    12.905] (II) No input driver specified, ignoring this device.
[    12.905] (II) This device may have been added with another device file.
[    12.905] (II) config/udev: Adding input device HDA Intel HDMI HDMI/DP,pcm=7 (/dev/input/event11)
[    12.906] (II) No input driver specified, ignoring this device.
[    12.906] (II) This device may have been added with another device file.
[    12.906] (II) config/udev: Adding input device HDA Intel HDMI HDMI/DP,pcm=8 (/dev/input/event12)
[    12.906] (II) No input driver specified, ignoring this device.
[    12.906] (II) This device may have been added with another device file.
[    12.906] (II) config/udev: Adding input device Lenovo EasyCamera (/dev/input/event13)
[    12.906] (**) Lenovo EasyCamera: Applying InputClass "libinput keyboard catchall"
[    12.906] (II) Using input driver 'libinput' for 'Lenovo EasyCamera'
[    12.913] (II) systemd-logind: got fd for /dev/input/event13 13:77 fd 27 paused 0
[    12.913] (**) Lenovo EasyCamera: always reports core events
[    12.913] (**) Option "Device" "/dev/input/event13"
[    12.913] (**) Option "_source" "server/udev"
[    12.914] (II) event13 - (II) Lenovo EasyCamera: (II) is tagged by udev as: Keyboard
[    12.914] (II) event13 - (II) Lenovo EasyCamera: (II) device is a keyboard
[    12.914] (II) event13 - (II) Lenovo EasyCamera: (II) device removed
[    12.914] (**) Option "config_info" "udev:/sys/devices/pci0000:00/0000:00:14.0/usb2/2-6/2-6:1.0/input/input15/event13"
[    12.914] (II) XINPUT: Adding extended input device "Lenovo EasyCamera" (type: KEYBOARD, id 9)
[    12.914] (II) event13 - (II) Lenovo EasyCamera: (II) is tagged by udev as: Keyboard
[    12.914] (II) event13 - (II) Lenovo EasyCamera: (II) device is a keyboard
[    12.915] (II) config/udev: Adding input device HDA Intel PCH Mic (/dev/input/event8)
[    12.915] (II) No input driver specified, ignoring this device.
[    12.915] (II) This device may have been added with another device file.
[    12.915] (II) config/udev: Adding input device HDA Intel PCH Headphone (/dev/input/event9)
[    12.915] (II) No input driver specified, ignoring this device.
[    12.915] (II) This device may have been added with another device file.
[    12.915] (II) config/udev: Adding input device HDA Digital PCBeep (/dev/input/event7)
[    12.915] (II) No input driver specified, ignoring this device.
[    12.915] (II) This device may have been added with another device file.
[    12.916] (II) config/udev: Adding input device Ideapad extra buttons (/dev/input/event5)
[    12.916] (**) Ideapad extra buttons: Applying InputClass "libinput keyboard catchall"
[    12.916] (II) Using input driver 'libinput' for 'Ideapad extra buttons'
[    12.916] (II) systemd-logind: got fd for /dev/input/event5 13:69 fd 28 paused 0
[    12.916] (**) Ideapad extra buttons: always reports core events
[    12.916] (**) Option "Device" "/dev/input/event5"
[    12.916] (**) Option "_source" "server/udev"
[    12.917] (II) event5  - (II) Ideapad extra buttons: (II) is tagged by udev as: Keyboard
[    12.917] (II) event5  - (II) Ideapad extra buttons: (II) device is a keyboard
[    12.917] (II) event5  - (II) Ideapad extra buttons: (II) device removed
[    12.917] (**) Option "config_info" "udev:/sys/devices/pci0000:00/0000:00:1f.0/PNP0C09:00/VPC2004:00/input/input6/event5"
[    12.917] (II) XINPUT: Adding extended input device "Ideapad extra buttons" (type: KEYBOARD, id 10)
[    12.917] (II) event5  - (II) Ideapad extra buttons: (II) is tagged by udev as: Keyboard
[    12.917] (II) event5  - (II) Ideapad extra buttons: (II) device is a keyboard
[    12.917] (II) config/udev: Adding input device AT Translated Set 2 keyboard (/dev/input/event4)
[    12.917] (**) AT Translated Set 2 keyboard: Applying InputClass "libinput keyboard catchall"
[    12.918] (II) Using input driver 'libinput' for 'AT Translated Set 2 keyboard'
[    12.918] (II) systemd-logind: got fd for /dev/input/event4 13:68 fd 29 paused 0
[    12.918] (**) AT Translated Set 2 keyboard: always reports core events
[    12.918] (**) Option "Device" "/dev/input/event4"
[    12.918] (**) Option "_source" "server/udev"
[    12.918] (II) event4  - (II) AT Translated Set 2 keyboard: (II) is tagged by udev as: Keyboard
[    12.918] (II) event4  - (II) AT Translated Set 2 keyboard: (II) device is a keyboard
[    12.918] (II) event4  - (II) AT Translated Set 2 keyboard: (II) device removed
[    12.918] (**) Option "config_info" "udev:/sys/devices/platform/i8042/serio0/input/input4/event4"
[    12.919] (II) XINPUT: Adding extended input device "AT Translated Set 2 keyboard" (type: KEYBOARD, id 11)
[    12.919] (II) event4  - (II) AT Translated Set 2 keyboard: (II) is tagged by udev as: Keyboard
[    12.919] (II) event4  - (II) AT Translated Set 2 keyboard: (II) device is a keyboard
[    12.919] (II) config/udev: Adding input device SynPS/2 Synaptics TouchPad (/dev/input/event14)
[    12.919] (**) SynPS/2 Synaptics TouchPad: Applying InputClass "libinput touchpad catchall"
[    12.919] (II) Using input driver 'libinput' for 'SynPS/2 Synaptics TouchPad'
[    12.920] (II) systemd-logind: got fd for /dev/input/event14 13:78 fd 30 paused 0
[    12.920] (**) SynPS/2 Synaptics TouchPad: always reports core events
[    12.920] (**) Option "Device" "/dev/input/event14"
[    12.920] (**) Option "_source" "server/udev"
[    12.920] (II) event14 - (II) SynPS/2 Synaptics TouchPad: (II) is tagged by udev as: Touchpad
[    12.920] (II) event14 - (II) SynPS/2 Synaptics TouchPad: (II) device is a atouchpad
[    12.920] (II) event14 - (II) SynPS/2 Synaptics TouchPad: (II) device removed
[    12.920] (**) Option "config_info" "udev:/sys/devices/platform/i8042/serio1/input/input7/event14"
[    12.920] (II) XINPUT: Adding extended input device "SynPS/2 Synaptics TouchPad" (type: TOUCHPAD, id 12)
[    12.921] (**) Option "AccelerationScheme" "none"
[    12.921] (**) SynPS/2 Synaptics TouchPad: (accel) selected scheme none/0
[    12.921] (**) SynPS/2 Synaptics TouchPad: (accel) acceleration factor: 2.000
[    12.921] (**) SynPS/2 Synaptics TouchPad: (accel) acceleration threshold: 4
[    12.921] (II) event14 - (II) SynPS/2 Synaptics TouchPad: (II) is tagged by udev as: Touchpad
[    12.921] (II) event14 - (II) SynPS/2 Synaptics TouchPad: (II) device is a atouchpad
[    12.921] (II) config/udev: Adding input device SynPS/2 Synaptics TouchPad (/dev/input/mouse0)
[    12.921] (II) No input driver specified, ignoring this device.
[    12.921] (II) This device may have been added with another device file.
[    12.922] (II) config/udev: Adding input device PC Speaker (/dev/input/event6)
[    12.922] (II) No input driver specified, ignoring this device.
[    12.922] (II) This device may have been added with another device file.
[    13.127] (II) intel(0): EDID vendor "SDC", prod id 18514
[    13.127] (II) intel(0): Printing DDC gathered Modelines:
[    13.127] (II) intel(0): Modeline "1366x768"x0.0   72.33  1366 1414 1446 1526  768 770 775 790 -hsync -vsync (47.4 kHz eP)

I don't see anything interesting except for some fonts that are missing but it doesn't seem to be related.

Offline

#8 2017-04-16 09:46:48

tom.ty89
Member
Registered: 2012-11-15
Posts: 897

Re: Reduced color depth on Intel card?

Upon the Broadcast RGB (Color Range) thing, you only mentioned one of the two cases. The other case is, full range signal being sent to a device that expects limited color range. Automatic (default) mode in the i915 kms driver will determine which range to use base on whether the mode (resolution) is a CEA mode, which 1366x768 is not, so it will send signal in full color range.

I only faintly remember that having "gradient breakage" is one of the effects you will get by sending signal in full color range to a sink device that expect limited range, but still you may want to try setting the Broadcast RGB to limited range to see if it is the case. Unfortunately, AFAIK, you can't do it with xrandr when you are running (X)Wayland. So even just to test it you have to fall back to an X-only environment.

P.S. In case you are confused, the actual mechanism/working part of the Broadcast RGB thing is implemented in the i915 kms driver in the kernel, which will be used no matter your are using X or Wayland or even just the tty, while the only (AFAIK) interface to set its operation mode is done as an xrandr option in the intel DDX (xf86-video-intel).

Last edited by tom.ty89 (2017-04-16 10:04:12)

Offline

#9 2017-04-16 11:24:17

R00KIE
Forum Fellow
From: Between a computer and a chair
Registered: 2008-09-14
Posts: 4,734

Re: Reduced color depth on Intel card?

I don't see anything that stands out in your xorg log. It might be worth to try running gnome in a X session and see if changing the Broadcast RGB setting will do anything. Another thing you could try is enabling the Dac6Bit option but I suspect that will turn on some kind of dithering and make things look even worse.

Since you say ubuntu and mint work fine, what you can try is installing linux-lts and see if things work well with the lts kernel. If it still doesn't work you will have to compare at least kernel and xorg-server versions between Arch and the distros that work. You should start to consider asking for help upstream as it seems our troubleshooting here seems to be running out of ideas to test.


R00KIE
Tm90aGluZyB0byBzZWUgaGVyZSwgbW92ZSBhbG9uZy4K

Offline

#10 2017-04-16 12:30:11

rafal5576
Member
Registered: 2017-04-15
Posts: 7

Re: Reduced color depth on Intel card?

tom.ty89

I have tried Broadcast RGB. It turns out it's "Full" by default and only changing it to "Limited 16:235" has an effect. After changing it it's even a bit worse; the stripes are wider (so there are less of them) but the boundaries seem to be more irregular so it seems the effect of limited broadcast rgb was added to the effect of the original problem.

Thanks for the explanation at the end of your post.

@R00KIE

I have tried Dac6Bit before without any visible result.

I have already tried to compare Xorg.log mint and arch. Arch uses DRI3 (mint doesn't) but turning it off doesn't take any effect. Software versions are of course different; it's a good idea to test linux-lts. I couldn't see more interesting differences.

I am going to check what interesting mint devs have put to /etc/X11 (there are plenty of files).

I was suspecting it might be software issue. So I opened the file using fbi directly in tty and the problem was still there.

Offline

#11 2017-04-16 13:16:25

R00KIE
Forum Fellow
From: Between a computer and a chair
Registered: 2008-09-14
Posts: 4,734

Re: Reduced color depth on Intel card?

One thing I have noticed is that the test image you have shared does not have the same resolution as your monitor/panel. You should create a test image of the same resolution and then display it (maybe fullscreen) with a 1:1 zoom ratio (in other words, without zoom).


R00KIE
Tm90aGluZyB0byBzZWUgaGVyZSwgbW92ZSBhbG9uZy4K

Offline

#12 2017-04-17 22:01:24

rafal5576
Member
Registered: 2017-04-15
Posts: 7

Re: Reduced color depth on Intel card?

@R00KIE zoom doesn't change anything here.


It turnes out there are 64 shades of the color on my screen. That means there are 6 bits per channel -> I have 18bit color. I suspect LCD screen uses 18bit while GPU sends 24bit. I have tried to set Dac6Bit to true (as you suggested) but I'm getting

(WW) intel(0): Option "Dac6Bit" is not used

in xorg.log.

My /etc/X11/x.org.conf/20-intel.conf:

Section "Device"
   Identifier  "Intel Graphics"
   Driver      "intel"
   Option      "Dac6Bit" "true"
   #Option      "DRI" "2"
   #Option      "LVDS24Bit" "true"
   #Option    "AccelMethod"  "uxa"
EndSection

Is something wrong with the conf file?

Offline

#13 2017-04-17 23:25:01

Ropid
Member
Registered: 2015-03-09
Posts: 1,069

Re: Reduced color depth on Intel card?

Something stupid I'm wondering: what happens when you do a screenshot? Does that screenshot look fine when viewing it somewhere else?

Offline

#14 2017-04-18 10:07:28

R00KIE
Forum Fellow
From: Between a computer and a chair
Registered: 2008-09-14
Posts: 4,734

Re: Reduced color depth on Intel card?

Try Ropid's idea and see if there are problems.

I only mentioned displaying a 1:1 image because for some weird reason zooming in/out could be introducing problems (just eliminate as many variables as possible). Another thing I was thinking is that you could try to reduce the color depth and see if that changes anything, currently it should be 24, you could try reducing it to 16. The rationale here is if the panel's controller is doing dithering to convert 8 bit into 6bit then it might stop doing it if you reduce the color depth you send to the panel.

Obviously this is just an intermediate step in getting to the bottom of the problem, if this worked fine before or with other distros it should be possible to make it work properly (eventually after squashing some bug).


R00KIE
Tm90aGluZyB0byBzZWUgaGVyZSwgbW92ZSBhbG9uZy4K

Offline

#15 2017-04-18 14:41:31

electric_indigo
Member
Registered: 2011-05-12
Posts: 89

Re: Reduced color depth on Intel card?

I have this problem, too with my Lenovo G50-80. Noticeable color banding in gradients and blocky videos, especially in shady areas.

Things that did not fix the problem:
- switching to discrete GPU (Radeon R5 M330, open source driver)
- explicitly setting X color depth to 24bit (it was reportedly set to that by default, anyway)
- viewing images with EOG under Wayland (Weston) instead of X
- using framebuffer image viewer (fbv)

Things that did fix the problem:
- using kernel 4.7.x or older

Playing around with xrandr "Broadcast RGB" and gamma settings only affected the layout of the bands in gradients, but did not smooth them out.

edit: removing ambiguity

Last edited by electric_indigo (2017-04-18 15:45:25)

Offline

#16 2017-04-18 14:57:03

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 21,720

Re: Reduced color depth on Intel card?

There are a lot of fixes for the intel driver in 4.10.11 which should land in stable soon in particular the following looks interesting:

commit 4f985d41bc5f5a483de18e5dd7b0e03078dab3b0
Author: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Date:   Tue Feb 28 15:28:47 2017 +0100

    drm/i915: Move updating color management to before vblank evasion
    
    commit 38230243ef316ac696956d75dc78a22e3aa789b9 upstream.
    
    This cannot be done reliably during vblank evasasion
    since the color management registers are not double buffered.
    
    The original commit that moved it always during vblank evasion was
    wrong, so revert it to before vblank evasion again.
    
    Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
    Fixes: 20a34e78f0d7 ("drm/i915: Update color management during vblank evasion.")
    Link: http://patchwork.freedesktop.org/patch/msgid/1488292128-14540-1-git-send-email-maarten.lankhorst@linux.intel.com
    Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
    (cherry picked from commit 567f0792a6ad11c0c2620944b8eeb777359fb85a)
    Signed-off-by: Jani Nikula <jani.nikula@intel.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Offline

#17 2017-04-18 15:09:18

electric_indigo
Member
Registered: 2011-05-12
Posts: 89

Re: Reduced color depth on Intel card?

@V1del, I've just tried 4.10.11 from [testing] and the problem persists.

Offline

#18 2017-04-18 15:24:24

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 21,720

Re: Reduced color depth on Intel card?

You said you are on a radeon card, so that doesn't surprise me. OP said they are on an intel card, so it might help

Offline

#19 2017-04-18 15:26:17

rafal5576
Member
Registered: 2017-04-15
Posts: 7

Re: Reduced color depth on Intel card?

@Ropid

The screenshot has perfect gradient and colors when opened on another computer. I suppose this is not what you expected. smile What was your suspicion?

@R00KIE

Regarding zoom - I agree, it was worth checking.

Reducing bpp to 16bit didn't change anything except for stripes being in two shades now. smile

@electric_indigo

Mine is G50-70.

Old kernel may be the reason why it had worked for other Ubuntu-ish distros (they're using 4.4).

What finally did you do with this? Did you stick to kernel 4.4 LTS or got used to it?

Offline

#20 2017-04-18 15:43:59

electric_indigo
Member
Registered: 2011-05-12
Posts: 89

Re: Reduced color depth on Intel card?

@rafal5576
I just stick to Windows for now when it comes to multimedia

@V1del
the thing is, the problem occurs with both intel and radeon, pardon me for not stating that clearly

Offline

#21 2017-04-18 15:53:03

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 21,720

Re: Reduced color depth on Intel card?

Very often, just because the visible symptoms are the same, the cause doesn't have to be. Especially display drivers from different vendors will have differences that might lead to the "same" issue but have a completely different origin.

Offline

#22 2017-04-29 10:52:04

rafal5576
Member
Registered: 2017-04-15
Posts: 7

Re: Reduced color depth on Intel card?

Thanks to everybody who tried to help me here. For now I will stay with the problem unresolved and wait for fix possible in the future.

Offline

#23 2017-05-02 11:43:56

skottish
Forum Fellow
From: Here
Registered: 2006-06-16
Posts: 7,942

Re: Reduced color depth on Intel card?

This is may or may not be related, but it seems that options may be helpful for you.

I installed Arch on an Acer E5-553G laptop with Radeon graphics and had what seemed to be 16bit color. It turned out to be a faulty implementation of BIOS (I use BIOS on this machine for now even though UEFI is supported). The BIOS/UEFI is provided by Insyde. The Acer update tool only came with a Windows 10 installer, but getting the '.fd' file was as simple as starting the installer under Wine and grabbing the file out of the Windows Temp directory (I can't remember if it was for my user or the public one) before closing it. The file can then be installed using "Crisis Mode" using the following procedure:

http://www.tomsguide.com/answers/id-224 … 5942g.html

Crisis mode on the Acer was tricky to get going and there was little to no feedback that it actually worked. I had no idea that I upgraded the BIOS until later. Read: the potential for bricking the system is even higher than normal. I can explain the details if you want to try it and there is no obvious path to upgrading the firmware.

Offline

#24 2017-05-07 01:17:19

electric_indigo
Member
Registered: 2011-05-12
Posts: 89

Re: Reduced color depth on Intel card?

I figured it out.
The problem was introduced by this commit.

Color depth is set to 8 bits per channel first, but my LCD panel apparently only supports 6bpc, so the GPU driver resets it to that, which results in color banding. If the depth is set to 6bps from the beginning, the GPU driver probably knows to enable some sort of dithering.

Fixing that requires kernel patching, you can either revert this commit or add an EDID quirk. I did the latter, here is the patch:

diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
index fad3d44e4642..ee3124bcae87 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
@@ -147,6 +147,9 @@ static const struct edid_quirk {
 	/* Medion MD 30217 PG */
 	{ "MED", 0x7b8, EDID_QUIRK_PREFER_LARGE_75 },
 
+	/* Fix for Lenovo G50 */
+	{ "SDC", 18514, EDID_QUIRK_FORCE_6BPC },
+
 	/* Panel in Samsung NP700G7A-S01PL notebook reports 6bpc */
 	{ "SEC", 0xd033, EDID_QUIRK_FORCE_8BPC },
 

Just make sure we have the very same LCD model, look for lines like this

[    56.233] (II) modeset(0): EDID vendor "SDC", prod id 18514

in Xorg's log. Let me know what your vendor and prod id are so I can file a bug report.

EDIT: fixed whitespace in patch

Last edited by electric_indigo (2017-05-07 11:47:00)

Offline

#25 2017-05-07 19:47:02

R00KIE
Forum Fellow
From: Between a computer and a chair
Registered: 2008-09-14
Posts: 4,734

Re: Reduced color depth on Intel card?

Good work finding the cause of the problem and coming up with a fix.

This is something that you really should report upstream, you know what the problem is and you have a working fix, it shouldn't be too hard to get it accepted.


R00KIE
Tm90aGluZyB0byBzZWUgaGVyZSwgbW92ZSBhbG9uZy4K

Offline

Board footer

Powered by FluxBB