vi_srbm_select(9)
π vi_srbm_select(9) π
okay so bestie, welcome to the Kernel API Manual β¨ β we're talking about vi_srbm_select, and honestly? it's giving "tiny function, big main character energy" π
π NAME π
vi_srbm_select β pick out exactly which register instances you're talking to π
β¨ SYNOPSIS β¨
void vi_srbm_select (struct amdgpu_device *adev , u32 me , u32 pipe ,
u32 queue , u32 vmid );
πΈ ARGUMENTS πΈ
adevβ anamdgpu_devicepointer, aka your ticket into the GPU's whole world π«Άmeβ the selected ME (micro engine) πpipeβ the pipe, yes literally just "pipe" πqueueβ the queue π§vmidβ the VMID π
π¦ DESCRIPTION π¦
So what does it actually do? It switches up which register instances are currently active β like changing the channel on the whole vibe of the hardware πΊβ¨
Some registers are instanced per VMID, and others are instanced per me/pipe/queue combination β so yeah, this little function is lowkey holding the whole "which one am I even talking to right now" situation together π no cap.
π₯ SEE ALSO π₯
- Kernel file
./drivers/gpu/drm/amd/amdgpu/vi.c vi_get_xclk(9)vi_asic_pci_config_reset(9)vi_asic_reset(9)
go read those too, they're iconic in their own right π
and that's the whole page, bestie π β brought to you by the fine folks over at ./drivers/gpu/drm/amd/amdgpu, stamped October 2026 β slay, see u next manpage ππ
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms