Feedback

Your feedback is important to keep improving our website and offer you a more reliable experience.

Intel Linux Graphics Firmware

Description

New generations of Intel® graphics hardware make use specific firmware code to offer additional benefits in terms of power and performance. For more details about each of the firmware binaries see the section below. The firmware binaries are completely optional so there's no need for an installation on your current system. Since the firmware binaries are readily available as well on the linux-firmware repository, chances are your current linux distribution already packages them. Check with your Linux distribution to see what's currently available.
 
All of the firmware binaries are also posted on the public mailing of the linux-firmware project, however it may take some time before they are accepted upstream. This page is for information purposes only and a place holder for us to make the firmware publicly as fast possible. Unless you're a Linux poweruser you should instead wait for the update of your linux distribution, otherwise proceed with the download and installation. 

GuC

GuC is designed to perform graphics workload scheduling on the various graphics parallel engines. In this scheduling model, host software submits work through one of the 256 graphics doorbells and this invokes the scheduling operation on the appropriate graphics engine. Scheduling operations include determining which workload to run next, submitting a workload to a command streamer, pre-empting existing workloads running on an engine, monitoring progress and notifying host software when work is done.

DMC

DMC provides additional graphics low-power idle states. It provides capability to save and restore display registers across these low-power states independently from the OS/Kernel.

HuC

HuC is designed to offload some of the media functions from the CPU to GPU. These include but are not limited to bitrate control, header parsing. For example in the case of bitrate control, driver invokes HuC in the beginning of each frame encoding pass, encode bitrate is adjusted by the calculation done by HuC. Both the HuC hardware and the encode hardcode reside in GPU. Using HuC will save unnecessary CPU-GPU synchronization.

Products

Product name Product code Firmware
Kabylake kbl

GuC - Ver 9.14
DMC - Ver 1.01
HuC - Ver 2.0

GuC - Ver 9.39

Skylake skl

GuC - Ver 6.1
DMC - Ver 1.26
HuC - Ver 1.07

GuC - Ver 9.33

Broxton bxt

GuC - Ver 8.7
DMC - Ver 1.07
HuC - Ver 1.07

GuC - Ver 9.29

Coffee Lake cfl
Geminilake glk DMC - Ver 1.04
Cannonlake cnl DMC - Ver 1.06

 

Each of the tarball packages contain an install.sh script that behaves the same way across the different firmware files.
 
After downloading the firmware of interest, type the following commands inside a shell:
 
$ tar xf filename.tar.bz2
$ cd filename
$ vim install.sh  #check variables, mainly if you are in Android environment where you might need to edit the Linux Firmware Directory.
$ sudo bash ./install.sh

Warning: The below script not only copies the firmware onto your system it will also try to make a copy of your existing initramfs image and will generate a new one. This might be helpful in the case your system fails to boot properly following the reboot after installation of the firmware.

FAQ

1. Q: If I don't have any of the platforms listed in the table above, do I still need the firmware at all?

   A: No, use the table above as a guideline to see in which platforms the firmware can be installed.
   
2. Q: I am seeing the following error message, what do they mean and what should I do in response?
   
   W:Possible missing firmware /lib/firmware/i915/kbl_dmc_ver1.bin for module i915
 
   A: This warning can be safely ignored. This list contains all the firmware for all platforms even if you are running in a non-supported platform. However, before installing the missing firmware, use the table above to verify whether your platform is even supported. For example, for a Skylake platform look for the 'skl' product code in the firmware name, like this: skl_guc_ver1.bin.
 

License

Copyright (c) 2015, Intel Corporation.
All rights reserved.

Redistribution.  Redistribution and use in binary form, without
modification, are permitted provided that the following conditions are
met:

* Redistributions must reproduce the above copyright notice and the
  following disclaimer in the documentation and/or other materials
  provided with the distribution.
* Neither the name of Intel Corporation nor the names of its suppliers
  may be used to endorse or promote products derived from this software
  without specific prior written permission.
* No reverse engineering, decompilation, or disassembly of this software
  is permitted.

Limited patent license.  Intel Corporation grants a world-wide,
royalty-free, non-exclusive license under patents it now or hereafter
owns or controls to make, have made, use, import, offer to sell and
sell ("Utilize") this software, but solely to the extent that any
such patent is necessary to Utilize the software alone, or in
combination with an operating system licensed under an approved Open
Source license as listed by the Open Source Initiative at
http://opensource.org/licenses.  The patent license shall not apply to
any other combinations which include this software.  No hardware per
se is licensed hereunder.

DISCLAIMER.  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING,
BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
DAMAGE.