On Friday, Intel engineers committed a large amount of code on the DRM-Next branch of the Linux kernel, mainly on the kernel graphics driver, with the following highlights.

  • Extensive code refactoring to increase the use of TTM dispensers and prepare for the DRM scheduler. Cleaned up uAPI and dropped faster GPU relocation paths on older platforms, instead mitigating performance issues by updating to the latest UMD version.
  • Initially implemented code for ADL-P/XeHP and DG2 platforms, fixed ADL-S and removed CNL code. In addition, removed unnecessary workarounds for each step and added missing for Gen12 iGFX.
  • I915_MMAP_OFFSET_FIXED was added to be consistent with the static/fixed cache mode of each BO instead of each mapping mode (for dGFX only). Rewrote the GuC firmware interface update and backend code and lifted the barrier to enabling GuC on Gen11 (it was not enabled by default). Finally added GuCRC power management to be enabled for Gen12+ when submitted enabled.
  • On devices with local memory, “I915_MMAP_OFFSET_FIXED” is the only valid cache type. On devices without local memory, this cache mode is invalid. When “I915_MMAP_OFFSET_FIXED” is specified as the cache mode, WC or WB will be used, depending on the location of the object when it is created. WB will be used when the object can only exist in system memory, otherwise WC will be used.

Details can be found here. If there are no surprises, these features will be available in version 5.15.