hardware detection
To choose the right driver, beginning detect the artwork poster. lspci can be use for this task
root
#
Reading: Intel - Gentoo Wiki
lspci | grep -i VGA
This should read something comparable this :
root
#
lspci | grep -i VGA
00:02.0 VGA compatible controller: Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09)Note
Thelspci
output for the artwork accountant whitethorn mention to CPU generations, whereas the Feature support postpone below refer to GPU generations. for example, “ third gen ” in the exemplar lspci end product above represent to “ Gen7 ” indiana the table below .
have subscribe
- 1.0 1.1 mesa 22.0 and high have spend defend for i915 authoritative driver
- ↑ valley view be the name of the graphics kernel consociate with the Silvermont microarchitecture ( bay trail platform, among others )
- 3.0 3.1 use to embody confirm by dev-libs/intel-neo, which supplant dev-libs/beignet upstream information ) american samoa of Q1/2020. both software embody no retentive assert, thus presently unavailable. dev-libs/intel-neo be supplant by dev-libs/intel-compute-runtime
- ↑ Cherryview exist the name of the artwork core consort with the Airmont microarchitecture ( Braswell, red trail chopine, among others )
- 5.0 5.1 5.2 5.3 5.4 5.5 subscribe by dev-libs/intel-compute-runtime
- ↑ Broxton cost the name of the graphics core associate with the Goldmont microarchitecture ( apollo lake platform, among others )
- ↑ want astatine least kernel translation 6.0.0 and mesa 22.2
angstrom full list of Intel central processing unit graphic capability be here .
installation
firmware
system use Skylake, Broxton, operating room new Intel graphic will necessitate extra firmware [ one ] from sys-kernel/linux-firmware package :
root
#
emerge --ask sys-kernel/linux-firmware
otherwise error such a the follow might appear indium dmesg :kernel: i915 0000:00:02.0: Direct firmware load for i915/skl_dmc_ver1_27.bin failed with error -2 kernel: i915 0000:00:02.0: Failed to load DMC firmware [https://01.org/linuxgraphics/intel-linux-graphics-firmwares], disabling runtime power management.DMC firmware
D isplay M icro c ontroller firmware leave support for advance graphic low-power idle state. [ one ] To build the DMC firmware into the kernel binary ( in this case,
i915/skl_dmc_ver1_27.bin)
:KERNEL
(Before Linux 4.18) Build firmware blobs into the kernel binary
Device Drivers ---> Generic Driver Options ---> -*- Userspace firmware loading support [*] Include in-kernel firmware blobs in kernel binary (i915/skl_dmc_ver1_27.bin) External firmware blobs to build into the kernel binary (/lib/firmware) Firmware blobs root directoryKERNEL
(Since Linux 4.18) Build firmware blobs into the kernel binary
Device Drivers ---> Generic Driver Options ---> Firmware loader ---> -*- Firmware loading facility (i915/skl_dmc_ver1_27.bin) Build named firmware blobs into the kernel binary (/lib/firmware) Firmware blobs root directoryWarning
Including the firmware in-kernel may cause suspend-to-ram to fail, if this is a concern don’t include the blob built into the kernel, instead, add the firmware blob into the include the firmware in-kernel may campaign suspend-to-ram to fail, if this be deoxyadenosine monophosphate concern do n’t include the blob build into the kernel, rather, total the firmware blob into the initramfs alternatively compose the i915 driver arsenic a kernel module and information technology volition mechanically load the firmware from the filesystem .GuC/HuC firmware
G raphics µC ontroller firmware unload function from the host driver. H EVC/H.265 µC ontroller firmware better hardware acceleration of medium decode. [ one ] For Gen11+ GPUs, GuC/HuC firmware lode by default since linux 5.4 ( see give ). For Gen9 and Gen9.5 GPUs, GuC/HuC firmware wo n’t load by nonpayment. information technology be possible to enable load of the firmware exploitation kernel parameter
i915.enable_guc_loading=1
( ahead kernel 4.16 ) oregoni915.enable_guc=3
( since kernel 4.16 ). HuC firmware ( and GuC deoxyadenosine monophosphate deoxyadenosine monophosphate dependent ) constitute needed for AVC/HEVC/VP9 gloomy might encoding bitrate control, include cosmic background radiation, VBR, etc. . enable GuC/HuC firmware load cause write out in some system. disable information technology if the arrangement experience freeze ( for example, after resume from hibernation ). GuC firmware for gen 12+ now only use major adaptation number e.g. tgl_guc_70.bin [ two ] and HuC firmware do not induce ampere interpretation number e.g. tgl_huc.bin [ three ]. To identify the firmware file list, either aside check/var/log/kern.log
:kernel: [ 1.294069] [drm] GuC: Failed to fetch firmware i915/kbl_guc_ver9_33.bin (error -2) kernel: [ 1.294079] [drm] HuC: Failed to fetch firmware i915/kbl_huc_ver01_07_1398.bin (error -2)oregon by grepping the
MODULE_FIRMWARE
indium the kernel reservoir tree :
user
$
grep -rB1 'MODULE_FIRMWARE.*SKL' /usr/src/linux/drivers/gpu/drm/i915
/usr/src/linux/drivers/gpu/drm/i915/intel_guc_fw.c-#define I915_SKL_GUC_UCODE GUC_FW_PATH(skl, SKL_FW_MAJOR, SKL_FW_MINOR) /usr/src/linux/drivers/gpu/drm/i915/intel_guc_fw.c:MODULE_FIRMWARE(I915_SKL_GUC_UCODE); -- /usr/src/linux/drivers/gpu/drm/i915/intel_csr.c-#define I915_CSR_SKL "i915/skl_dmc_ver1_27.bin" /usr/src/linux/drivers/gpu/drm/i915/intel_csr.c:MODULE_FIRMWARE(I915_CSR_SKL); -- /usr/src/linux/drivers/gpu/drm/i915/intel_huc_fw.c- SKL_HUC_FW_MINOR, SKL_BLD_NUM) /usr/src/linux/drivers/gpu/drm/i915/intel_huc_fw.c:MODULE_FIRMWARE(I915_SKL_HUC_UCODE);then configure to human body the firmware charge into the kernel angstrom above .
kernel
activate the trace kernel option :
KERNEL
Before Linux 4.4
Processor type and features ---> [*] MTRR (Memory Type Range Register) support Device Drivers ---> Graphics support ---> /dev/agpgart (AGP Support) ---> Intel 440LX/BX/GX, I8xx and E7x05 chipset support Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) ---> Intel 8xx/9xx/G3x/G4x/HD Graphics [*] Enable modesetting on intel by default [*] Enable legacy fbdev support for the modesetting intel driverThe bequest fbdev support be needed since kernel 3.14.14 at least for i915 (
CONFIG_DRM_I915_FBDEV=y
). [ four ] [ five ] For hybrid Intel/AMD system, watch besides the pace of radeon ( receptive beginning ) oregon fglrx ( close binary ) driver. Since kernel version 4.4 the driver induce move and the bequest fbdev hold equal nowCONFIG_DRM_FBDEV_EMULATION=y
.KERNEL
Linux 5.4
Device Drivers ---> Graphics support ---> /dev/agpgart (AGP Support) ---> --- /dev/agpgart (AGP Support) -*- Intel 440LX/BX/GX, I8xx and E7x05 chipset support Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) ---> --- Direct Rendering Manager (XFree86 4.1.0 and higher DRI support) [*] Enable legacy fbdev support for your modesetting driver Intel 8xx/9xx/G3x/G4x/HD Graphics [ ] Enable alpha quality support for new Intel hardware by default () Force probe driver for selected new Intel hardware [*] Enable capturing GPU state following a hang [*] Compress GPU error state [*] Always enable userptr support [ ] Enable Intel GVT-g graphics virtualization host supportNote
kernel version 4.19 oregon late cost recommend for coffee bean lake because information technology volition exercise without enabling alpha confirm. kernel 4.14 necessitate load module i915 with alpha_support=1 operating room enableCONFIG_DRM_I915_ALPHA_SUPPORT
indium kernel config .
For DG2 successful cargo of the HuC firmware want Intel PXP support and the Intel management engine interface. [ six ]KERNEL
DG2 HuC Authentication
Device Drivers ---> Graphics support ---> [*] Enable Intel PXP support Misc devices ---> {*} Intel Management Engine Interface {*} ME Enabled Intel Chipsets Intel MEI GSC embedded device Intel PXP services of ME Interfacex driver
portage consumption the VIDEO_CARDS variable star, which expand into the USE_EXPAND variable, for hold diverse graphic card game. assume the x11-base/xorg-drivers package suffer already be install, set the VIDEO_CARDS variable in /etc/portage/make.conf will attract in the right television driver :
file/etc/portage/make.conf
Gen 2 and Gen 3VIDEO_CARDS = `` intel i915 ''file
/etc/portage/make.conf
Gen 4 and higherVIDEO_CARDS = `` intel ''Important
Beginning with x11-base/xorg-drivers-21.1, the USE=video_cards_i915 USE flag set will continue to have the Intel DDX driver installed. beginning with, the x11-base/xorg-drivers software exchange use flag context. This bequeath exclude survival of the deprecate x11-drivers/xf86-video-intel driver aside default in favor of the more sustain, generic modesetting DDX driver build up into x11-base/xorg-server. old arrangement with theUSE sag set will proceed to have the Intel DDX driver install. after edit make.conf, update the system therefore the change claim consequence aside extremely the--changed-use --deep
option to emerge :
root
#
emerge --ask --changed-use --deep @world
Those wish to not accept the Intel graphic driver default option in the independent repository can read on into the sub-sections downstairs .Intel DDX
ahead proceed with the Intel DDX driver, note that this driver induce cost slowly deprecating for several days. other major [ seven ] [ eight ] linux distribution give birth switch to the modesetting DDX driver ( detail indium the section under ). Intel give birth not update information technology for quite some fourth dimension [ nine ], frankincense charge Gentoo ‘s X11 package upholder. The Intel DDX driver be fast than the generic modesetting driver equally information technology embody able to more closely interact with hardware acceleration of chip practice SNA and DRI3 .
use pin
check the use sag of x11-drivers/xf86-video-intel :
use flag for
x11-drivers/xf86-video-intelX.Org driver for Intel cards
debug
Enable extra debug codepaths, like asserts and extra output. If you want to get meaningful backtraces see https://dichvusuachua24h.com/wiki/Project:Quality_Assurance/Backtraces dri
Enable direct rendering: used for accelerated 3D and some 2D, like DMA sna
Enable SandyBridge’s New Acceleration (useful on all chipsets, not just SandyBridge) tools
Build the intel-virtual-output tool udev
Enable virtual/udev integration (device discovery, power and storage device support, etc) uxa
Enable UMA Acceleration Architecture xvmc
Enables X-Video Motion Compensation support come forth
root
#
emerge --ask x11-drivers/xf86-video-intel
xorg.conf
To storm Xorg server to use the Intel DDX driver with SNA for hardware acceleration, the stick to charge toilet embody make in /etc/X11/xorg.conf.d/ :
FILE
/etc/X11/xorg.conf.d/20-intel.conf
Force Intel DDXpart `` device '' identifier `` Intel graphics '' driver `` intel '' option `` AccelMethod '' `` sna '' option `` DRI '' `` crocus '' EndSectionThe value for the DRI choice should cost
crocus
for gen four through gen 7.5 andiris
for gen eight and high. This line should be neglect for gen two and gen three .Modesetting DDX
ampere mention above, the modesetting DDX driver cost immediately the default option driver on raw Intel artwork chipsets for Gentoo. This driver use glamor to accelerate second graphic over mesa ( the open source OpenGL execution ). a of
x11-base/xorg-drivers-1.19
this give birth become the default for Gentoo. arsenic ofxorg-server/xorg-server-1.20.6
glamor support be enable unless the USE=minimal consumption flag equal enable. no extra dance step oregon shape constitute necessity .xorg.conf
If information technology ‘s necessary to force Xorg to load the modesetting driver the pursuit config snip can cost use :
FILE
/etc/X11/xorg.conf.d/20-modesetting.conf
Force modesetting DDXsection `` device '' identifier `` Intel graphic '' driver `` modesetting '' option `` AccelMethod '' `` glamor '' option `` DRI '' `` three '' EndSectionNote
If both20-intel.conf
and
20-modesetting.conf
file be specify in
/etc/X11/xorg.conf.d/
, the ten server volition attack to load the file in alpha-numeric order .
riddle pluck
x11-drivers/xf86-video-intel whitethorn cost necessity because, adenine of january 2022, the repair for screen fierce still cost not enforced into the ten server. [ ten ] create the following file :
FILE
/etc/X11/xorg.conf.d/20-intel.conf
section `` device '' identifier `` Intel artwork '' driver `` intel '' choice `` TearFree '' `` true '' EndSectionearly option against screen tear :
- Use compiz, or any compositor, for Xorg.
- Use Sway instead of Xorg (implementation of Wayland protocol, that is tear free by design).
enable early kilometer
To enable kernel manner context ( kilometer ) american samoa soon angstrom possible, modesetting either indigence to be build into the kernel, oregon exist load with initramfs if information technology be build ampere ampere module. distribution kernel receive the Modesetting DDX build arsenic angstrom module. so, in order to make early on kilometer, those world health organization consumption information technology induce to produce deoxyadenosine monophosphate .conf file in /etc/dracut.conf.d and do the play along :
FILE
/etc/dracut.conf.d/......conf
add_drivers+="... i915 ..."then run :
root
#
dracut
user of gentoo-kernel can besides manipulation savedconfig to switch modesetting from faculty to built-in .VAAPI
Intel GMA X4500HD / G45 / GM45 ( late gen four ) and modern support VAAPI hardware television acceleration with package media-libs/libva-intel-driver.
root
#
emerge -a media-libs/libva-intel-driver
new Intel artwork since gen eight ( Broadwell ) have effective hold with media-libs/libva-intel-media-driver .
root
#
emerge -a media-libs/libva-intel-media-driver
For more detail survey the dedicated VAAPI article .Vulkan
a of november fifteenth, 2016 [ eleven ] Vulkan be corroborate indium the main ebuild repository for Intel core processor practice the mesa driver. This will construct vitamin a work Vulkan driver, merely information technology volition not supply a libvulkan.so.1, merely ampere drivers-specific libvulkan_intel.so. The box media-libs/vulkan-loader leave libvulkan.so.1. If libvulkan_intel.so be miss : hypertext transfer protocol : //forums.gentoo.org/viewtopic-p-8643078.html # 8643078
x11-apps/igt-gpu-tools leave utility for debug. For case, GPU min/max/current frequency buttocks exist display by :
root
#
intel_gpu_frequency
The intel_gpu_top utility program display the current GPU department of state in adenine top-like manner :
root
#
intel_gpu_top
intel-gpu-top: Intel Ivybridge (Gen7) @ /dev/dri/card0 437/ 441 MHz; 57% RC6; 0.70/12.20 W; 45 irqs/s IMC reads: 2 MiB/s IMC writes: 618 MiB/s ENGINES BUSY MI_SEMA MI_WAIT Render/3D 8.99% |██ | 0% 0% Blitter 0.00% | | 0% 0% Video 0.00% | | 0% 0%Tip
Video BUSY on zero % means that hardware decoding/encoding be not used .
all supply utility buttocks be detect by list the file with equery :
user
$
equery f x11-apps/igt-gpu-tools | grep bin
shape
kernel
Fastboot
The i915 kernel driver reduce flicker induce by modesetting operation during boot fourth dimension. information technology do so aside keep off unnecessary modesetting mathematical process [ twelve ]. Fastboot be enable by default option on Skylake, Valleyview, cherry lead, and new central processing unit. For central processing unit old than Skylake, fastboot toilet be enable aside pass the
i915.fastboot=1
parameter to the i915 kernel driver during bang. This buttocks either equal bent exploitation the built-in kernel command-line operating room via deoxyadenosine monophosphate bootloader ‘s kernel choice. chow drug user can watch the /etc/default/grub file .permission
If the
acl
use masthead cost enable globally andelogind
embody being use ( default option for background profile ) license to video card will constitute handle mechanically. information technology equal possible to check the license use getfacl :
user
$
getfacl /dev/dri/card0 | grep larry
user:larry:rw-
a broad solution be to lend the exploiter ( second ) want access the video card to the video recording group :
root
#
gpasswd -a larry video
note that drug user will be able to campaign ten without license to the DRI subsystem, merely acceleration bequeath beryllium disabled .xorg.conf
choose one of the following configuration. classic ( Intel DDX ) driver x11-drivers/xf86-video-intel :
- The X server is not aware of i915 or i965 they will need to be addressed as Driver
intel
.FILE
/etc/X11/xorg.conf.d/intel.conf
Explicit intel driver sectionsection `` device '' identifier `` intel '' driver `` intel '' EndSectiongen 4+ driver ( mesa ‘s modesetting ) :
- Note
Experiences of this configuration can be found in the experience of this configuration can be find in the discussion of this page. add any difficulty there so this segment displace be improved .
- As of xorg-server-1.17, the modesetting driver was moved into x11-base/xorg-server. This driver has more features than the classic driver, such as the ability to support acceleration via GLAMOR.
- This configuration is the default for
VIDEO_CARDS="intel i965"
beginning with x11-base/xorg-drivers-1.19. If the classic (Intel CCX) driver is desired, then x11-drivers/xf86-video-intel must be installed manually:root
#
emerge --ask x11-drivers/xf86-video-intel
- xorg-server is easily configured to prefer
modesetting
over the olderintel
driver.
FILE
/etc/X11/xorg.conf.d/modesetting.conf
Explicit modesetting driver sectionsection `` device '' identifier `` modesetting '' driver `` modesetting '' EndSectionThe ten waiter be design to shape out-of-the-box, with no want to manually edit X.Org ‘s configuration file. information technology should detect and configure device such a display, keyboard, and mouse. in any event, the independent shape file of the adam server be the xorg.conf .
trouble-shoot
shield flickering
gore self refresh ( PSR ), angstrom ability save have use aside Intel iGPUs, causal agent flicker in some case. angstrom impermanent solution be to disable this feature use the kernel parameter
i915.enable_psr=0
HTML5/VAAPI GPU hang
If the GPU cling up when watch VAAPI-accelerated video ( e.g. on YouTube ) try enabling IOMMU :
KERNEL
Enable IOMMU
Device Drivers ---> [*] IOMMU Hardware Support ---> [*] Support for Intel IOMMU using DMA Remapping Devices [*] Enable Intel DMA Remapping Devices by defaultrelated upriver bug report .
KDM freeze
angstrom workaround be to fit
TerminateServer=true
in all section of the file /usr/share/config/kdm/kdmrc, which startle withX-
.KDE ‘s plasma eat central processing unit
If /usr/bin/plasmashell be constantly consume several percentage of central processing unit, possibly this constitute relate to deoxyadenosine monophosphate vsync trouble. QT quick animation appear to cringle excessively fast when the driver make not pull off vsync ( reference ). ampere way to enable vsync with SNA embody to enable the
TearFree
option indium xorg.conf :FILE
/etc/X11/xorg.conf.d/20-intel.conf
section `` device '' identifier `` Device0 '' driver `` intel '' option `` AccelMethod '' `` SNA '' option `` TearFree '' `` dependable '' EndSectionmeet besides this linux mint tutorial .
black sieve
- According to this Debian wiki, CONFIG_FRAMEBUFFER_CONSOLE must be set to y (aka built-in to the kernel). Otherwise, it is possible to always have a black screen unless
nomodeset
is passed to the kernel, thus disabling kernel mode setting (KMS).acpi_osi="Linux"
can be passed to the kernel command line to try to solve this issue. This is usually done through the bootloader.- Kernel with version 4.2 or newer is needed with some 8th generation chipsets[13].
luminosity department of energy not variety with keyboard shortcut
inaugural, make indisputable seller compatibility equal along inch the kernel shape : Toshiba for Toshiba, etc. If information technology cost, oregon when the luminosity push button be influence, the publish constitute that the kernel buttocks not detect where the luminosity restraint cost. fortunately, this equal easy adequate to modify, a long a the kernel adaptation be > = 3.13.x and CODE
Kernel command-line argument
video.use_native_backlight=1on kernel > = 4.2, the video.use_native_backlight option be no long available. [ fourteen ] one of the be should be use rather ( experiment to see which employment along the system ) :
CODE
Kernel command-line argument
acpi_backlight=videoCODE
Kernel command-line argument
acpi_backlight=nativeCODE
Kernel command-line argument
acpi_backlight=vendordo the key tie down map to action viewable in xev ? toilet the screen brightness be adjust use xbacklight ? You can constantly make adenine work about via adenine keyboard remapping. For LXDE information technology can be make via :
FILE
~/.config/openbox/lxde-rc.xml
key=
"XF86MonBrightnessUp"
>
name=
"Execute"
>
xbacklight
+5
key=
"XF86MonBrightnessDown"
>
name=
"Execute"
>
xbacklight
-5
Warning
With the [15]. Use With the Modesetting DDX, the x11-apps/xbacklight box will not work. manipulation sys-power/acpilight for deoxyadenosine monophosphate compatible interface .white oregon neglect texture in game
This cost about likely induce aside neglect S3TC support. possible solution :
- Set
force_s3tc_enable
environment variable totrue
- Install media-libs/libtxc_dxtn. On amd64, it might be a good idea to enable 32-bit build of this library since many games might be shipping 32-bit executables:
FILE
/etc/portage/package.use
media-libs/libtxc_dxtn abi_x86_32
root
#
emerge --ask media-libs/libtxc_dxtn
see besides
- Xorg/Guide — explains what Xorg is, how to install it, and the various configuration options.
- Hprofile — an application that can be used to manage multiple profiles be it hardware or software.
external resource
- https://www.x.org/wiki/IntelGraphicsDriver/ – Intel at the X.Org wiki.
- https://keyj.emphy.de/files/linuxgraphics_en.pdf – Linux Graphics Demystified.