You are not logged in.
Hello,
I'm using an eDP display (120Hz) from https://www.lenovo.com/us/en/p/laptops/ … 8ips501619 (my laptop lacks the Nvidia GPU). I was using the LTS kernel, so I didn't notice any issues until recently, when there was a bump from 6.6 base to 6.12. After that I tried installing different versions of the mainline kernel to find the start of the issue.
Since the update from kernel 6.8.9 to 6.9 I can see only 60Hz and 120Hz refreshrate options using
swaymsg -t get_outputs
. Whereas on 6.8.9 I can also see 50Hz and 48Hz options, which I prefer using to save on battery.
If there is a place with intermediary kernel builds I can try those, but I would like to avoid compiling the entire kernel myself for every bisect point (also bisecting with multiple branches still goes a little over my head).
Last edited by Kepis (2025-02-12 18:25:48)
Offline
If you want I can prebuild the kernels for you
Before we go that route, could you test that the issue is not yet fixed in the latest mainline kernel?
sudo pacman -U https://pkgbuild.com//\~gromit/linux-bisection-kernels/linux-mainline-6.14rc2-1-x86_64.pkg.tar.zst
This way we don't start investigating a bug in detail which may already be fixed in a newer version ..
(note that this installs the kernel as linux-mainline, so you need to configure your bootloader to boot it (for example via grub-mkconfig -o ... or by writing the systemd-boot loader entry))
Last edited by gromit (2025-02-11 20:54:54)
Offline
Does the edid actually advertise those modes?
for OUT in /sys/class/drm/card*; do echo $OUT; edid-decode $OUT/edid; echo "================="; done
You'll need https://github.com/timvideos/edid-decode/ (not yet in v4l-utils and the AUR package is unfortunately gone)
Offline
Before we go that route, could you test that the issue is not yet fixed in the latest mainline kernel?
Unfortunately, the issue appears to be still present.
Does the edid actually advertise those modes?
If "Monitor ranges" is the indicator, then I think it does:
/sys/class/drm/card1
/sys/class/drm/card1/edid: No such file or directory
=================
/sys/class/drm/card1-DP-1
No header found
=================
/sys/class/drm/card1-eDP-1
EDID version: 1.4
Manufacturer: BOE Model ac1 Serial Number 0
Made in week 39 of 2021
Digital display
10 bits per primary color channel
DisplayPort interface
Maximum image size: 34 cm x 21 cm
Gamma: 2.20
Supported color formats: RGB 4:4:4
First detailed timing includes the native pixel format and preferred refresh rate
Display is continuous frequency
Display x,y Chromaticity:
Red: 0.6464, 0.3242
Green: 0.2890, 0.6191
Blue: 0.1484, 0.0615
White: 0.3134, 0.3291
Established timings supported:
Standard timings supported:
Detailed mode: Clock 276.790 MHz, 344 mm x 215 mm
2560 2608 2640 2720 hborder 0
1600 1603 1609 1696 vborder 0
-hsync -vsync
VertFreq: 60 Hz, HorFreq: 101761 Hz
Monitor ranges (bare limits): 48-120Hz V, 204-204kHz H, max dotclock 550MHz
ASCII string: BOE CQ
ASCII string: NE160QDM-NY2
Has 1 extension blocks
Checksum: 0xc7 (valid)
----------------
DisplayID Extension Block
Length 121, version 1.3, extension count 0
Type 1 Detailed Timings Block
Aspect 16:10, preferred, no 3D stereo
Detailed mode: Clock 553.570 MHz, 0 mm x 0 mm
2559 2606 2637 2718
1599 1601 1606 1694
-hsync -vsync
Checksum: 0x22 (valid)
=================
/sys/class/drm/card1-HDMI-A-1
No header found
=================
Last edited by Kepis (2025-02-12 10:43:47)
Offline
No isn't - but that's not the output of edid-decode either?
cat /sys/class/drm/card1-eDP-1/edid | curl -F 'file=@-' 0x0.st
Offline
No isn't - but that's not the output of edid-decode either?
I used the git repo on github to compile it, not the one in their readme, because that one has only the readme file in it. Maybe there is a more updated branch or sth?
Last edited by Kepis (2025-02-12 13:50:13)
Offline
edid-decode (hex):
00 ff ff ff ff ff ff 00 09 e5 c1 0a 00 00 00 00
27 1f 01 04 b5 22 15 78 03 82 35 a5 53 4a 9e 26
0f 50 54 00 00 00 01 01 01 01 01 01 01 01 01 01
01 01 01 01 01 01 1f 6c 00 a0 a0 40 60 60 30 20
36 00 58 d7 10 00 00 18 00 00 00 fd 00 30 78 cc
cc 37 01 0a 20 20 20 20 20 20 00 00 00 fe 00 42
4f 45 20 43 51 0a 20 20 20 20 20 20 00 00 00 fe
00 4e 45 31 36 30 51 44 4d 2d 4e 59 32 0a 01 c7
70 13 79 00 00 03 01 14 3d d8 00 85 ff 09 9f 00
2f 00 1f 00 3f 06 5f 00 02 00 05 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 22 90
----------------
Block 0, Base EDID:
EDID Structure Version & Revision: 1.4
Vendor & Product Identification:
Manufacturer: BOE
Model: 2753
Made in: week 39 of 2021
Basic Display Parameters & Features:
Digital display
Bits per primary color channel: 10
DisplayPort interface
Maximum image size: 34 cm x 21 cm
Gamma: 2.20
Supported color formats: RGB 4:4:4
First detailed timing includes the native pixel format and preferred refresh rate
Display is continuous frequency
Color Characteristics:
Red : 0.6464, 0.3242
Green: 0.2890, 0.6191
Blue : 0.1484, 0.0615
White: 0.3134, 0.3291
Established Timings I & II: none
Standard Timings: none
Detailed Timing Descriptors:
DTD 1: 2560x1600 60.000607 Hz 8:5 101.761 kHz 276.790000 MHz (344 mm x 215 mm)
Hfront 48 Hsync 32 Hback 80 Hpol N
Vfront 3 Vsync 6 Vback 87 Vpol N
Display Range Limits:
Monitor ranges (Bare Limits): 48-120 Hz V, 204-204 kHz H, max dotclock 550 MHz
Alphanumeric Data String: 'BOE CQ'
Alphanumeric Data String: 'NE160QDM-NY2'
Extension blocks: 1
Checksum: 0xc7
----------------
Block 1, DisplayID Extension Block:
Version: 1.3
Extension Count: 0
Display Product Type: Extension Section
Video Timing Modes Type 1 - Detailed Timings Data Block:
DTD: 2560x1600 120.001214 Hz 16:10 203.522 kHz 553.580000 MHz (aspect 16:10, no 3D stereo, preferred)
Hfront 48 Hsync 32 Hback 80 Hpol N
Vfront 3 Vsync 6 Vback 87 Vpol N
Checksum: 0x22
Checksum: 0x90
Is the file the same on the working kernels?
The edid only announces two modelines, the other ones are probably now intentionally filtered (I remember having seen an lkml thread talking about damaged panels causing such)
You'd probably have to inject a customized edid for other modelines, https://wiki.archlinux.org/title/Kernel … s_and_EDID
Offline
Is the file the same on the working kernels?
If you're referring to the output of the edid-decode command, then yes - outputs when running 6.6.72-lts and 6.14rc2 are the same.
Offline
I'd rather look at the md5 hash of the edid, but you're likely victim of this protection.
Offline
Just tried
md5sum /sys/class/drm/card1-eDP-1/edid
on both kernels and the output is indeed the same.
When you mentioned damaged panels, does that mean that the kernel was allowing the refreshrate modes without them actually being available? Since this is already a replacement screen that I'm using (but the previous model was just 60Hz - not related to this issue), I wouldn't want to risk having to get another replacement.
Last edited by Kepis (2025-02-12 16:11:59)
Offline
Yes, though better panels would just respond to a bogus modeline by turning off or going to a default rate.
Have you actually ever measure the different voltages between 50Hz and 60Hz?
Offline
Yes, though better panels would just respond to a bogus modeline by turning off or going to a default rate.
Have you actually ever measure the different voltages between 50Hz and 60Hz?
I've only made some observations of the effects on power through checking the changes in my battery draw. Although, now that I've checked again, I don't know where I had seen the difference - now I saw only around 0.5W difference.
In regards to the the display defaulting to a valid modeline, I suppose I experience this in some way - on the old kernel I can set the refresh rate and test webpages confirm the refreshrate is at 48Hz. But when I power the display (swaymsg eDP-1 power) off and back on, it jumps back to 120Hz. That's probably a sign.
In any case, I now see that the lower refreshrate didn't bring any valuable benefits, rather a potential damage to the panel. Thank you for the quick help and explanatation.
Offline