Linux 6.2 Preparing Intel HuC, OA, PS64 & Sensor Monitoring For Arc Graphics

Written by Michael Larabel in Intel on 31 October 2022 at 02:00 PM EDT. 1 Comment
INTEL --
Following last week's start of the i915 DRM-Next changes intended for Linux 6.2, an initial batch of drm-intel-gt-next feature patches have now also been mailed in to DRM-Next for staging ahead of that next Linux kernel cycle. Notable with today's pull request is a lot of DG2/Alchemist improvements.

Today's pull of Intel kernel graphics driver changes for Linux 6.2 has a lot on the DG2/Alchemist dGPU front: initial hardware monitoring "HWMON" support, various workarounds, HuC support, small BAR enabling, PS64 support for page tables, ptrace support for local memory objects, local memory migration for display surfaces, and OA enabling.

The HWMON patches in particular I've long been waiting to see mainlined... The patches have been pending for months and will finally be mainlined for Linux 6.2. Now the Linux driver via the HWMON sysfs interfaces will be able to expose the Intel Arc Graphics and Data Center GPU Flex Series power consumption data and other energy information. So with Linux 6.2+, will be able to finally deliver GPU power consumption and performance-per-Watt metrics for Intel discrete graphics cards under Linux. It should be very interesting.

The HuC support for Linux 6.2 with DG2/Alchemist will be useful for some as that micro-controller is used for H.265/HEVC authentication purposes and moving of some tasks from the CPU to this micro-controller.

The OA support for DG2/Alchemist in this context is the Observation Architectue unit for performance counters support with the hardware.


The PS64 support with DG2 graphics processors provides a 64K TLB hint at the PTE level. Intel engineer Matthew Auld who enabled the support explained:
It turns out that on production DG2/ATS HW we should have support for PS64. This feature allows to provide a 64K TLB hint at the PTE level, which is a lot more flexible than the current method of enabling 64K GTT pages for the entire page-table, since that leads to all kinds of annoying restrictions...With PS64, we can now drop the 2M GTT alignment restriction, and instead only require 64K or larger when dealing with [local memory]. We still use the compact-[page table] layout when possible, but only when we are certain that this doesn't interfere with userspace.

Note that this is a change in uAPI behaviour, but hopefully shouldn't be a concern (IGT is at least able to autodetect the alignment), since we are only making the GTT alignment constraint less restrictive.

Plus today's batch of Intel driver patches also has fixes for a kernel memory corruption problem, a missing workaround for Gen12/Xe iGPUs, various fixes, and continued enablement for graphics on next-generation Meteor Lake processors.

See this pull request for the full set of patches sent out today for queuing in DRM-Next until the Linux 6.2 merge window in December.
Related News
About The Author
Author picture

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week