{"id":15059072,"url":"https://github.com/twshield/fedora-edid-kvm-config","last_synced_at":"2026-02-04T09:46:12.504Z","repository":{"id":234332078,"uuid":"788030206","full_name":"twshield/Fedora-EDID-KVM-config","owner":"twshield","description":"Configuring Fedora Linux to use a DisplayPort KVM by setting monitor EDID using kernel parameters","archived":false,"fork":false,"pushed_at":"2024-04-18T20:58:40.000Z","size":3,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-07-07T00:47:34.388Z","etag":null,"topics":["displayport","edid","fedora","kvm-switch","linux"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/twshield.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-04-17T16:38:26.000Z","updated_at":"2025-04-17T19:36:20.000Z","dependencies_parsed_at":null,"dependency_job_id":"a14df46c-2c66-4510-911c-21fe55a3fff5","html_url":"https://github.com/twshield/Fedora-EDID-KVM-config","commit_stats":null,"previous_names":["twshield/fedora-edid-kvm-config"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/twshield/Fedora-EDID-KVM-config","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/twshield%2FFedora-EDID-KVM-config","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/twshield%2FFedora-EDID-KVM-config/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/twshield%2FFedora-EDID-KVM-config/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/twshield%2FFedora-EDID-KVM-config/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/twshield","download_url":"https://codeload.github.com/twshield/Fedora-EDID-KVM-config/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/twshield%2FFedora-EDID-KVM-config/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266680273,"owners_count":23967791,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-23T02:00:09.312Z","response_time":66,"last_error":null,"robots_txt_status":null,"robots_txt_updated_at":null,"robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["displayport","edid","fedora","kvm-switch","linux"],"created_at":"2024-09-24T22:36:33.130Z","updated_at":"2026-02-04T09:46:10.431Z","avatar_url":"https://github.com/twshield.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Fedora-EDID-KVM-config\n\n## Issue\n\nThe DisplayPort specification requires that monitors provide an [EDID](https://en.wikipedia.org/wiki/Extended_Display_Identification_Data), but inexpensive KVM switches like the\n[IOGEAR 2-Port USB DisplayPort Cable KVM](https://www.iogear.com/product/GCS52DP/) do not provide EDID information to the inactive computer.  This can cause [display problems](https://docs.kernel.org/admin-guide/edid.html).\n\nThe following is a combination of things I found in various places on the internet and thought it would be good to have them all in one place.\n\nYou will need to do the following on all Linux computers connected to the KVM.  Reboot the computer after making the changes below.\n\nNote that Nvidia GPU drivers can manage EDID files, see for example [Managing a Display EDID on windows](https://nvidia.custhelp.com/app/answers/detail/a_id/3569/~/managing-a-display-edid-on-windows) and there are xorg.conf options for Nvidia drivers to set the EDID as well.  As far as I know, the following also works with Nvidia GPUs but I have not tested it.\n\nThe solution for Linux is to use the kernel parameters:\n\n### video=\n\nsee [modedb default video mode support](https://docs.kernel.org/fb/modedb.html)\n\n### drm.edid_firmware=\n\nsee [Kernel Parameters](https://docs.kernel.org/admin-guide/kernel-parameters.html?highlight=drm+edid_firmware)\n\n## Setting Kernel Parameters:\n\nNote that the following worked on Fedora 38 with AMD video cards and using X11, other distributions and combinations maybe different.  These parameters also support multiple monitors and video cards, but I'm not covering that here.  See the links above for more information on this.\n\nAdd the following to your `/etc/default/grub` file in the `GRUB_CMDLINE_LINUX=` line:\n```\nvideo=DP-1:3840x2160@30e drm.edid_firmware=edid/edid.bin\n```\n\nYou will need to modify the line above to match your configuration.  Then in Fedora running `grub2-mkconfig` will update the options in the files in `/boot/loader/entries/`.  Or you can modify one of these by hand to test it out.  This example uses the same EDID for all ports, which I have simply named `edid.bin` in this example.  Putting `DP-1:` in front of the EDID filename will apply it to only that port.\n\nI found that I did not need to use the `nomodeset` kernel parameter, and in fact it caused problems.\n\n### Getting the current display mode\n\nI found that I did not get working virtual consoles unless I also specified the display mode to use.  The command `xrandr` will show you the modes and indicate which one you are using. For my monitor I used the mode `3840x2160@30` in the above.  Note that the trailing `e` in the video parameter is to enable the port, it is not part of the mode.\n\n### Getting video port in use \n\nThe `DP-1` above is the video port that I have connected to my KVM (note that xrandr displays different names, don't use these).  Find your connected port by looking at the directories in `/sys/class/drm`, I have \n```\ncard1\ncard1-DP-1\ncard1-DP-2\ncard1-DVI-D-1\ncard1-HDMI-A-1\ncard1-HDMI-A-2\n```\nand doing `cat /sys/class/drm/card1-DP-1/status` shows that it is connected.\n\n### Getting an EDID file for your monitor \n\nUse the monitor-edid package command:\n```\nmonitor-get-edid \u003e edid.bin\n```\nThis will get the EDID of the currently connected monitor.  I gave my edid file a name with the monitor model in it.\n\nPut this file in `/lib/firmware/edid/`, you might need to make the edid subdirectory.\n\n### Adding the EDID file to the initramfs\n\nIt turns out that the video module (amdgpu in my case) looks for the EDID file early in the boot process, so it needs to be in the initramfs file.\nCreate the file `/etc/dracut.conf.d/99-edid.conf` with the contents:\n```\ninstall_items+=\" /lib/firmware/edid/edid.bin \"\n```\nand then run `dracut -f` to add this to the currently running kernel's initramfs file.\nYou can check the contents of this file with `lsinitrd`  You can grep `dmesg` output for `edid` to check for errors related to loading this file after rebooting.\n\n## Virtual Console font size\n\nNot directly related to this, but I'll put it here anyways, is how to set the font size on virtual consoles.  With my 4k monitor and old eyes the default font size was too small.  So I put the following in `/etc/vconsole.conf`\n```\nFONT=\"LatGrkCyr-12x22\"\n```\nand commented (with a leading `#`) out the FONT= line that was already there. Your choices for console fonts are in `/usr/lib/kbd/consolefonts/` in Fedora.\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftwshield%2Ffedora-edid-kvm-config","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftwshield%2Ffedora-edid-kvm-config","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftwshield%2Ffedora-edid-kvm-config/lists"}