较低的屏幕分辨率 1600x1200 无法填充 Fedora 34 中 Dasung HD-F 电子墨水显示器的区域

较低的屏幕分辨率 1600x1200 无法填充 Fedora 34 中 Dasung HD-F 电子墨水显示器的区域

我购买了 Dasung HD-F 2019 电子墨水显示器。默认屏幕分辨率是 2200x1650 @ 40。Dasung 还支持 1600x1200 @ 60,我想使用它。不幸的是,Fedora 34 中的屏幕没有完全填满。我的笔记本电脑配备了 Intel UHD Graphics 620。

我不知道问题出在哪里,但我的猜测是系统认为Dasung的尺寸是20x15厘米。事实上,它是 27x20 厘米。填充区域正好是 20x15 厘米。

我完全不知道如何在 Linux 中以高级方式配置监视器。我花了很多时间阅读并尝试不同的方法。

多成的照片 1600x1200

我做了什么(使用一些教程):我制作了 edid 的十六进制转储,并将 20x15 厘米替换为 27x20 厘米(偏移量 0x15 和 0x16)。将偏移 0x7f 更改为新的校验和。将文件复制到 /lib/firmware/edid/ Correct-edid.bin。创建 Dracut 配置 /etc/dracut.conf.d/00-dasung-hdf-edid.conf 以将新的 EDID 复制到 initramfs 中:

install_items+=" /lib/firmware/edid/ Correct-edid.bin "

使用 Dracut 重新生成 initramfs:sudo dracut -f。将 drm.edid_firmware=HDMI-A-1:edid/ Correct-edid.bin 添加到 /etc/default/grub 中 GRUB_CMDLINE_LINUX_DEFAULT 的末尾。最后: sudo grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg

不幸的是它没有帮助。

xrandr --verbose 的结果:

Screen 0: minimum 320 x 200, current 2200 x 2730, maximum 16384 x 16384
eDP-1 connected primary 1920x1080+0+1650 (0x47) normal (normal left inverted right x axis y axis) 309mm x 174mm
    Identifier: 0x42
    Timestamp:  242415
    Subpixel:   unknown
    Gamma:      1.0:1.0:1.0
    Brightness: 1.0
    Clones:    
    CRTC:       0
    CRTCs:      0 1 2
    Transform:  1.000000 0.000000 0.000000
                0.000000 1.000000 0.000000
                0.000000 0.000000 1.000000
               filter: 
    _MUTTER_PRESENTATION_OUTPUT: 0 
    EDID: 
        00ffffffffffff0006af3d3200000000
        101c0104a51f117802fc15a055509b27
        0c505400000001010101010101010101
        010101010101143780b8703824401010
        3e0035ae100000180000000f00000000
        00000000000000000020000000fe0041
        554f0a202020202020202020000000fe
        004231343048414e30332e32200a00bd
    scaling mode: Full aspect 
        supported: Full, Center, Full aspect
    Colorspace: Default 
        supported: Default, RGB_Wide_Gamut_Fixed_Point, RGB_Wide_Gamut_Floating_Point, opRGB, DCI-P3_RGB_D65, BT2020_RGB, BT601_YCC, BT709_YCC, XVYCC_601, XVYCC_709, SYCC_601, opYCC_601, BT2020_CYCC, BT2020_YCC
    max bpc: 12 
        range: (6, 12)
    Broadcast RGB: Automatic 
        supported: Automatic, Full, Limited 16:235
    panel orientation: Normal 
        supported: Normal, Upside Down, Left Side Up, Right Side Up
    link-status: Good 
        supported: Good, Bad
    CONNECTOR_ID: 95 
        supported: 95
    non-desktop: 0 
        range: (0, 1)
  1920x1080 (0x45) 141.000MHz -HSync -VSync +preferred
        h: width  1920 start 1936 end 1952 total 2104 skew    0 clock  67.02KHz
        v: height 1080 start 1083 end 1097 total 1116           clock  60.05Hz

    <HERE LONG LIST OF RESOLUTIONS OF MY NOTEBOOK MONITOR>



