{"id":14953,"date":"2025-02-25T11:21:35","date_gmt":"2025-02-25T11:21:35","guid":{"rendered":"https:\/\/voidlinux-ppc.org\/?docs=documentation\/configuration\/graphics"},"modified":"2025-02-25T17:41:19","modified_gmt":"2025-02-25T17:41:19","slug":"graphics","status":"publish","type":"docs","link":"https:\/\/voidlinux-ppc.org\/docs\/documentation\/configuration\/graphics\/","title":{"rendered":"Graphics"},"content":{"rendered":"\n<p>The goal of this page is to track compatibility with graphics hardware as well as provide information on how to configure some specifics.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"atiamd-graphics-cards\">ATI\/AMD graphics cards<\/h3>\n\n\n\n<p>In general this comes down to generation and the port you are running.<\/p>\n\n\n\n<p>On older kernels, all AGP Radeon cards are affected by random hangs caused by AGP GART code. You will need to provide&nbsp;<code>radeon.agpmode=-1<\/code>&nbsp;on kernel command line to work around the issue. This is not necessary at least on kernels 4.19 and newer.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"rage-rage-pro-etc\">Rage, Rage Pro etc.<\/h4>\n\n\n\n<p><strong>Interface:<\/strong>&nbsp;PCI, AGP<br><strong>OpenGL:<\/strong>&nbsp;1.2<br><strong>Works:<\/strong>&nbsp;Console, X11 untested but may work<br><strong>KMS:<\/strong>&nbsp;No<br><strong>3D acceleration:<\/strong>&nbsp;No&nbsp;<strong>2D acceleration:<\/strong>&nbsp;X11 (untested)&nbsp;<strong>X11 driver:<\/strong>&nbsp;<code>xf86-video-mach64<\/code><br><strong>Wayland:<\/strong>&nbsp;Only compositors that support&nbsp;<code>fbdev<\/code><\/p>\n\n\n\n<p>These models can generally be found in some old Macs. The framebuffer console is served by an&nbsp;<code>fbdev<\/code>&nbsp;driver, there is no modern KMS driver.<\/p>\n\n\n\n<p>In X11, these GPUs are served by the&nbsp;<code>xf86-video-mach64<\/code>&nbsp;driver. It will not work out of box &#8211; you need to correctly set up your modelines in&nbsp;<code>xorg.conf.d<\/code>&nbsp;to make it work.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"rage-128-series\">Rage 128 series<\/h4>\n\n\n\n<p><strong>Interface:<\/strong>&nbsp;PCI, AGP<br><strong>OpenGL:<\/strong>&nbsp;1.2<br><strong>Works:<\/strong>&nbsp;Console, X11 untested but may work<br><strong>KMS:<\/strong>&nbsp;No<br><strong>3D acceleration:<\/strong>&nbsp;No&nbsp;<strong>2D acceleration:<\/strong>&nbsp;X11 (untested)&nbsp;<strong>X11 driver:<\/strong>&nbsp;<code>xf86-video-r128<\/code>,&nbsp;<code>xf86-video-fbdev<\/code>&nbsp;<strong>Wayland:<\/strong>&nbsp;Only compositors that support&nbsp;<code>fbdev<\/code><\/p>\n\n\n\n<p>Similar things as above apply.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"radeon-7000-series\">Radeon 7000 series<\/h4>\n\n\n\n<p><strong>Interface:<\/strong>&nbsp;PCI, AGP<br><strong>OpenGL:<\/strong>&nbsp;1.3<br><strong>Works:<\/strong>&nbsp;Yes, AGP may have issues<br><strong>KMS:<\/strong>&nbsp;Yes<br><strong>3D acceleration:<\/strong>&nbsp;Yes<br><strong>2D acceleration:<\/strong>&nbsp;X11<br><strong>X11 driver:<\/strong>&nbsp;<code>xf86-video-ati<\/code><br><strong>Wayland:<\/strong>&nbsp;Only compositors that support&nbsp;<code>fbdev<\/code><\/p>\n\n\n\n<p>These cards come up, but experience freezes shortly after boot, as far as has been confirmed. 3D acceleration is covered by Mesa. These cards only support fixed-function OpenGL, which means you can&#8217;t use the modesetting driver or GLAMOR with them.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"radeon-8000-series-to-9250\">Radeon 8000 series to 9250<\/h4>\n\n\n\n<p><strong>Interface:<\/strong>&nbsp;AGP<br><strong>OpenGL:<\/strong>&nbsp;1.4<br><strong>Works:<\/strong>&nbsp;Yes, issues on&nbsp;<code>musl<\/code><br><strong>KMS:<\/strong>&nbsp;Yes<br><strong>3D acceleration:<\/strong>&nbsp;Yes<br><strong>2D acceleration:<\/strong>&nbsp;X11<br><strong>X11 driver:<\/strong>&nbsp;<code>xf86-video-ati<\/code><br><strong>Wayland:<\/strong>&nbsp;Only compositors that support&nbsp;<code>fbdev<\/code><\/p>\n\n\n\n<p>These cards work, including 3D acceleration. However, on&nbsp;<code>musl<\/code>&nbsp;systems, OpenGL currently renders junk, and there is no known workaround other than using a&nbsp;<code>glibc<\/code>&nbsp;system.<\/p>\n\n\n\n<p>Since these cards do not support shaders, you can&#8217;t use the modesetting driver or GLAMOR with them.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"radeon-9500-and-newer-x300---x600-x1050\">Radeon 9500 and newer, X300 &#8211; X600, X1050<\/h4>\n\n\n\n<p><strong>Interface:<\/strong>&nbsp;AGP<br><strong>OpenGL:<\/strong>&nbsp;2.0\/2.1<br><strong>Works:<\/strong>&nbsp;With issues<br><strong>KMS:<\/strong>&nbsp;Yes<br><strong>3D acceleration:<\/strong>&nbsp;Yes<br><strong>2D acceleration:<\/strong>&nbsp;X11, GLAMOR<br><strong>X11 driver:<\/strong>&nbsp;<code>xf86-video-ati<\/code>,&nbsp;<code>modesetting<\/code><br><strong>Wayland:<\/strong>&nbsp;Yes<\/p>\n\n\n\n<p>These cards seemingly work, but experience system hangs when running complex OpenGL applications (the issue manifests e.g. when loading a map in a 3D game).<\/p>\n\n\n\n<p>These cards support shaders and generally render simple things (e.g.&nbsp;<code>glxgears<\/code>) correctly, including on&nbsp;<code>musl<\/code>&nbsp;systems. Being OpenGL 2.1 capable hardware, they can run accelerated Wayland and can use the&nbsp;<code>modesetting<\/code>&nbsp;driver and GLAMOR in X11.<\/p>\n\n\n\n<p>In general, things are good enough for desktop work and video, without stability issues. Running games results in those hangs, though.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"radeon-x700---x850-x12xx\">Radeon X700 &#8211; X850, X12xx<\/h4>\n\n\n\n<p><strong>Interface:<\/strong>&nbsp;AGP, PCI Express<br><strong>OpenGL:<\/strong>&nbsp;2.0\/2.1<br><strong>Works:<\/strong>&nbsp;Yes (untested)<br><strong>KMS:<\/strong>&nbsp;Yes<br><strong>3D acceleration:<\/strong>&nbsp;Yes<br><strong>2D acceleration:<\/strong>&nbsp;X11, GLAMOR<br><strong>X11 driver:<\/strong>&nbsp;<code>xf86-video-ati<\/code>,&nbsp;<code>modesetting<\/code><br><strong>Wayland:<\/strong>&nbsp;Yes<\/p>\n\n\n\n<p>These cards should work but haven&#8217;t been widely tested.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"radeon-x700---x850-x12xx-1\">Radeon X700 &#8211; X850, X12xx<\/h4>\n\n\n\n<p><strong>Interface:<\/strong>&nbsp;AGP, PCI Express<br><strong>OpenGL:<\/strong>&nbsp;2.0\/2.1<br><strong>Works:<\/strong>&nbsp;Yes (untested)<br><strong>KMS:<\/strong>&nbsp;Yes<br><strong>3D acceleration:<\/strong>&nbsp;Yes<br><strong>2D acceleration:<\/strong>&nbsp;X11, GLAMOR<br><strong>X11 driver:<\/strong>&nbsp;<code>xf86-video-ati<\/code>,&nbsp;<code>modesetting<\/code><br><strong>Wayland:<\/strong>&nbsp;Yes<\/p>\n\n\n\n<p>These cards should work but haven&#8217;t been widely tested.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"radeon-x1300---x19xx\">Radeon X1300 &#8211; X19xx<\/h4>\n\n\n\n<p><strong>Interface:<\/strong>&nbsp;AGP, PCI Express<br><strong>OpenGL:<\/strong>&nbsp;2.0\/2.1<br><strong>Works:<\/strong>&nbsp;Depending on model<br><strong>KMS:<\/strong>&nbsp;Yes<br><strong>3D acceleration:<\/strong>&nbsp;Yes<br><strong>2D acceleration:<\/strong>&nbsp;X11, GLAMOR<br><strong>X11 driver:<\/strong>&nbsp;<code>xf86-video-ati<\/code>,&nbsp;<code>modesetting<\/code><br><strong>Wayland:<\/strong>&nbsp;Yes<\/p>\n\n\n\n<p>These cards should technically work.<\/p>\n\n\n\n<p>However, on Macs, at least certain models use a reduced video BIOS, where a part of it is loaded by the OS afterwards. This prevents function in Linux. No workaround is currently known to the project.<\/p>\n\n\n\n<p>PC versions of the cards should work at least on G4 Macs and so on once booted into Linux.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"radeon-hd-2xxx---4xxx\">Radeon HD 2xxx &#8211; 4xxx<\/h4>\n\n\n\n<p><strong>Interface:<\/strong>&nbsp;AGP, PCI Express<br><strong>OpenGL:<\/strong>&nbsp;3.3 (3.2 on big endian)<br><strong>Works:<\/strong>&nbsp;Yes<br><strong>KMS:<\/strong>&nbsp;Yes<br><strong>3D acceleration:<\/strong>&nbsp;Yes<br><strong>2D acceleration:<\/strong>&nbsp;X11, GLAMOR<br><strong>X11 driver:<\/strong>&nbsp;<code>xf86-video-ati<\/code>,&nbsp;<code>modesetting<\/code><br><strong>Wayland:<\/strong>&nbsp;Yes<\/p>\n\n\n\n<p>These cards work. You may experience driver bugs on big endian systems.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"radeon-hd-5xxx-6xxx-7450-8450-r5-230235-etc\">Radeon HD 5xxx, 6xxx, 7450, 8450, R5 230\/235 etc.<\/h4>\n\n\n\n<p><strong>Interface:<\/strong>&nbsp;PCI Express<br><strong>OpenGL:<\/strong>&nbsp;4.4\/4.5 (3.2 on big endian)<br><strong>Works:<\/strong>&nbsp;Yes<br><strong>KMS:<\/strong>&nbsp;Yes<br><strong>3D acceleration:<\/strong>&nbsp;Yes<br><strong>2D acceleration:<\/strong>&nbsp;X11, GLAMOR<br><strong>X11 driver:<\/strong>&nbsp;<code>xf86-video-ati<\/code>,&nbsp;<code>modesetting<\/code><br><strong>Wayland:<\/strong>&nbsp;Yes<\/p>\n\n\n\n<p>These cards work. You may experience driver bugs on big endian systems. You will also not be able to utilize OpenGL beyond 3.2 on big endian systems.<\/p>\n\n\n\n<p>These are the last cards that function on big endian systems in general. GCN cards currently have broken kernel drivers in all kernels.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"radeon-gcn-hd-70008000-series-rrxwx-series-etc\">Radeon GCN (HD 7000\/8000 series, R\/RX\/WX series etc.)<\/h4>\n\n\n\n<p><strong>Interface:<\/strong>&nbsp;PCI Express<br><strong>OpenGL:<\/strong>&nbsp;4.6<br><strong>Works:<\/strong>&nbsp;Little endian<br><strong>KMS:<\/strong>&nbsp;Yes<br><strong>3D acceleration:<\/strong>&nbsp;Yes<br><strong>2D acceleration:<\/strong>&nbsp;X11, GLAMOR<br><strong>X11 driver:<\/strong>&nbsp;<code>xf86-video-amdgpu<\/code>,&nbsp;<code>modesetting<\/code><br><strong>Wayland:<\/strong>&nbsp;Yes<\/p>\n\n\n\n<p>This includes everything up to Vega. These cards only work on little endian systems due to&nbsp;<code>amdgpu<\/code>&nbsp;kernel driver requirement.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"radeon-rdna-navi\">Radeon RDNA (Navi)<\/h4>\n\n\n\n<p><strong>Interface:<\/strong>&nbsp;PCI Express<br><strong>OpenGL:<\/strong>&nbsp;4.6<br><strong>Works:<\/strong>&nbsp;Little endian and kernel 5.4+<br><strong>KMS:<\/strong>&nbsp;Yes<br><strong>3D acceleration:<\/strong>&nbsp;Yes<br><strong>2D acceleration:<\/strong>&nbsp;X11, GLAMOR<br><strong>X11 driver:<\/strong>&nbsp;<code>xf86-video-amdgpu<\/code>,&nbsp;<code>modesetting<\/code><br><strong>Wayland:<\/strong>&nbsp;Yes<\/p>\n\n\n\n<p>In Void, AMD Navi cards (RX 5xxx etc.) work starting with kernel 5.4. In upstream (vanilla) kernel you will need at least 5.6.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"nvidia-graphics-cards\">NVIDIA graphics cards<\/h3>\n\n\n\n<p>Support for NVIDIA cards is generally significantly more limited and you will need to use the&nbsp;<code>nouveau<\/code>&nbsp;driver.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"pre-geforce-riva-etc\">Pre-GeForce (RIVA etc.)<\/h4>\n\n\n\n<p><strong>Interface:<\/strong>&nbsp;PCI, AGP<br><strong>OpenGL:<\/strong>&nbsp;1.2<br><strong>Works:<\/strong>&nbsp;Console, X11 may work with&nbsp;<code>fbdev<\/code><br><strong>KMS:<\/strong>&nbsp;No<br><strong>3D acceleration:<\/strong>&nbsp;No<br><strong>2D acceleration:<\/strong>&nbsp;No<br><strong>X11 driver:<\/strong>&nbsp;<code>xf86-video-fbdev<\/code><br><strong>Wayland:<\/strong>&nbsp;Only compositors that support&nbsp;<code>fbdev<\/code><\/p>\n\n\n\n<p>The framebuffer console is served by an&nbsp;<code>fbdev<\/code>&nbsp;driver, there is no modern KMS driver.<\/p>\n\n\n\n<p>There is no 3D acceleration support, you may still be able to get X11 to work with&nbsp;<code>xf86-video-fbdev<\/code>.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"geforce-2-and-older-4-mx\">GeForce 2 and older, 4 MX<\/h4>\n\n\n\n<p><strong>Interface:<\/strong>&nbsp;AGP<br><strong>OpenGL:<\/strong>&nbsp;1.3<br><strong>Works:<\/strong>&nbsp;Issues<br><strong>KMS:<\/strong>&nbsp;Yes<br><strong>3D acceleration:<\/strong>&nbsp;Yes<br><strong>2D acceleration:<\/strong>&nbsp;X11<br><strong>X11 driver:<\/strong>&nbsp;<code>xf86-video-nouveau<\/code><br><strong>Wayland:<\/strong>&nbsp;Only compositors that support&nbsp;<code>fbdev<\/code><\/p>\n\n\n\n<p>At least GeForce 2 MX only comes up in kernel 4.4, with newer kernels failing to initialize the card. It is not known whether this affects GeForce 3 and 4 MX series as well.<\/p>\n\n\n\n<p>X11 will not come up on GeForce 2 MX. There is some issue with the video outputs disappearing when scanning EDID.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"geforce-3-and-4\">GeForce 3 and 4<\/h4>\n\n\n\n<p><strong>Interface:<\/strong>&nbsp;AGP<br><strong>OpenGL:<\/strong>&nbsp;1.3<br><strong>Works:<\/strong>&nbsp;Unknown<br><strong>KMS:<\/strong>&nbsp;Yes<br><strong>3D acceleration:<\/strong>&nbsp;Yes<br><strong>2D acceleration:<\/strong>&nbsp;X11<br><strong>X11 driver:<\/strong>&nbsp;<code>xf86-video-nouveau<\/code><br><strong>Wayland:<\/strong>&nbsp;Only compositors that support&nbsp;<code>fbdev<\/code><\/p>\n\n\n\n<p>It is currently unknown whether these cards work.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"geforce-fx\">GeForce FX<\/h4>\n\n\n\n<p><strong>Interface:<\/strong>&nbsp;AGP<br><strong>OpenGL:<\/strong>&nbsp;2.1<br><strong>Works:<\/strong>&nbsp;Unknown<br><strong>KMS:<\/strong>&nbsp;Yes<br><strong>3D acceleration:<\/strong>&nbsp;Yes<br><strong>2D acceleration:<\/strong>&nbsp;X11, GLAMOR<br><strong>X11 driver:<\/strong>&nbsp;<code>xf86-video-nouveau<\/code><br><strong>Wayland:<\/strong>&nbsp;Yes<\/p>\n\n\n\n<p>It is currently unknown whether these cards work.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"geforce-6xxx-7xxx\">GeForce 6xxx, 7xxx<\/h4>\n\n\n\n<p><strong>Interface:<\/strong>&nbsp;AGP, PCI Express<br><strong>OpenGL:<\/strong>&nbsp;2.1<br><strong>Works:<\/strong>&nbsp;Yes<br><strong>KMS:<\/strong>&nbsp;Yes<br><strong>3D acceleration:<\/strong>&nbsp;Yes<br><strong>2D acceleration:<\/strong>&nbsp;X11, GLAMOR<br><strong>X11 driver:<\/strong>&nbsp;<code>xf86-video-nouveau<\/code><br><strong>Wayland:<\/strong>&nbsp;Yes<\/p>\n\n\n\n<p>These cards work, but suffer from&nbsp;<code>nouveau<\/code>&nbsp;bugs, which may cause broken rendering in various applications. Some video pixel formats may also be broken. In general it is good enough for video and accelerated desktop.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"geforce-8xxx-9xxx-200-series\">GeForce 8xxx, 9xxx, 200 series<\/h4>\n\n\n\n<p><strong>Interface:<\/strong>&nbsp;PCI Express<br><strong>OpenGL:<\/strong>&nbsp;3.3<br><strong>Works:<\/strong>&nbsp;Little endian<br><strong>KMS:<\/strong>&nbsp;Yes<br><strong>3D acceleration:<\/strong>&nbsp;Yes<br><strong>2D acceleration:<\/strong>&nbsp;X11, GLAMOR<br><strong>X11 driver:<\/strong>&nbsp;<code>xf86-video-nouveau<\/code><br><strong>Wayland:<\/strong>&nbsp;Yes<\/p>\n\n\n\n<p>These cards should work with&nbsp;<code>nouveau<\/code>&nbsp;at least on little endian systems.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\" id=\"geforce-400-and-newer-series\">GeForce 400 and newer series<\/h4>\n\n\n\n<p><strong>Interface:<\/strong>&nbsp;PCI Express<br><strong>OpenGL:<\/strong>&nbsp;4.6<br><strong>Works:<\/strong>&nbsp;Little endian, when supported by&nbsp;<code>nouveau<\/code><br><strong>KMS:<\/strong>&nbsp;Yes<br><strong>3D acceleration:<\/strong>&nbsp;Yes<br><strong>2D acceleration:<\/strong>&nbsp;X11, GLAMOR<br><strong>X11 driver:<\/strong>&nbsp;<code>xf86-video-nouveau<\/code><br><strong>Wayland:<\/strong>&nbsp;Yes<\/p>\n\n\n\n<p>These cards should work with&nbsp;<code>nouveau<\/code>&nbsp;at least on little endian systems. Exact hardware support is subject to&nbsp;<code>nouveau<\/code>&nbsp;support (e.g. reclocking on new cards may not work and so on).<\/p>\n","protected":false},"featured_media":0,"parent":14943,"menu_order":3,"comment_status":"closed","ping_status":"closed","template":"","doc_tag":[],"class_list":["post-14953","docs","type-docs","status-publish","hentry"],"comment_count":0,"_links":{"self":[{"href":"https:\/\/voidlinux-ppc.org\/wp-json\/wp\/v2\/docs\/14953","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/voidlinux-ppc.org\/wp-json\/wp\/v2\/docs"}],"about":[{"href":"https:\/\/voidlinux-ppc.org\/wp-json\/wp\/v2\/types\/docs"}],"replies":[{"embeddable":true,"href":"https:\/\/voidlinux-ppc.org\/wp-json\/wp\/v2\/comments?post=14953"}],"version-history":[{"count":2,"href":"https:\/\/voidlinux-ppc.org\/wp-json\/wp\/v2\/docs\/14953\/revisions"}],"predecessor-version":[{"id":15186,"href":"https:\/\/voidlinux-ppc.org\/wp-json\/wp\/v2\/docs\/14953\/revisions\/15186"}],"up":[{"embeddable":true,"href":"https:\/\/voidlinux-ppc.org\/wp-json\/wp\/v2\/docs\/14943"}],"prev":[{"title":"Virtualization","link":"https:\/\/voidlinux-ppc.org\/docs\/documentation\/configuration\/virtualization\/","href":"https:\/\/voidlinux-ppc.org\/wp-json\/wp\/v2\/docs\/14952"}],"wp:attachment":[{"href":"https:\/\/voidlinux-ppc.org\/wp-json\/wp\/v2\/media?parent=14953"}],"wp:term":[{"taxonomy":"doc_tag","embeddable":true,"href":"https:\/\/voidlinux-ppc.org\/wp-json\/wp\/v2\/doc_tag?post=14953"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}