amdgpu_devic...esume_phase1(9)
π amdgpu_device_ip_resume_phase1 β like, the first resume phase, bestie
okay so real quick β this is a page from the Kernel API Manual (yes, the kernel has its own manual, she's fancy π ) and it's all about waking your AMD GPU's hardware IPs back up. stay with me, it's actually so good.
β¨ NAME β¨
amdgpu_device_ip_resume_phase1 β run resume for hardware IPs π«Ά
πΈ SYNOPSIS πΈ
int amdgpu_device_ip_resume_phase1 (struct amdgpu_device *adev);
π ARGUMENTS π
adevβ anamdgpu_devicepointer. that's it, that's the whole argument. she's low-maintenance π
π¦ DESCRIPTION π¦
So this is the first resume function for hardware IPs. literally phase one, the opening act, the main character entrance π
Here's the vibe: the driver walks the whole list of hardware IPs that make up the asic β the entire roster β and runs the resume callbacks for COMMON, GMC, and IH. just those three for this phase, no cap. the other IPs get their moment in the later phases β¨
What does "resume" even mean here? it means putting the hardware into a functional state after a suspend, and updating the software state as necessary so everybody's on the same page. communication is key in any relationship, including driverβhardware π
Oh and the plot twist: this function is also used for restoring the GPU after a GPU reset. so she's not just a wake-up call, she's also the recovery girlie π₯
Returns 0 on success, or a negative error code on failure. π
π SEE ALSO π
okay this list is LONG, grab a snack π β the kernel file itself lives at:
./drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
and then all the friends and neighbors:
pcie_replay_count(9)board_info(9)uma/carveout_options(9)uma/carveout(9)amdgpu_device_supports_px(9)amdgpu_device_supports_boco(9)amdgpu_device_supports_baco(9)amdgpu_device_supports_smart_shift(9)amdgpu_device_mm_access(9)amdgpu_device_aper_access(9)amdgpu_device_vram_access(9)amdgpu_device_get_rev_id(9)amdgpu_device_asic_init(9)amdgpu_device_mem_scratch_init(9)amdgpu_device_mem_scratch_fini(9)amdgpu_device_program_register_sequence(9)amdgpu_device_pci_config_reset(9)amdgpu_device_pci_reset(9)amdgpu_device_resize_fb_bar(9)amdgpu_device_need_post(9)amdgpu_device_should_use_aspm(9)amdgpu_device_vga_set_decode(9)amdgpu_device_check_block_size(9)amdgpu_device_check_vm_size(9)amdgpu_device_check_arguments(9)amdgpu_switcheroo_set_state(9)amdgpu_switcheroo_can_switch(9)amdgpu_device_enable_virtual_display(9)amdgpu_device_parse_gpu_info_fw(9)amdgpu_device_ip_early_init(9)amdgpu_device_ip_init(9)amdgpu_device_fill_reset_magic(9)amdgpu_device_check_vram_lost(9)amdgpu_device_set_cg_state(9)amdgpu_device_ip_late_init(9)amdgpu_device_smu_fini_early(9)amdgpu_device_ip_fini(9)amdgpu_device_delayed_init_work_handler(9)amdgpu_device_ip_suspend_phase1(9)amdgpu_device_ip_suspend_phase2(9)amdgpu_device_ip_suspend(9)amdgpu_device_ip_resume_phase2(9)amdgpu_device_ip_resume_phase3(9)amdgpu_device_ip_resume(9)amdgpu_device_detect_sriov_bios(9)amdgpu_device_asic_has_dc_support(9)amdgpu_device_has_dc_support(9)amdgpu_device_check_iommu_direct_map(9)amdgpu_device_check_iommu_remap(9)amdgpu_device_init(9)amdgpu_device_fini_hw(9)amdgpu_device_evict_resources(9)amdgpu_device_pm_notifier(9)amdgpu_device_prepare(9)amdgpu_device_complete(9)amdgpu_device_suspend(9)amdgpu_device_resume(9)amdgpu_device_reset_sriov(9)amdgpu_device_has_job_running(9)amdgpu_device_should_recover_gpu(9)amdgpu_device_gpu_recover(9)amdgpu_device_partner_bandwidth(9)amdgpu_device_gpu_bandwidth(9)amdgpu_device_get_pcie_info(9)amdgpu_device_is_peer_accessible(9)amdgpu_pci_error_detected(9)amdgpu_pci_mmio_enabled(9)amdgpu_pci_slot_reset(9)amdgpu_pci_resume(9)amdgpu_device_halt(9)amdgpu_device_get_gang(9)amdgpu_device_switch_gang(9)amdgpu_device_enforce_isolation(9)
ngl bestie, that SEE ALSO list is giving "she has a lot of friends and she's loyal to every single one" π«Ά don't skip it, iykyk.
aaand that's the page! sourced from ./drivers/gpu/drm/amd/amdgpu, dated October 2026 β yeah she's from the future, we don't question it πβ¨ mwah, go read phase2 now ππ
π¦ 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