Skip to content

Fix GC 11.0.x IP version to family mapping#179

Open
mgajda wants to merge 2 commits into
clbr:masterfrom
mgajda:fix-gc11-ip-version-mapping
Open

Fix GC 11.0.x IP version to family mapping#179
mgajda wants to merge 2 commits into
clbr:masterfrom
mgajda:fix-gc11-ip-version-mapping

Conversation

@mgajda

@mgajda mgajda commented Apr 14, 2026

Copy link
Copy Markdown

Summary

Depends on #178.

The kernel's hw_ip_version returns the GC IP block version, which does not match the GFX shader target code for GC 11.0.x:

IP version GFX code Chip Old (wrong) mapping New (correct) mapping
11.0.1 gfx1103 Phoenix1 NAVI32 GFX1103
11.0.3 gfx1101 Navi 32 GFX1103 NAVI32
11.0.4 gfx1103 Phoenix2 (missing) GFX1103

Also:

  • Add IP 10.3.7 as alternate Mendocino version
  • Add GC 12.1.x major.minor fallback for future RDNA 4m chips

Test plan

  • Verify on Phoenix APU (Ryzen 7040/8040) — should report GFX1103, not NAVI32
  • Verify on Navi 32 (RX 7800 XT) — should report NAVI32, not GFX1103

mgajda added 2 commits April 14, 2026 21:26
When a GPU's PCI device ID is not in the r600_pci_ids.h table,
fall back to querying the GFX IP version from amdgpu and mapping
it to a family. This allows radeontop to recognize newer GPUs
(RDNA 3, 3.5, 4, 4m, 5) without needing a PCI ID table update
for every new SKU.

New families: MENDOCINO, GFX1033, GFX1034, NAVI31, NAVI32,
NAVI33, GFX1103, GFX1150, GFX1151, GFX1170-1172, GFX1200-1201,
GFX1300, GFX1310.

Unknown GFX codes fall back to the base family for their
major.minor version (e.g. any GFX11.0.x maps to NAVI31).
The kernel's hw_ip_version gives the GC IP block version, which
does NOT match the GFX shader target code for GC 11.0.x:
  IP 11.0.1 = Phoenix (gfx1103), not Navi 32
  IP 11.0.3 = Navi 32 (gfx1101), not Phoenix
  IP 11.0.4 = Phoenix2 (gfx1103)

Also add IP 10.3.7 as alternate Mendocino version, and
GC 12.1.x fallback for future RDNA 4m chips.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant