• [gentoo-user] EDID file name for kernel?

    From Peter Humphrey@21:1/5 to All on Fri Jul 5 16:30:01 2024
    Hello list,

    The monitor on this box is connected via a KVM switch, which may not be set to this machine at boot time. Then I get a default VT screen size which is too tall - it can't show the last three lines or so.

    The kernel documents show that an EDID data file can be read from /lib/firmware,
    and I've run get-edid to create it, but now what is it supposed to be called? The kernel menuconfig points to a Documentation file, but that doesn't help either.

    I could try guessing, but who knows how long that might take? Actually, I did try naming it /lib/firmware/edid.bin, but of course that didn't work.

    --
    Regards,
    Peter.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Jack@21:1/5 to Peter Humphrey on Fri Jul 5 17:00:01 2024
    On 7/5/24 10:20 AM, Peter Humphrey wrote:
    Hello list,

    The monitor on this box is connected via a KVM switch, which may not be set to
    this machine at boot time. Then I get a default VT screen size which is too tall - it can't show the last three lines or so.

    The kernel documents show that an EDID data file can be read from /lib/firmware,
    and I've run get-edid to create it, but now what is it supposed to be called? The kernel menuconfig points to a Documentation file, but that doesn't help either.

    I could try guessing, but who knows how long that might take? Actually, I did try naming it /lib/firmware/edid.bin, but of course that didn't work.
    I did this years ago, and of course can't remember any of the details.  However, I do think you can name it anything you want - you just need to
    refer to it by name in the right config file, and I don't remember if
    that is done the same place as the kernel firmware is specified, or
    perhaps as a parameter for the kernel video driver module.  I was also
    going to suggest an X config option, but that's probably too late in the process.  I know this isn't all that helpful - but you might try modinfo
    on your video kernel module to see if it's listed.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Michael@21:1/5 to All on Fri Jul 5 17:33:37 2024
    On Friday, 5 July 2024 15:52:27 BST Jack wrote:
    On 7/5/24 10:20 AM, Peter Humphrey wrote:
    Hello list,

    The monitor on this box is connected via a KVM switch, which may not be
    set to this machine at boot time. Then I get a default VT screen size
    which is too tall - it can't show the last three lines or so.

    The kernel documents show that an EDID data file can be read from /lib/firmware, and I've run get-edid to create it, but now what is it supposed to be called? The kernel menuconfig points to a Documentation file, but that doesn't help either.

    I could try guessing, but who knows how long that might take? Actually, I did try naming it /lib/firmware/edid.bin, but of course that didn't work.
    I did this years ago, and of course can't remember any of the details. However, I do think you can name it anything you want - you just need to refer to it by name in the right config file, and I don't remember if
    that is done the same place as the kernel firmware is specified, or
    perhaps as a parameter for the kernel video driver module. I was also
    going to suggest an X config option, but that's probably too late in the process. I know this isn't all that helpful - but you might try modinfo
    on your video kernel module to see if it's listed.

    With the monitor connected and working, list all edid files in your pci bus:

    find /sys |grep -i edid

    Check each file's content with xxd. Assuming you have no other monitors connected, one of them will have an edid binary blob in it.

    You can copy this file to /lib/firmware/edid/, naming it appropriately, e.g.:

    /lib/firmware/edid/asus_VS239_edid.bin

    Enable your kernel's CONFIG_DRM_LOAD_EDID_FIRMWARE and add the above firmware path:

    edid/asus_VS239_edid.bin

    in your CONFIG_EXTRA_FIRMWARE field.

    If you have built your graphics as a module you can add this on the kernel commandline:

    drm.edid_firmware=edid/asus_VS239_edid.bin

    If the video card port is not detecting the monitor being connected, you may need to be somewhat more explicit with the port it is connected to, e.g.:

    drm.edid_firmware=HDMI-1:edid/asus_VS239_edid.bin


    Any such firmware and graphics driver would need to be added to your
    initramfs, if you're using such a thing, to make sure you don't have to wait until the kernel is loaded before your monitor shows anything useful.

    The above should hopefully work, although I've never had a KVM switch to know how it could mess things up. :-/

    -----BEGIN PGP SIGNATURE-----

    iQIzBAABCAAdFiEEXqhvaVh2ERicA8Ceseqq9sKVZxkFAmaIIGEACgkQseqq9sKV Zxkq5A//T2G9bKFdX2Qm7CU9BvgAuzHzwAs+wuK6MgGfJ03o62bOcuM72JDwYANB OkYCMQ0EEjyd56UVp8qPLrAV04cLDpNjCdYJKPf+0+P4CvXlOf0rMqa/h/YyRm6+ uoP78t6dDFJRb0GThB3ytRirXIa3hQsLEh3v1SakSJXfVciUBfXKVndAXtUqAkes ANoKQvxBziOQ9biuW8r6jL0vFkIUqpR8db2tyn06RynXYa4xkbVQo1fKj3rUBnML 8Fo8/h1Ar7VwRsBqmWr9nqHgTsd5hab4XsL65NJYtGVwWOUUjTnkCFZUFG0qB8vL +wUCi2IH7mvWduOYYCaFwCVEcAoT0bmLloHEs4e8KwlS34uPdTJjr5JTlSacqWIJ bpoFX9tSjSWB6bqSxdr6SdQdSZHTfHIx+l7cRt6IJBV5MuBXBr+bih1VgO2RWgEX aErl1XLijv3GPBNQvs+tvb61wQDREpg90VCJ+GMXIOSTQF3BNgi8AjAUeUg/eKSl wmD8Y+pRZeFBsAHo7XztNxOr3VmILOhrTSKTkKVo8pq1qUAzxnzNVUCfmCkvJjIf 5iFUCcjIjAJmvd3JsZ/J4HEhfvT+Gd+yqGs5q/yx0nmUnpX/TNtmyTYZlBzUqnef sgQRLOrXe3tQT8uDFG5tco9pbhYl6s/g4OyfQ9+fn4tgWz+qwV0=
    =soJp
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)