Lines Matching refs:ip_blocks
1611 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_ip_set_clockgating_state()
1613 if (adev->ip_blocks[i].version->type != block_type) in amdgpu_device_ip_set_clockgating_state()
1615 if (!adev->ip_blocks[i].version->funcs->set_clockgating_state) in amdgpu_device_ip_set_clockgating_state()
1617 r = adev->ip_blocks[i].version->funcs->set_clockgating_state( in amdgpu_device_ip_set_clockgating_state()
1621 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_ip_set_clockgating_state()
1645 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_ip_set_powergating_state()
1647 if (adev->ip_blocks[i].version->type != block_type) in amdgpu_device_ip_set_powergating_state()
1649 if (!adev->ip_blocks[i].version->funcs->set_powergating_state) in amdgpu_device_ip_set_powergating_state()
1651 r = adev->ip_blocks[i].version->funcs->set_powergating_state( in amdgpu_device_ip_set_powergating_state()
1655 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_ip_set_powergating_state()
1677 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_ip_get_clockgating_state()
1679 if (adev->ip_blocks[i].version->funcs->get_clockgating_state) in amdgpu_device_ip_get_clockgating_state()
1680 adev->ip_blocks[i].version->funcs->get_clockgating_state((void *)adev, flags); in amdgpu_device_ip_get_clockgating_state()
1699 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_ip_wait_for_idle()
1701 if (adev->ip_blocks[i].version->type == block_type) { in amdgpu_device_ip_wait_for_idle()
1702 r = adev->ip_blocks[i].version->funcs->wait_for_idle((void *)adev); in amdgpu_device_ip_wait_for_idle()
1727 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_ip_is_idle()
1729 if (adev->ip_blocks[i].version->type == block_type) in amdgpu_device_ip_is_idle()
1730 return adev->ip_blocks[i].version->funcs->is_idle((void *)adev); in amdgpu_device_ip_is_idle()
1752 if (adev->ip_blocks[i].version->type == type) in amdgpu_device_ip_get_ip_block()
1753 return &adev->ip_blocks[i]; in amdgpu_device_ip_get_ip_block()
1814 adev->ip_blocks[adev->num_ip_blocks++].version = ip_block_version; in amdgpu_device_ip_block_add()
2148 i, adev->ip_blocks[i].version->funcs->name); in amdgpu_device_ip_early_init()
2149 adev->ip_blocks[i].status.valid = false; in amdgpu_device_ip_early_init()
2151 if (adev->ip_blocks[i].version->funcs->early_init) { in amdgpu_device_ip_early_init()
2152 r = adev->ip_blocks[i].version->funcs->early_init((void *)adev); in amdgpu_device_ip_early_init()
2154 adev->ip_blocks[i].status.valid = false; in amdgpu_device_ip_early_init()
2157 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_ip_early_init()
2160 adev->ip_blocks[i].status.valid = true; in amdgpu_device_ip_early_init()
2163 adev->ip_blocks[i].status.valid = true; in amdgpu_device_ip_early_init()
2167 if (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_COMMON) { in amdgpu_device_ip_early_init()
2201 if (!adev->ip_blocks[i].status.sw) in amdgpu_device_ip_hw_init_phase1()
2203 if (adev->ip_blocks[i].status.hw) in amdgpu_device_ip_hw_init_phase1()
2205 if (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_COMMON || in amdgpu_device_ip_hw_init_phase1()
2206 (amdgpu_sriov_vf(adev) && (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_PSP)) || in amdgpu_device_ip_hw_init_phase1()
2207 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_IH) { in amdgpu_device_ip_hw_init_phase1()
2208 r = adev->ip_blocks[i].version->funcs->hw_init(adev); in amdgpu_device_ip_hw_init_phase1()
2211 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_ip_hw_init_phase1()
2214 adev->ip_blocks[i].status.hw = true; in amdgpu_device_ip_hw_init_phase1()
2226 if (!adev->ip_blocks[i].status.sw) in amdgpu_device_ip_hw_init_phase2()
2228 if (adev->ip_blocks[i].status.hw) in amdgpu_device_ip_hw_init_phase2()
2230 r = adev->ip_blocks[i].version->funcs->hw_init(adev); in amdgpu_device_ip_hw_init_phase2()
2233 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_ip_hw_init_phase2()
2236 adev->ip_blocks[i].status.hw = true; in amdgpu_device_ip_hw_init_phase2()
2250 if (adev->ip_blocks[i].version->type != AMD_IP_BLOCK_TYPE_PSP) in amdgpu_device_fw_loading()
2253 if (!adev->ip_blocks[i].status.sw) in amdgpu_device_fw_loading()
2257 if (adev->ip_blocks[i].status.hw == true) in amdgpu_device_fw_loading()
2261 r = adev->ip_blocks[i].version->funcs->resume(adev); in amdgpu_device_fw_loading()
2264 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_fw_loading()
2268 r = adev->ip_blocks[i].version->funcs->hw_init(adev); in amdgpu_device_fw_loading()
2271 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_fw_loading()
2276 adev->ip_blocks[i].status.hw = true; in amdgpu_device_fw_loading()
2307 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_ip_init()
2309 r = adev->ip_blocks[i].version->funcs->sw_init((void *)adev); in amdgpu_device_ip_init()
2312 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_ip_init()
2315 adev->ip_blocks[i].status.sw = true; in amdgpu_device_ip_init()
2318 if (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_GMC) { in amdgpu_device_ip_init()
2324 r = adev->ip_blocks[i].version->funcs->hw_init((void *)adev); in amdgpu_device_ip_init()
2334 adev->ip_blocks[i].status.hw = true; in amdgpu_device_ip_init()
2479 if (!adev->ip_blocks[i].status.late_initialized) in amdgpu_device_set_cg_state()
2483 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_GFX) in amdgpu_device_set_cg_state()
2486 if (adev->ip_blocks[i].version->type != AMD_IP_BLOCK_TYPE_UVD && in amdgpu_device_set_cg_state()
2487 adev->ip_blocks[i].version->type != AMD_IP_BLOCK_TYPE_VCE && in amdgpu_device_set_cg_state()
2488 adev->ip_blocks[i].version->type != AMD_IP_BLOCK_TYPE_VCN && in amdgpu_device_set_cg_state()
2489 adev->ip_blocks[i].version->type != AMD_IP_BLOCK_TYPE_JPEG && in amdgpu_device_set_cg_state()
2490 adev->ip_blocks[i].version->funcs->set_clockgating_state) { in amdgpu_device_set_cg_state()
2492 r = adev->ip_blocks[i].version->funcs->set_clockgating_state((void *)adev, in amdgpu_device_set_cg_state()
2496 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_set_cg_state()
2515 if (!adev->ip_blocks[i].status.late_initialized) in amdgpu_device_set_pg_state()
2519 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_GFX) in amdgpu_device_set_pg_state()
2522 if (adev->ip_blocks[i].version->type != AMD_IP_BLOCK_TYPE_UVD && in amdgpu_device_set_pg_state()
2523 adev->ip_blocks[i].version->type != AMD_IP_BLOCK_TYPE_VCE && in amdgpu_device_set_pg_state()
2524 adev->ip_blocks[i].version->type != AMD_IP_BLOCK_TYPE_VCN && in amdgpu_device_set_pg_state()
2525 adev->ip_blocks[i].version->type != AMD_IP_BLOCK_TYPE_JPEG && in amdgpu_device_set_pg_state()
2526 adev->ip_blocks[i].version->funcs->set_powergating_state) { in amdgpu_device_set_pg_state()
2528 r = adev->ip_blocks[i].version->funcs->set_powergating_state((void *)adev, in amdgpu_device_set_pg_state()
2532 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_set_pg_state()
2593 if (!adev->ip_blocks[i].status.hw) in amdgpu_device_ip_late_init()
2595 if (adev->ip_blocks[i].version->funcs->late_init) { in amdgpu_device_ip_late_init()
2596 r = adev->ip_blocks[i].version->funcs->late_init((void *)adev); in amdgpu_device_ip_late_init()
2599 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_ip_late_init()
2603 adev->ip_blocks[i].status.late_initialized = true; in amdgpu_device_ip_late_init()
2665 if (!adev->ip_blocks[i].version->funcs->early_fini) in amdgpu_device_ip_fini_early()
2668 r = adev->ip_blocks[i].version->funcs->early_fini((void *)adev); in amdgpu_device_ip_fini_early()
2671 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_ip_fini_early()
2682 if (!adev->ip_blocks[i].status.hw) in amdgpu_device_ip_fini_early()
2684 if (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_SMC) { in amdgpu_device_ip_fini_early()
2685 r = adev->ip_blocks[i].version->funcs->hw_fini((void *)adev); in amdgpu_device_ip_fini_early()
2689 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_ip_fini_early()
2691 adev->ip_blocks[i].status.hw = false; in amdgpu_device_ip_fini_early()
2697 if (!adev->ip_blocks[i].status.hw) in amdgpu_device_ip_fini_early()
2700 r = adev->ip_blocks[i].version->funcs->hw_fini((void *)adev); in amdgpu_device_ip_fini_early()
2704 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_ip_fini_early()
2707 adev->ip_blocks[i].status.hw = false; in amdgpu_device_ip_fini_early()
2744 if (!adev->ip_blocks[i].status.sw) in amdgpu_device_ip_fini()
2747 if (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_GMC) { in amdgpu_device_ip_fini()
2755 r = adev->ip_blocks[i].version->funcs->sw_fini((void *)adev); in amdgpu_device_ip_fini()
2759 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_ip_fini()
2761 adev->ip_blocks[i].status.sw = false; in amdgpu_device_ip_fini()
2762 adev->ip_blocks[i].status.valid = false; in amdgpu_device_ip_fini()
2766 if (!adev->ip_blocks[i].status.late_initialized) in amdgpu_device_ip_fini()
2768 if (adev->ip_blocks[i].version->funcs->late_fini) in amdgpu_device_ip_fini()
2769 adev->ip_blocks[i].version->funcs->late_fini((void *)adev); in amdgpu_device_ip_fini()
2770 adev->ip_blocks[i].status.late_initialized = false; in amdgpu_device_ip_fini()
2825 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_ip_suspend_phase1()
2829 if (adev->ip_blocks[i].version->type != AMD_IP_BLOCK_TYPE_DCE) in amdgpu_device_ip_suspend_phase1()
2833 r = adev->ip_blocks[i].version->funcs->suspend(adev); in amdgpu_device_ip_suspend_phase1()
2837 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_ip_suspend_phase1()
2841 adev->ip_blocks[i].status.hw = false; in amdgpu_device_ip_suspend_phase1()
2866 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_ip_suspend_phase2()
2869 if (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_DCE) in amdgpu_device_ip_suspend_phase2()
2873 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_PSP) { in amdgpu_device_ip_suspend_phase2()
2874 adev->ip_blocks[i].status.hw = false; in amdgpu_device_ip_suspend_phase2()
2880 !(adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_GMC || in amdgpu_device_ip_suspend_phase2()
2881 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_SMC || in amdgpu_device_ip_suspend_phase2()
2882 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_COMMON || in amdgpu_device_ip_suspend_phase2()
2883 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_IH)) { in amdgpu_device_ip_suspend_phase2()
2884 adev->ip_blocks[i].status.hw = false; in amdgpu_device_ip_suspend_phase2()
2894 (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_PSP || in amdgpu_device_ip_suspend_phase2()
2895 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_GFX)) in amdgpu_device_ip_suspend_phase2()
2899 r = adev->ip_blocks[i].version->funcs->suspend(adev); in amdgpu_device_ip_suspend_phase2()
2903 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_ip_suspend_phase2()
2905 adev->ip_blocks[i].status.hw = false; in amdgpu_device_ip_suspend_phase2()
2908 if (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_SMC) { in amdgpu_device_ip_suspend_phase2()
2968 block = &adev->ip_blocks[i]; in amdgpu_device_ip_reinit_early_sriov()
3007 block = &adev->ip_blocks[j]; in amdgpu_device_ip_reinit_late_sriov()
3046 if (!adev->ip_blocks[i].status.valid || adev->ip_blocks[i].status.hw) in amdgpu_device_ip_resume_phase1()
3048 if (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_COMMON || in amdgpu_device_ip_resume_phase1()
3049 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_GMC || in amdgpu_device_ip_resume_phase1()
3050 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_IH) { in amdgpu_device_ip_resume_phase1()
3052 r = adev->ip_blocks[i].version->funcs->resume(adev); in amdgpu_device_ip_resume_phase1()
3055 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_ip_resume_phase1()
3058 adev->ip_blocks[i].status.hw = true; in amdgpu_device_ip_resume_phase1()
3083 if (!adev->ip_blocks[i].status.valid || adev->ip_blocks[i].status.hw) in amdgpu_device_ip_resume_phase2()
3085 if (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_COMMON || in amdgpu_device_ip_resume_phase2()
3086 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_GMC || in amdgpu_device_ip_resume_phase2()
3087 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_IH || in amdgpu_device_ip_resume_phase2()
3088 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_PSP) in amdgpu_device_ip_resume_phase2()
3090 r = adev->ip_blocks[i].version->funcs->resume(adev); in amdgpu_device_ip_resume_phase2()
3093 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_ip_resume_phase2()
3096 adev->ip_blocks[i].status.hw = true; in amdgpu_device_ip_resume_phase2()
3586 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_init()
3588 if (!(adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_GMC || in amdgpu_device_init()
3589 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_COMMON || in amdgpu_device_init()
3590 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_IH || in amdgpu_device_init()
3591 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_SMC)) { in amdgpu_device_init()
3593 adev->ip_blocks[i].version->funcs->name); in amdgpu_device_init()
3594 adev->ip_blocks[i].status.hw = true; in amdgpu_device_init()
4083 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_ip_check_soft_reset()
4085 if (adev->ip_blocks[i].version->funcs->check_soft_reset) in amdgpu_device_ip_check_soft_reset()
4086 adev->ip_blocks[i].status.hang = in amdgpu_device_ip_check_soft_reset()
4087 adev->ip_blocks[i].version->funcs->check_soft_reset(adev); in amdgpu_device_ip_check_soft_reset()
4088 if (adev->ip_blocks[i].status.hang) { in amdgpu_device_ip_check_soft_reset()
4089 dev_info(adev->dev, "IP block:%s is hung!\n", adev->ip_blocks[i].version->funcs->name); in amdgpu_device_ip_check_soft_reset()
4112 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_ip_pre_soft_reset()
4114 if (adev->ip_blocks[i].status.hang && in amdgpu_device_ip_pre_soft_reset()
4115 adev->ip_blocks[i].version->funcs->pre_soft_reset) { in amdgpu_device_ip_pre_soft_reset()
4116 r = adev->ip_blocks[i].version->funcs->pre_soft_reset(adev); in amdgpu_device_ip_pre_soft_reset()
4142 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_ip_need_full_reset()
4144 if ((adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_GMC) || in amdgpu_device_ip_need_full_reset()
4145 (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_SMC) || in amdgpu_device_ip_need_full_reset()
4146 (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_ACP) || in amdgpu_device_ip_need_full_reset()
4147 (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_DCE) || in amdgpu_device_ip_need_full_reset()
4148 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_PSP) { in amdgpu_device_ip_need_full_reset()
4149 if (adev->ip_blocks[i].status.hang) { in amdgpu_device_ip_need_full_reset()
4174 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_ip_soft_reset()
4176 if (adev->ip_blocks[i].status.hang && in amdgpu_device_ip_soft_reset()
4177 adev->ip_blocks[i].version->funcs->soft_reset) { in amdgpu_device_ip_soft_reset()
4178 r = adev->ip_blocks[i].version->funcs->soft_reset(adev); in amdgpu_device_ip_soft_reset()
4203 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_ip_post_soft_reset()
4205 if (adev->ip_blocks[i].status.hang && in amdgpu_device_ip_post_soft_reset()
4206 adev->ip_blocks[i].version->funcs->post_soft_reset) in amdgpu_device_ip_post_soft_reset()
4207 r = adev->ip_blocks[i].version->funcs->post_soft_reset(adev); in amdgpu_device_ip_post_soft_reset()