HDMI-1 connected 2200x1650+0+0 (0x7b2) normal (normal left inverted right x axis y axis) 200mm x 150mm
    Identifier: 0x43
    Timestamp:  242415
    Subpixel:   unknown
    Gamma:      1.0:1.0:1.0
    Brightness: 1.0
    Clones:    
    CRTC:       1
    CRTCs:      0 1 2
    Transform:  1.000000 0.000000 0.000000
                0.000000 1.000000 0.000000
                0.000000 0.000000 1.000000
               filter: 
    _MUTTER_PRESENTATION_OUTPUT: 0 
    EDID: 
        00ffffffffffff001263010000000000
        0a1d0103801b14782a08a5a2574fa228   <--- 1b14 (27 x 20 cm) is my own change
        0f505400000001010101010101010101        using custom edid file, before
        010101010101c13e98a880722e603820        it was 140f (20 x 15 cm)
        3600c8960000001e0000001000000000
        00000000000000000000000000fc0050
        617065726c696b6520482044483f4030
        62b0324040c013006d552100001e00c5
    HDCP Content Type: HDCP Type0 
        supported: HDCP Type0, HDCP Type1
    Content Protection: Undesired 
        supported: Undesired, Desired, Enabled
    max bpc: 12 
        range: (8, 12)
    content type: No Data 
        supported: No Data, Graphics, Photo, Cinema, Game
    Colorspace: Default 
        supported: Default, SMPTE_170M_YCC, BT709_YCC, XVYCC_601, XVYCC_709, SYCC_601, opYCC_601, opRGB, BT2020_CYCC, BT2020_RGB, BT2020_YCC, DCI-P3_RGB_D65, DCI-P3_RGB_Theater
    aspect ratio: Automatic 
        supported: Automatic, 4:3, 16:9
    Broadcast RGB: Automatic 
        supported: Automatic, Full, Limited 16:235
    audio: auto 
        supported: force-dvi, off, auto, on
    link-status: Good 
        supported: Good, Bad
    CONNECTOR_ID: 103 
        supported: 103
    non-desktop: 0 
        range: (0, 1)
  2200x1650 (0x7b2) 160.650MHz +HSync +VSync *current +preferred
        h: width  2200 start 2256 end 2288 total 2368 skew    0 clock  67.84KHz
        v: height 1650 start 1653 end 1659 total 1696           clock  40.00Hz
  1600x1200 (0x7b3) 162.000MHz +HSync +VSync
        h: width  1600 start 1664 end 1856 total 2160 skew    0 clock  75.00KHz
        v: height 1200 start 1201 end 1204 total 1250           clock  60.00Hz

edid解码的结果 < /sys/class/drm/card0-HDMI-A-1/edid:

edid-decode (hex):

00 ff ff ff ff ff ff 00 12 63 01 00 00 00 00 00
0a 1d 01 03 80 1b 14 78 2a 08 a5 a2 57 4f a2 28   <--- 1b14 (27 x 20 cm) is my own change
0f 50 54 00 00 00 01 01 01 01 01 01 01 01 01 01        using custom edid file, before
01 01 01 01 01 01 c1 3e 98 a8 80 72 2e 60 38 20        it was 140f (20 x 15 cm)
36 00 c8 96 00 00 00 1e 00 00 00 10 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 fc 00 50
61 70 65 72 6c 69 6b 65 20 48 20 44 48 3f 40 30
62 b0 32 40 40 c0 13 00 6d 55 21 00 00 1e 00 c5

----------------

Block 0, Base EDID:
  EDID Structure Version & Revision: 1.3
  Vendor & Product Identification:
    Manufacturer: DSC
    Model: 1
    Made in: week 10 of 2019
  Basic Display Parameters & Features:
    Digital display
    Maximum image size: 27 cm x 20 cm    <--- before my changes it was 20x15
    Gamma: 2.20
    DPMS levels: Off
    RGB color display
    First detailed timing is the preferred timing
  Color Characteristics:
    Red  : 0.6328, 0.3398
    Green: 0.3105, 0.6328
    Blue : 0.1582, 0.0605
    White: 0.3134, 0.3291
  Established Timings I & II: none
  Standard Timings: none
  Detailed Timing Descriptors:
    DTD 1:  2200x1650   40.001 Hz   4:3    67.842 kHz  160.650 MHz (200 mm x 150 mm)
                 Hfront   56 Hsync  32 Hback  80 Hpol P
                 Vfront    3 Vsync   6 Vback  37 Vpol P
    Dummy Descriptor:
    Display Product Name: 'Paperlike H D'
    DTD 2:  1600x1200   60.000 Hz   4:3    75.000 kHz  162.000 MHz (621 mm x 341 mm)
                 Hfront   64 Hsync 192 Hback 304 Hpol P
                 Vfront    1 Vsync   3 Vback  46 Vpol P
Checksum: 0xc5

在 Windows 10 中一切正常。

我将感谢您的帮助。

答案1

我收到了大成的回复:

但与 Windows 或 macOS 不同的是,Windows 或 macOS 会将任何分辨率放大到 22001650 用于输出,Linux(使用 X 或 Wayland)具有不同的行为:当您选择 1600 时1200,显示驱动程序将仅输出1600个水平像素和1200个垂直像素,没有任何缩放。而在 Paperlike 系列中,由于我们将接收到的每个像素都按 1:1 进行映射来显示,因此接收到的 1600 个水平像素无法填满整个屏幕,因此出现了您刚才看到的“白色边框”。

因此,我们始终建议您在任何 Linux 发行版下仅为 Paperlike HD 选择原始分辨率(2200@40Hz)。如果您对 UI 元素的显示大小有任何问题,可以使用 Ubuntu 20.04 中的分数缩放,类似于 Windows DPI 缩放

相关内容