The officially official Devuan Forum!

You are not logged in.

#1 2023-09-01 21:51:32

aut0exec
Member
Registered: 2018-11-21
Posts: 81  

[SOLVED] Daedalus I915 External Monitor Screen Flicker

Greetings everyone. Been a while since I've been to the forums; all my Devuan systems have been chugging along great!

Dealing with an HP Elitebook 840 G3 with Intel Skylake GT2 [HD Graphics 520] running Daedalus (Linux 6.1.0-11, Cinnamon 5.6.8, lightdm 1.26.0-8+devuan1, firmware-misc-nonfree 20210315-3, xserver-xorg-video-intel 2.99.917). The Laptop is on the official HP dock and I'm using the two display ports to run two external 24 inch monitors. Problem is at the maximum resolution of 1920x1080 60HZ there's a frequent flicker/tear in the display. I've tried a number of kernel setting combinations ( i915.enable_psr=0, i915.enabled_rc6=0, intel_idle.max_cstate=4, i915.enabled_fbc=0, etc) and have been unable to track down what's causing the flicker. I can get the flicker to go away ONLY if I drop resolution but the next available resolution, according to xrandr -q, for the external monitors is 1680x1050 59.95hz which costs a bunch of display real estate.

I have Chimaera machine (Dell 6520) connected to these same displays via DVI using i915 and there's no flickering issues but there's obviously some major differences in the underlying graphics that's way over my head.

Any thoughts? Let me know any command output that would be helpful in trouble shooting (posting from the machine with stable graphics currently).

Last edited by aut0exec (2023-09-01 21:52:00)

Offline

#2 2023-09-02 08:25:58

Andre4freedom
Member
Registered: 2017-11-15
Posts: 142  

Re: [SOLVED] Daedalus I915 External Monitor Screen Flicker

I've a similar HP Elitebook laptop PC since 2012. After a few month using it, I had similar problems with external displays and overhead projectors, until it went completely black. The built-in display was still working. HP service replaced the mainboard and the problems are gone since. I'm still using it today, with Devuan Daedalus. I'm still happy.

Offline

#3 2023-09-02 20:05:08

aut0exec
Member
Registered: 2018-11-21
Posts: 81  

Re: [SOLVED] Daedalus I915 External Monitor Screen Flicker

Did you problem only exist on one monitor resolution? Certainly hope it's not hardware!

The plot thickens a bit though. I decided to full reinstall Devuan Daedalus and reset bios settings to factory settings. Upon restart now, I am even further limited in the external monitor screen resolutions though. Now the maximum the external monitors seem to support is 1024x768 60Hz (with only three possible resolutions). I've tried install combinations of firmware-linux-nonfree, firmware-misc-nonfree, intel-media-va-driver[-non-free] but haven't had any luck. These other resolutions don't flicker though. Any thoughts?

Offline

#4 2023-09-02 22:56:19

aut0exec
Member
Registered: 2018-11-21
Posts: 81  

Re: [SOLVED] Daedalus I915 External Monitor Screen Flicker

Some good progress! After reviewing some similar issues on Linux Mint's forums, I have a currently working solution.

First off - Not sure if the full re-install would've been necessary at this point and obviously I can't revert now.

The following are installed (not sure if all are required; will continue testing and update thread as time goes on)
- intel-microcode
- firmware-linux-free
- firmware-misc-nonfree

Even though the resolution wouldn't show up in the 'Displays' menu, xrandr was still able to add and set the resolution but I needed to use the reduced blanking option with the cvt tool.

$ cvt -r 1920 1090
# 1920x1080 59.93 Hz (CVT 2.07M9-R) hsync: 66.59 kHz; pclk: 138.50 MHz
Modeline "1920x1080R"  138.50  1920 1968 2000 2080  1080 1083 1088 1111 +hsync -vsync

The output from cvt is then used to create a new mode with xrandr.

