intel_reg_read
Read values from Intel GPU registers
SYNOPSIS
intel_reg_read [-D <device>] <register_address>
PARAMETERS
-D, --device <device>
DRM device to use (default: /dev/dri/card0)
-h, --help
Display usage information and exit
DESCRIPTION
The intel_reg_read command is a debugging utility from the intel-gpu-tools package for Linux systems with Intel graphics hardware. It allows users to read 32-bit values from the GPU's Memory-Mapped I/O (MMIO) register space via the Direct Rendering Manager (DRM) interface.
This tool is essential for developers troubleshooting i915 driver issues, inspecting hardware state, or verifying register values against Intel documentation. Register addresses must be specified in hexadecimal format (e.g., 0x44000 for GT core clock ratio). The command outputs the raw 32-bit integer value in decimal and hexadecimal.
Access requires read permissions on the DRM device file (often /dev/dri/card0), typically necessitating root privileges. It supports multiple Intel GPU generations but is limited to read-only operations—use intel_reg_write for modifications.
Common use cases include debugging rendering artifacts, power management states, or performance counters during kernel development or hardware validation.
CAVEATS
Requires intel-gpu-tools package and DRM access (often sudo). Use only known register addresses from Intel specs to avoid misinterpretation. Read-only; no validation of address validity.
EXAMPLE
sudo intel_reg_read 0x44000
Reads GT clock ratio register, outputs e.g. 0x00040004 (4194308).
PACKAGE INSTALLATION
Install via apt install intel-gpu-tools (Debian/Ubuntu) or dnf install intel-gpu-tools (Fedora).
HISTORY
Part of Intel's intel-gpu-tools suite, introduced in early 2010s alongside Linux i915 driver enhancements. Actively maintained for modern Intel GPUs (e.g., Xe architecture).
SEE ALSO
intel_reg_write(1), intel_gpu_top(1), drm_info(1)


