LinuxCommandLibrary

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)

Copied to clipboard