amdgpu_gmc_init_pdb0(9)
π amdgpu_gmc_init_pdb0 β like, the Kernel API Manual, bestie
okay so this is amdgpu_gmc_init_pdb0(9) from the Kernel API Manual, and honestly? she's a little niche icon and I'm obsessed π
β¨ NAME β¨
amdgpu_gmc_init_pdb0 β initialize PDB0, that's it, that's the whole vibe π¦
πΈ SYNOPSIS πΈ
void amdgpu_gmc_init_pdb0 (struct amdgpu_device *adev );
no cap, that's the whole signature π
π ARGUMENTS π
adevβ anamdgpu_devicepointer. she's literally the main character here π
π₯ DESCRIPTION π₯
okay so listen, this function is only used when the GART page table is being used for FB address translation. like, only then, bestie, don't come for her otherwise π
in that case, we construct a 2-level system VM page table: PDB0->PTB, so it covers both VRAM of the hive and system memory. two for one, ate and left no crumbs π
PDB0 is static β initialized once on driver initialization, periodt. the first n entries of PDB0 get used as PTE by setting the P bit to 1, pointing to VRAM. and then the n+1'th entry points to a big PTB that covers system memory. it's giving organized. it's giving structured. it's giving iykyk β
π«Ά SEE ALSO π«Ά
Kernel file ./drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.c β go read her, she's right there π
amdgpu_gmc_pdb0_alloc(9)amdgpu_gmc_get_pde_for_bo(9)amdgpu_gmc_set_pte_pde(9)amdgpu_gmc_agp_addr(9)amdgpu_gmc_vram_location(9)amdgpu_gmc_gart_location(9)amdgpu_gmc_agp_location(9)amdgpu_gmc_set_agp_default(9)amdgpu_gmc_fault_key(9)amdgpu_gmc_filter_faults(9)amdgpu_gmc_filter_faults_remove(9)amdgpu_gmc_tmz_set(9)amdgpu_gmc_noretry_set(9)amdgpu_gmc_vram_mc2pa(9)amdgpu_gmc_vram_pa(9)
cutest little sign-off ever: this page lives in./drivers/gpu/drm/amd/amdgpu, dated October 2026, and it'samdgpu_gmc_init_pdb0(9)β slay, bye, drink water ππ§π
π¦ 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