Lines Matching refs:ip_blocks
2071 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_ip_set_clockgating_state()
2073 if (adev->ip_blocks[i].version->type != block_type) in amdgpu_device_ip_set_clockgating_state()
2075 if (!adev->ip_blocks[i].version->funcs->set_clockgating_state) in amdgpu_device_ip_set_clockgating_state()
2077 r = adev->ip_blocks[i].version->funcs->set_clockgating_state( in amdgpu_device_ip_set_clockgating_state()
2081 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_ip_set_clockgating_state()
2105 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_ip_set_powergating_state()
2107 if (adev->ip_blocks[i].version->type != block_type) in amdgpu_device_ip_set_powergating_state()
2109 if (!adev->ip_blocks[i].version->funcs->set_powergating_state) in amdgpu_device_ip_set_powergating_state()
2111 r = adev->ip_blocks[i].version->funcs->set_powergating_state( in amdgpu_device_ip_set_powergating_state()
2115 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_ip_set_powergating_state()
2137 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_ip_get_clockgating_state()
2139 if (adev->ip_blocks[i].version->funcs->get_clockgating_state) in amdgpu_device_ip_get_clockgating_state()
2140 adev->ip_blocks[i].version->funcs->get_clockgating_state((void *)adev, flags); in amdgpu_device_ip_get_clockgating_state()
2159 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_ip_wait_for_idle()
2161 if (adev->ip_blocks[i].version->type == block_type) { in amdgpu_device_ip_wait_for_idle()
2162 r = adev->ip_blocks[i].version->funcs->wait_for_idle((void *)adev); in amdgpu_device_ip_wait_for_idle()
2187 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_ip_is_idle()
2189 if (adev->ip_blocks[i].version->type == block_type) in amdgpu_device_ip_is_idle()
2190 return adev->ip_blocks[i].version->funcs->is_idle((void *)adev); in amdgpu_device_ip_is_idle()
2212 if (adev->ip_blocks[i].version->type == type) in amdgpu_device_ip_get_ip_block()
2213 return &adev->ip_blocks[i]; in amdgpu_device_ip_get_ip_block()
2274 adev->ip_blocks[adev->num_ip_blocks++].version = ip_block_version; in amdgpu_device_ip_block_add()
2571 i, adev->ip_blocks[i].version->funcs->name); in amdgpu_device_ip_early_init()
2572 adev->ip_blocks[i].status.valid = false; in amdgpu_device_ip_early_init()
2574 if (adev->ip_blocks[i].version->funcs->early_init) { in amdgpu_device_ip_early_init()
2575 r = adev->ip_blocks[i].version->funcs->early_init((void *)adev); in amdgpu_device_ip_early_init()
2577 adev->ip_blocks[i].status.valid = false; in amdgpu_device_ip_early_init()
2580 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_ip_early_init()
2583 adev->ip_blocks[i].status.valid = true; in amdgpu_device_ip_early_init()
2586 adev->ip_blocks[i].status.valid = true; in amdgpu_device_ip_early_init()
2590 if (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_COMMON) { in amdgpu_device_ip_early_init()
2632 if (!adev->ip_blocks[i].status.sw) in amdgpu_device_ip_hw_init_phase1()
2634 if (adev->ip_blocks[i].status.hw) in amdgpu_device_ip_hw_init_phase1()
2636 if (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_COMMON || in amdgpu_device_ip_hw_init_phase1()
2637 (amdgpu_sriov_vf(adev) && (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_PSP)) || in amdgpu_device_ip_hw_init_phase1()
2638 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_IH) { in amdgpu_device_ip_hw_init_phase1()
2639 r = adev->ip_blocks[i].version->funcs->hw_init(adev); in amdgpu_device_ip_hw_init_phase1()
2642 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_ip_hw_init_phase1()
2645 adev->ip_blocks[i].status.hw = true; in amdgpu_device_ip_hw_init_phase1()
2657 if (!adev->ip_blocks[i].status.sw) in amdgpu_device_ip_hw_init_phase2()
2659 if (adev->ip_blocks[i].status.hw) in amdgpu_device_ip_hw_init_phase2()
2661 r = adev->ip_blocks[i].version->funcs->hw_init(adev); in amdgpu_device_ip_hw_init_phase2()
2664 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_ip_hw_init_phase2()
2667 adev->ip_blocks[i].status.hw = true; in amdgpu_device_ip_hw_init_phase2()
2681 if (adev->ip_blocks[i].version->type != AMD_IP_BLOCK_TYPE_PSP) in amdgpu_device_fw_loading()
2684 if (!adev->ip_blocks[i].status.sw) in amdgpu_device_fw_loading()
2688 if (adev->ip_blocks[i].status.hw == true) in amdgpu_device_fw_loading()
2692 r = adev->ip_blocks[i].version->funcs->resume(adev); in amdgpu_device_fw_loading()
2695 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_fw_loading()
2699 r = adev->ip_blocks[i].version->funcs->hw_init(adev); in amdgpu_device_fw_loading()
2702 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_fw_loading()
2707 adev->ip_blocks[i].status.hw = true; in amdgpu_device_fw_loading()
2796 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_ip_init()
2798 r = adev->ip_blocks[i].version->funcs->sw_init((void *)adev); in amdgpu_device_ip_init()
2801 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_ip_init()
2804 adev->ip_blocks[i].status.sw = true; in amdgpu_device_ip_init()
2806 if (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_COMMON) { in amdgpu_device_ip_init()
2808 r = adev->ip_blocks[i].version->funcs->hw_init((void *)adev); in amdgpu_device_ip_init()
2813 adev->ip_blocks[i].status.hw = true; in amdgpu_device_ip_init()
2814 } else if (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_GMC) { in amdgpu_device_ip_init()
2825 r = adev->ip_blocks[i].version->funcs->hw_init((void *)adev); in amdgpu_device_ip_init()
2835 adev->ip_blocks[i].status.hw = true; in amdgpu_device_ip_init()
3019 if (!adev->ip_blocks[i].status.late_initialized) in amdgpu_device_set_cg_state()
3023 (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_GFX || in amdgpu_device_set_cg_state()
3024 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_SDMA)) in amdgpu_device_set_cg_state()
3027 if (adev->ip_blocks[i].version->type != AMD_IP_BLOCK_TYPE_UVD && in amdgpu_device_set_cg_state()
3028 adev->ip_blocks[i].version->type != AMD_IP_BLOCK_TYPE_VCE && in amdgpu_device_set_cg_state()
3029 adev->ip_blocks[i].version->type != AMD_IP_BLOCK_TYPE_VCN && in amdgpu_device_set_cg_state()
3030 adev->ip_blocks[i].version->type != AMD_IP_BLOCK_TYPE_JPEG && in amdgpu_device_set_cg_state()
3031 adev->ip_blocks[i].version->funcs->set_clockgating_state) { in amdgpu_device_set_cg_state()
3033 r = adev->ip_blocks[i].version->funcs->set_clockgating_state((void *)adev, in amdgpu_device_set_cg_state()
3037 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_set_cg_state()
3056 if (!adev->ip_blocks[i].status.late_initialized) in amdgpu_device_set_pg_state()
3060 (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_GFX || in amdgpu_device_set_pg_state()
3061 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_SDMA)) in amdgpu_device_set_pg_state()
3064 if (adev->ip_blocks[i].version->type != AMD_IP_BLOCK_TYPE_UVD && in amdgpu_device_set_pg_state()
3065 adev->ip_blocks[i].version->type != AMD_IP_BLOCK_TYPE_VCE && in amdgpu_device_set_pg_state()
3066 adev->ip_blocks[i].version->type != AMD_IP_BLOCK_TYPE_VCN && in amdgpu_device_set_pg_state()
3067 adev->ip_blocks[i].version->type != AMD_IP_BLOCK_TYPE_JPEG && in amdgpu_device_set_pg_state()
3068 adev->ip_blocks[i].version->funcs->set_powergating_state) { in amdgpu_device_set_pg_state()
3070 r = adev->ip_blocks[i].version->funcs->set_powergating_state((void *)adev, in amdgpu_device_set_pg_state()
3074 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_set_pg_state()
3135 if (!adev->ip_blocks[i].status.hw) in amdgpu_device_ip_late_init()
3137 if (adev->ip_blocks[i].version->funcs->late_init) { in amdgpu_device_ip_late_init()
3138 r = adev->ip_blocks[i].version->funcs->late_init((void *)adev); in amdgpu_device_ip_late_init()
3141 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_ip_late_init()
3145 adev->ip_blocks[i].status.late_initialized = true; in amdgpu_device_ip_late_init()
3224 if (!adev->ip_blocks[i].status.hw) in amdgpu_device_smu_fini_early()
3226 if (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_SMC) { in amdgpu_device_smu_fini_early()
3227 r = adev->ip_blocks[i].version->funcs->hw_fini((void *)adev); in amdgpu_device_smu_fini_early()
3231 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_smu_fini_early()
3233 adev->ip_blocks[i].status.hw = false; in amdgpu_device_smu_fini_early()
3244 if (!adev->ip_blocks[i].version->funcs->early_fini) in amdgpu_device_ip_fini_early()
3247 r = adev->ip_blocks[i].version->funcs->early_fini((void *)adev); in amdgpu_device_ip_fini_early()
3250 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_ip_fini_early()
3263 if (!adev->ip_blocks[i].status.hw) in amdgpu_device_ip_fini_early()
3266 r = adev->ip_blocks[i].version->funcs->hw_fini((void *)adev); in amdgpu_device_ip_fini_early()
3270 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_ip_fini_early()
3273 adev->ip_blocks[i].status.hw = false; in amdgpu_device_ip_fini_early()
3308 if (!adev->ip_blocks[i].status.sw) in amdgpu_device_ip_fini()
3311 if (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_GMC) { in amdgpu_device_ip_fini()
3320 r = adev->ip_blocks[i].version->funcs->sw_fini((void *)adev); in amdgpu_device_ip_fini()
3324 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_ip_fini()
3326 adev->ip_blocks[i].status.sw = false; in amdgpu_device_ip_fini()
3327 adev->ip_blocks[i].status.valid = false; in amdgpu_device_ip_fini()
3331 if (!adev->ip_blocks[i].status.late_initialized) in amdgpu_device_ip_fini()
3333 if (adev->ip_blocks[i].version->funcs->late_fini) in amdgpu_device_ip_fini()
3334 adev->ip_blocks[i].version->funcs->late_fini((void *)adev); in amdgpu_device_ip_fini()
3335 adev->ip_blocks[i].status.late_initialized = false; in amdgpu_device_ip_fini()
3398 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_ip_suspend_phase1()
3402 if (adev->ip_blocks[i].version->type != AMD_IP_BLOCK_TYPE_DCE) in amdgpu_device_ip_suspend_phase1()
3406 r = adev->ip_blocks[i].version->funcs->suspend(adev); in amdgpu_device_ip_suspend_phase1()
3410 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_ip_suspend_phase1()
3414 adev->ip_blocks[i].status.hw = false; in amdgpu_device_ip_suspend_phase1()
3439 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_ip_suspend_phase2()
3442 if (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_DCE) in amdgpu_device_ip_suspend_phase2()
3446 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_PSP) { in amdgpu_device_ip_suspend_phase2()
3447 adev->ip_blocks[i].status.hw = false; in amdgpu_device_ip_suspend_phase2()
3453 !(adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_GMC || in amdgpu_device_ip_suspend_phase2()
3454 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_SMC || in amdgpu_device_ip_suspend_phase2()
3455 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_COMMON || in amdgpu_device_ip_suspend_phase2()
3456 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_IH)) { in amdgpu_device_ip_suspend_phase2()
3457 adev->ip_blocks[i].status.hw = false; in amdgpu_device_ip_suspend_phase2()
3467 (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_PSP || in amdgpu_device_ip_suspend_phase2()
3468 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_GFX || in amdgpu_device_ip_suspend_phase2()
3469 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_MES)) in amdgpu_device_ip_suspend_phase2()
3476 (adev->ip_blocks[i].version->type == in amdgpu_device_ip_suspend_phase2()
3489 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_PSP) in amdgpu_device_ip_suspend_phase2()
3493 r = adev->ip_blocks[i].version->funcs->suspend(adev); in amdgpu_device_ip_suspend_phase2()
3497 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_ip_suspend_phase2()
3499 adev->ip_blocks[i].status.hw = false; in amdgpu_device_ip_suspend_phase2()
3502 if (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_SMC) { in amdgpu_device_ip_suspend_phase2()
3564 block = &adev->ip_blocks[i]; in amdgpu_device_ip_reinit_early_sriov()
3605 block = &adev->ip_blocks[j]; in amdgpu_device_ip_reinit_late_sriov()
3644 if (!adev->ip_blocks[i].status.valid || adev->ip_blocks[i].status.hw) in amdgpu_device_ip_resume_phase1()
3646 if (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_COMMON || in amdgpu_device_ip_resume_phase1()
3647 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_GMC || in amdgpu_device_ip_resume_phase1()
3648 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_IH || in amdgpu_device_ip_resume_phase1()
3649 (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_PSP && amdgpu_sriov_vf(adev))) { in amdgpu_device_ip_resume_phase1()
3651 r = adev->ip_blocks[i].version->funcs->resume(adev); in amdgpu_device_ip_resume_phase1()
3654 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_ip_resume_phase1()
3657 adev->ip_blocks[i].status.hw = true; in amdgpu_device_ip_resume_phase1()
3682 if (!adev->ip_blocks[i].status.valid || adev->ip_blocks[i].status.hw) in amdgpu_device_ip_resume_phase2()
3684 if (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_COMMON || in amdgpu_device_ip_resume_phase2()
3685 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_GMC || in amdgpu_device_ip_resume_phase2()
3686 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_IH || in amdgpu_device_ip_resume_phase2()
3687 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_PSP) in amdgpu_device_ip_resume_phase2()
3689 r = adev->ip_blocks[i].version->funcs->resume(adev); in amdgpu_device_ip_resume_phase2()
3692 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_ip_resume_phase2()
3695 adev->ip_blocks[i].status.hw = true; in amdgpu_device_ip_resume_phase2()
4271 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_init()
4273 if (!(adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_GMC || in amdgpu_device_init()
4274 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_COMMON || in amdgpu_device_init()
4275 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_IH || in amdgpu_device_init()
4276 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_SMC)) { in amdgpu_device_init()
4278 adev->ip_blocks[i].version->funcs->name); in amdgpu_device_init()
4279 adev->ip_blocks[i].status.hw = true; in amdgpu_device_init()
4693 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_prepare()
4695 if (!adev->ip_blocks[i].version->funcs->prepare_suspend) in amdgpu_device_prepare()
4697 r = adev->ip_blocks[i].version->funcs->prepare_suspend((void *)adev); in amdgpu_device_prepare()
4897 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_ip_check_soft_reset()
4899 if (adev->ip_blocks[i].version->funcs->check_soft_reset) in amdgpu_device_ip_check_soft_reset()
4900 adev->ip_blocks[i].status.hang = in amdgpu_device_ip_check_soft_reset()
4901 adev->ip_blocks[i].version->funcs->check_soft_reset(adev); in amdgpu_device_ip_check_soft_reset()
4902 if (adev->ip_blocks[i].status.hang) { in amdgpu_device_ip_check_soft_reset()
4903 dev_info(adev->dev, "IP block:%s is hung!\n", adev->ip_blocks[i].version->funcs->name); in amdgpu_device_ip_check_soft_reset()
4926 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_ip_pre_soft_reset()
4928 if (adev->ip_blocks[i].status.hang && in amdgpu_device_ip_pre_soft_reset()
4929 adev->ip_blocks[i].version->funcs->pre_soft_reset) { in amdgpu_device_ip_pre_soft_reset()
4930 r = adev->ip_blocks[i].version->funcs->pre_soft_reset(adev); in amdgpu_device_ip_pre_soft_reset()
4956 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_ip_need_full_reset()
4958 if ((adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_GMC) || in amdgpu_device_ip_need_full_reset()
4959 (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_SMC) || in amdgpu_device_ip_need_full_reset()
4960 (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_ACP) || in amdgpu_device_ip_need_full_reset()
4961 (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_DCE) || in amdgpu_device_ip_need_full_reset()
4962 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_PSP) { in amdgpu_device_ip_need_full_reset()
4963 if (adev->ip_blocks[i].status.hang) { in amdgpu_device_ip_need_full_reset()
4988 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_ip_soft_reset()
4990 if (adev->ip_blocks[i].status.hang && in amdgpu_device_ip_soft_reset()
4991 adev->ip_blocks[i].version->funcs->soft_reset) { in amdgpu_device_ip_soft_reset()
4992 r = adev->ip_blocks[i].version->funcs->soft_reset(adev); in amdgpu_device_ip_soft_reset()
5017 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_ip_post_soft_reset()
5019 if (adev->ip_blocks[i].status.hang && in amdgpu_device_ip_post_soft_reset()
5020 adev->ip_blocks[i].version->funcs->post_soft_reset) in amdgpu_device_ip_post_soft_reset()
5021 r = adev->ip_blocks[i].version->funcs->post_soft_reset(adev); in amdgpu_device_ip_post_soft_reset()
5310 if (tmp_adev->ip_blocks[i].version->funcs->dump_ip_state) in amdgpu_device_pre_asic_reset()
5311 tmp_adev->ip_blocks[i].version->funcs in amdgpu_device_pre_asic_reset()