Lines Matching refs:ip_blocks
2735 ip_block = &adev->ip_blocks[i]; in amdgpu_device_ip_early_init()
2739 adev->ip_blocks[i].version->funcs->name); in amdgpu_device_ip_early_init()
2740 adev->ip_blocks[i].status.valid = false; in amdgpu_device_ip_early_init()
2744 adev->ip_blocks[i].status.valid = false; in amdgpu_device_ip_early_init()
2748 adev->ip_blocks[i].version->funcs->name, in amdgpu_device_ip_early_init()
2752 adev->ip_blocks[i].status.valid = true; in amdgpu_device_ip_early_init()
2755 adev->ip_blocks[i].status.valid = true; in amdgpu_device_ip_early_init()
2758 if (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_COMMON) { in amdgpu_device_ip_early_init()
2820 if (!adev->ip_blocks[i].status.sw) in amdgpu_device_ip_hw_init_phase1()
2822 if (adev->ip_blocks[i].status.hw) in amdgpu_device_ip_hw_init_phase1()
2825 adev, adev->ip_blocks[i].version->type)) in amdgpu_device_ip_hw_init_phase1()
2827 if (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_COMMON || in amdgpu_device_ip_hw_init_phase1()
2828 (amdgpu_sriov_vf(adev) && (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_PSP)) || in amdgpu_device_ip_hw_init_phase1()
2829 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_IH) { in amdgpu_device_ip_hw_init_phase1()
2830 r = adev->ip_blocks[i].version->funcs->hw_init(&adev->ip_blocks[i]); in amdgpu_device_ip_hw_init_phase1()
2834 adev->ip_blocks[i].version->funcs->name, in amdgpu_device_ip_hw_init_phase1()
2838 adev->ip_blocks[i].status.hw = true; in amdgpu_device_ip_hw_init_phase1()
2850 if (!adev->ip_blocks[i].status.sw) in amdgpu_device_ip_hw_init_phase2()
2852 if (adev->ip_blocks[i].status.hw) in amdgpu_device_ip_hw_init_phase2()
2855 adev, adev->ip_blocks[i].version->type)) in amdgpu_device_ip_hw_init_phase2()
2857 r = adev->ip_blocks[i].version->funcs->hw_init(&adev->ip_blocks[i]); in amdgpu_device_ip_hw_init_phase2()
2861 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_ip_hw_init_phase2()
2864 adev->ip_blocks[i].status.hw = true; in amdgpu_device_ip_hw_init_phase2()
2878 if (adev->ip_blocks[i].version->type != AMD_IP_BLOCK_TYPE_PSP) in amdgpu_device_fw_loading()
2885 if (!adev->ip_blocks[i].status.sw) in amdgpu_device_fw_loading()
2889 if (adev->ip_blocks[i].status.hw == true) in amdgpu_device_fw_loading()
2893 r = amdgpu_ip_block_resume(&adev->ip_blocks[i]); in amdgpu_device_fw_loading()
2897 r = adev->ip_blocks[i].version->funcs->hw_init(&adev->ip_blocks[i]); in amdgpu_device_fw_loading()
2901 adev->ip_blocks[i] in amdgpu_device_fw_loading()
2906 adev->ip_blocks[i].status.hw = true; in amdgpu_device_fw_loading()
3007 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_ip_init()
3009 if (adev->ip_blocks[i].version->funcs->sw_init) { in amdgpu_device_ip_init()
3010 r = adev->ip_blocks[i].version->funcs->sw_init(&adev->ip_blocks[i]); in amdgpu_device_ip_init()
3014 adev->ip_blocks[i].version->funcs->name, in amdgpu_device_ip_init()
3019 adev->ip_blocks[i].status.sw = true; in amdgpu_device_ip_init()
3022 adev, adev->ip_blocks[i].version->type)) in amdgpu_device_ip_init()
3025 if (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_COMMON) { in amdgpu_device_ip_init()
3027 r = adev->ip_blocks[i].version->funcs->hw_init(&adev->ip_blocks[i]); in amdgpu_device_ip_init()
3033 adev->ip_blocks[i].status.hw = true; in amdgpu_device_ip_init()
3034 } else if (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_GMC) { in amdgpu_device_ip_init()
3047 r = adev->ip_blocks[i].version->funcs->hw_init(&adev->ip_blocks[i]); in amdgpu_device_ip_init()
3059 adev->ip_blocks[i].status.hw = true; in amdgpu_device_ip_init()
3250 if (!adev->ip_blocks[i].status.late_initialized) in amdgpu_device_set_cg_state()
3252 if (!adev->ip_blocks[i].version) in amdgpu_device_set_cg_state()
3256 (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_GFX || in amdgpu_device_set_cg_state()
3257 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_SDMA)) in amdgpu_device_set_cg_state()
3260 if (adev->ip_blocks[i].version->type != AMD_IP_BLOCK_TYPE_UVD && in amdgpu_device_set_cg_state()
3261 adev->ip_blocks[i].version->type != AMD_IP_BLOCK_TYPE_VCE && in amdgpu_device_set_cg_state()
3262 adev->ip_blocks[i].version->type != AMD_IP_BLOCK_TYPE_VCN && in amdgpu_device_set_cg_state()
3263 adev->ip_blocks[i].version->type != AMD_IP_BLOCK_TYPE_JPEG && in amdgpu_device_set_cg_state()
3264 adev->ip_blocks[i].version->funcs->set_clockgating_state) { in amdgpu_device_set_cg_state()
3266 r = adev->ip_blocks[i].version->funcs->set_clockgating_state(&adev->ip_blocks[i], in amdgpu_device_set_cg_state()
3271 adev->ip_blocks[i].version->funcs->name, in amdgpu_device_set_cg_state()
3291 if (!adev->ip_blocks[i].status.late_initialized) in amdgpu_device_set_pg_state()
3293 if (!adev->ip_blocks[i].version) in amdgpu_device_set_pg_state()
3297 (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_GFX || in amdgpu_device_set_pg_state()
3298 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_SDMA)) in amdgpu_device_set_pg_state()
3301 if (adev->ip_blocks[i].version->type != AMD_IP_BLOCK_TYPE_UVD && in amdgpu_device_set_pg_state()
3302 adev->ip_blocks[i].version->type != AMD_IP_BLOCK_TYPE_VCE && in amdgpu_device_set_pg_state()
3303 adev->ip_blocks[i].version->type != AMD_IP_BLOCK_TYPE_VCN && in amdgpu_device_set_pg_state()
3304 adev->ip_blocks[i].version->type != AMD_IP_BLOCK_TYPE_JPEG && in amdgpu_device_set_pg_state()
3305 adev->ip_blocks[i].version->funcs->set_powergating_state) { in amdgpu_device_set_pg_state()
3307 r = adev->ip_blocks[i].version->funcs->set_powergating_state(&adev->ip_blocks[i], in amdgpu_device_set_pg_state()
3312 adev->ip_blocks[i].version->funcs->name, in amdgpu_device_set_pg_state()
3374 if (!adev->ip_blocks[i].status.hw) in amdgpu_device_ip_late_init()
3376 if (adev->ip_blocks[i].version->funcs->late_init) { in amdgpu_device_ip_late_init()
3377 r = adev->ip_blocks[i].version->funcs->late_init(&adev->ip_blocks[i]); in amdgpu_device_ip_late_init()
3381 adev->ip_blocks[i].version->funcs->name, in amdgpu_device_ip_late_init()
3386 adev->ip_blocks[i].status.late_initialized = true; in amdgpu_device_ip_late_init()
3488 if (!adev->ip_blocks[i].status.hw) in amdgpu_device_smu_fini_early()
3490 if (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_SMC) { in amdgpu_device_smu_fini_early()
3491 amdgpu_ip_block_hw_fini(&adev->ip_blocks[i]); in amdgpu_device_smu_fini_early()
3502 if (!adev->ip_blocks[i].version) in amdgpu_device_ip_fini_early()
3504 if (!adev->ip_blocks[i].version->funcs->early_fini) in amdgpu_device_ip_fini_early()
3507 r = adev->ip_blocks[i].version->funcs->early_fini(&adev->ip_blocks[i]); in amdgpu_device_ip_fini_early()
3511 adev->ip_blocks[i].version->funcs->name, r); in amdgpu_device_ip_fini_early()
3523 if (!adev->ip_blocks[i].status.hw) in amdgpu_device_ip_fini_early()
3526 amdgpu_ip_block_hw_fini(&adev->ip_blocks[i]); in amdgpu_device_ip_fini_early()
3578 if (!adev->ip_blocks[i].status.sw) in amdgpu_device_ip_fini()
3581 if (!adev->ip_blocks[i].version) in amdgpu_device_ip_fini()
3583 if (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_GMC) { in amdgpu_device_ip_fini()
3592 if (adev->ip_blocks[i].version->funcs->sw_fini) { in amdgpu_device_ip_fini()
3593 r = adev->ip_blocks[i].version->funcs->sw_fini(&adev->ip_blocks[i]); in amdgpu_device_ip_fini()
3598 adev->ip_blocks[i].version->funcs->name, in amdgpu_device_ip_fini()
3602 adev->ip_blocks[i].status.sw = false; in amdgpu_device_ip_fini()
3603 adev->ip_blocks[i].status.valid = false; in amdgpu_device_ip_fini()
3607 if (!adev->ip_blocks[i].status.late_initialized) in amdgpu_device_ip_fini()
3609 if (!adev->ip_blocks[i].version) in amdgpu_device_ip_fini()
3611 if (adev->ip_blocks[i].version->funcs->late_fini) in amdgpu_device_ip_fini()
3612 adev->ip_blocks[i].version->funcs->late_fini(&adev->ip_blocks[i]); in amdgpu_device_ip_fini()
3613 adev->ip_blocks[i].status.late_initialized = false; in amdgpu_device_ip_fini()
3677 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_ip_suspend_phase1()
3681 if (adev->ip_blocks[i].version->type != AMD_IP_BLOCK_TYPE_DCE) in amdgpu_device_ip_suspend_phase1()
3684 r = amdgpu_ip_block_suspend(&adev->ip_blocks[i]); in amdgpu_device_ip_suspend_phase1()
3724 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_ip_suspend_phase2()
3727 if (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_DCE) in amdgpu_device_ip_suspend_phase2()
3731 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_PSP) { in amdgpu_device_ip_suspend_phase2()
3732 adev->ip_blocks[i].status.hw = false; in amdgpu_device_ip_suspend_phase2()
3738 adev, adev->ip_blocks[i].version->type)) in amdgpu_device_ip_suspend_phase2()
3745 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_GFX && in amdgpu_device_ip_suspend_phase2()
3754 (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_PSP || in amdgpu_device_ip_suspend_phase2()
3755 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_GFX || in amdgpu_device_ip_suspend_phase2()
3756 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_MES)) in amdgpu_device_ip_suspend_phase2()
3763 (adev->ip_blocks[i].version->type == in amdgpu_device_ip_suspend_phase2()
3776 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_PSP) in amdgpu_device_ip_suspend_phase2()
3779 r = amdgpu_ip_block_suspend(&adev->ip_blocks[i]); in amdgpu_device_ip_suspend_phase2()
3785 if (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_SMC) { in amdgpu_device_ip_suspend_phase2()
3875 block = &adev->ip_blocks[i]; in amdgpu_device_ip_reinit_early_sriov()
3884 r = block->version->funcs->hw_init(&adev->ip_blocks[i]); in amdgpu_device_ip_reinit_early_sriov()
3956 if (!adev->ip_blocks[i].status.valid || adev->ip_blocks[i].status.hw) in amdgpu_device_ip_resume_phase1()
3958 if (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_COMMON || in amdgpu_device_ip_resume_phase1()
3959 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_GMC || in amdgpu_device_ip_resume_phase1()
3960 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_IH || in amdgpu_device_ip_resume_phase1()
3961 (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_PSP && amdgpu_sriov_vf(adev))) { in amdgpu_device_ip_resume_phase1()
3963 r = amdgpu_ip_block_resume(&adev->ip_blocks[i]); in amdgpu_device_ip_resume_phase1()
3990 if (!adev->ip_blocks[i].status.valid || adev->ip_blocks[i].status.hw) in amdgpu_device_ip_resume_phase2()
3992 if (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_COMMON || in amdgpu_device_ip_resume_phase2()
3993 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_GMC || in amdgpu_device_ip_resume_phase2()
3994 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_IH || in amdgpu_device_ip_resume_phase2()
3995 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_DCE || in amdgpu_device_ip_resume_phase2()
3996 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_PSP) in amdgpu_device_ip_resume_phase2()
3998 r = amdgpu_ip_block_resume(&adev->ip_blocks[i]); in amdgpu_device_ip_resume_phase2()
4024 if (!adev->ip_blocks[i].status.valid || adev->ip_blocks[i].status.hw) in amdgpu_device_ip_resume_phase3()
4026 if (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_DCE) { in amdgpu_device_ip_resume_phase3()
4027 r = amdgpu_ip_block_resume(&adev->ip_blocks[i]); in amdgpu_device_ip_resume_phase3()
5109 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_prepare()
5111 if (!adev->ip_blocks[i].version->funcs->prepare_suspend) in amdgpu_device_prepare()
5113 r = adev->ip_blocks[i].version->funcs->prepare_suspend(&adev->ip_blocks[i]); in amdgpu_device_prepare()
5135 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_complete()
5137 if (!adev->ip_blocks[i].version->funcs->complete) in amdgpu_device_complete()
5139 adev->ip_blocks[i].version->funcs->complete(&adev->ip_blocks[i]); in amdgpu_device_complete()
5420 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_ip_check_soft_reset()
5422 if (adev->ip_blocks[i].version->funcs->check_soft_reset) in amdgpu_device_ip_check_soft_reset()
5423 adev->ip_blocks[i].status.hang = in amdgpu_device_ip_check_soft_reset()
5424 adev->ip_blocks[i].version->funcs->check_soft_reset( in amdgpu_device_ip_check_soft_reset()
5425 &adev->ip_blocks[i]); in amdgpu_device_ip_check_soft_reset()
5426 if (adev->ip_blocks[i].status.hang) { in amdgpu_device_ip_check_soft_reset()
5427 dev_info(adev->dev, "IP block:%s is hung!\n", adev->ip_blocks[i].version->funcs->name); in amdgpu_device_ip_check_soft_reset()
5450 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_ip_pre_soft_reset()
5452 if (adev->ip_blocks[i].status.hang && in amdgpu_device_ip_pre_soft_reset()
5453 adev->ip_blocks[i].version->funcs->pre_soft_reset) { in amdgpu_device_ip_pre_soft_reset()
5454 r = adev->ip_blocks[i].version->funcs->pre_soft_reset(&adev->ip_blocks[i]); in amdgpu_device_ip_pre_soft_reset()
5480 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_ip_need_full_reset()
5482 if ((adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_GMC) || in amdgpu_device_ip_need_full_reset()
5483 (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_SMC) || in amdgpu_device_ip_need_full_reset()
5484 (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_ACP) || in amdgpu_device_ip_need_full_reset()
5485 (adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_DCE) || in amdgpu_device_ip_need_full_reset()
5486 adev->ip_blocks[i].version->type == AMD_IP_BLOCK_TYPE_PSP) { in amdgpu_device_ip_need_full_reset()
5487 if (adev->ip_blocks[i].status.hang) { in amdgpu_device_ip_need_full_reset()
5512 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_ip_soft_reset()
5514 if (adev->ip_blocks[i].status.hang && in amdgpu_device_ip_soft_reset()
5515 adev->ip_blocks[i].version->funcs->soft_reset) { in amdgpu_device_ip_soft_reset()
5516 r = adev->ip_blocks[i].version->funcs->soft_reset(&adev->ip_blocks[i]); in amdgpu_device_ip_soft_reset()
5541 if (!adev->ip_blocks[i].status.valid) in amdgpu_device_ip_post_soft_reset()
5543 if (adev->ip_blocks[i].status.hang && in amdgpu_device_ip_post_soft_reset()
5544 adev->ip_blocks[i].version->funcs->post_soft_reset) in amdgpu_device_ip_post_soft_reset()
5545 r = adev->ip_blocks[i].version->funcs->post_soft_reset(&adev->ip_blocks[i]); in amdgpu_device_ip_post_soft_reset()
5862 if (tmp_adev->ip_blocks[i].version->funcs->dump_ip_state) in amdgpu_device_pre_asic_reset()
5863 tmp_adev->ip_blocks[i].version->funcs in amdgpu_device_pre_asic_reset()
5864 ->dump_ip_state((void *)&tmp_adev->ip_blocks[i]); in amdgpu_device_pre_asic_reset()