$ xrandr --newmode "1920x1080R" 138.50 1920 1968 2000 2080 1080 1083 1088 1111 +hsync -vsync
$ xrandr --addmode DP-1-1 1920x1080R
$ xrandr --addmode DP-1-2 1920x1080R
$ xrandr --output DP-1-1 --mode 1920x1080R
$ xrandr --output DP-1-2 --mode 1920x1080R

After that I had the right resolution on both monitors and no visible flickering for the past 5 minutes!! Now upon restart the screens revert back to 1920x1080 at 60Hz and the flickering is back but re-running the above commands all was good again. Afterwards the resolution shows up in the displays menu as well.

I'll experiment with scripting this so that it auto applies on boot up but if there are any better ways to handle this, please let me know!

Last edited by aut0exec (2023-09-02 23:17:43)

Offline

#5 2023-09-03 00:23:49

deepforest
Member
Registered: 2020-03-24
Posts: 312  

Re: [SOLVED] Daedalus I915 External Monitor Screen Flicker

did you try other "live boot mode" Linux distros or Windows PE(Hirensbootcd)?
At Windows you can try use CRU utility
https://www.monitortests.com/forum/Thre … tility-CRU
for determinate right resolution values and take it to your linux modeline

UPD1
and what resolutions and clocks show edid info for yours monitors under linux?
https://unix.stackexchange.com/question … le-monitor
https://askubuntu.com/questions/81370/h … -a-monitor

Last edited by deepforest (2023-09-03 00:47:18)

Online

#6 2023-09-03 00:46:19

Segfault
Member
Registered: 2017-02-10
Posts: 14  

Re: [SOLVED] Daedalus I915 External Monitor Screen Flicker

Actually there are options you can add to xorg.conf.d, what these options exactly look like depends on driver used. And all that what you did with xrandr can be added to conf file(s), too.

Offline

#7 2023-09-03 01:04:41

deepforest
Member
Registered: 2020-03-24
Posts: 312  

Re: [SOLVED] Daedalus I915 External Monitor Screen Flicker

Online

#8 2023-09-13 13:11:56

aut0exec
Member
Registered: 2018-11-21
Posts: 81  

Re: [SOLVED] Daedalus I915 External Monitor Screen Flicker

Sorry for the delay. Hadn't had time to get back to this but I've finally got a working setup!

I tired some of the Xorg configuration options but could never seem to get things right so I went down the lightdm/cinnamon routes.

Here's what I did.
1) Created a script at /etc/lightdm/i915.sh (owned by root) and set the mode 755. It contained the following

#!/bin/bash
xrandr --newmode "1920x1080R" 138.50 1920 1968 2000 2080 1080 1083 1088 1111 +hsync -vsync
xrandr --addmode DP-1-1 1920x1080R
xrandr --addmode DP-1-2 1920x1080R
xrandr --output DP-1-1 --mode 1920x1080R
xrandr --output DP-1-2 --mode 1920x1080R

2) In /etc/lightdm/lightdm.conf

- uncomment the 'display-setup-script' line in the '[Seat:*]' section and appended the path to the previous script to the line

display-setup-script=/etc/lightdm/i915.sh

* This fixes the display glitch when lightdm is sitting at the login screen

3) To fix the issues when cinnamon was running.
- Log in and run the previously created script
- After it runs and "fixes" the display glitch, open the cinnamon displays applet by right-clicking on the desktop and selecting 'Display Settings'.
- It should show the newly set resolutions so simply change something, apply the settings, and then change it back to the desired settings.
-- Something as simple as changing the "Primary" monitor seems to be sufficient.
--Once those settings were applied, I noticed that the file ~/.config/cinnamon-monitors.xml now contained the proper resolution and refresh rate that I wanted the monitors to be set at!

So far this is working/surviving reboots and login/logouts.

The only hiccup with the above is that obviously any of the ctrl+alt+F# terminals will still be glitchy but I'm assuming until I can figure out how to get X11 configured properly, those will always be messed up. Not much of an issue since I don't normally need to use those anyways. If anyone has any suggestions on how to get X11 working so all these band-aids can be removed, I'm all ears! Thanks.

Last edited by aut0exec (2023-09-13 13:13:23)

Offline

Board footer