• Home
  • Raw
  • Download

Lines Matching refs:adev

37 void amdgpu_gfx_rlc_enter_safe_mode(struct amdgpu_device *adev)  in amdgpu_gfx_rlc_enter_safe_mode()  argument
39 if (adev->gfx.rlc.in_safe_mode) in amdgpu_gfx_rlc_enter_safe_mode()
43 if (!adev->gfx.rlc.funcs->is_rlc_enabled(adev)) in amdgpu_gfx_rlc_enter_safe_mode()
46 if (adev->cg_flags & in amdgpu_gfx_rlc_enter_safe_mode()
49 adev->gfx.rlc.funcs->set_safe_mode(adev); in amdgpu_gfx_rlc_enter_safe_mode()
50 adev->gfx.rlc.in_safe_mode = true; in amdgpu_gfx_rlc_enter_safe_mode()
61 void amdgpu_gfx_rlc_exit_safe_mode(struct amdgpu_device *adev) in amdgpu_gfx_rlc_exit_safe_mode() argument
63 if (!(adev->gfx.rlc.in_safe_mode)) in amdgpu_gfx_rlc_exit_safe_mode()
67 if (!adev->gfx.rlc.funcs->is_rlc_enabled(adev)) in amdgpu_gfx_rlc_exit_safe_mode()
70 if (adev->cg_flags & in amdgpu_gfx_rlc_exit_safe_mode()
73 adev->gfx.rlc.funcs->unset_safe_mode(adev); in amdgpu_gfx_rlc_exit_safe_mode()
74 adev->gfx.rlc.in_safe_mode = false; in amdgpu_gfx_rlc_exit_safe_mode()
87 int amdgpu_gfx_rlc_init_sr(struct amdgpu_device *adev, u32 dws) in amdgpu_gfx_rlc_init_sr() argument
95 r = amdgpu_bo_create_reserved(adev, dws * 4, PAGE_SIZE, in amdgpu_gfx_rlc_init_sr()
97 &adev->gfx.rlc.save_restore_obj, in amdgpu_gfx_rlc_init_sr()
98 &adev->gfx.rlc.save_restore_gpu_addr, in amdgpu_gfx_rlc_init_sr()
99 (void **)&adev->gfx.rlc.sr_ptr); in amdgpu_gfx_rlc_init_sr()
101 dev_warn(adev->dev, "(%d) create RLC sr bo failed\n", r); in amdgpu_gfx_rlc_init_sr()
102 amdgpu_gfx_rlc_fini(adev); in amdgpu_gfx_rlc_init_sr()
107 src_ptr = adev->gfx.rlc.reg_list; in amdgpu_gfx_rlc_init_sr()
108 dst_ptr = adev->gfx.rlc.sr_ptr; in amdgpu_gfx_rlc_init_sr()
109 for (i = 0; i < adev->gfx.rlc.reg_list_size; i++) in amdgpu_gfx_rlc_init_sr()
111 amdgpu_bo_kunmap(adev->gfx.rlc.save_restore_obj); in amdgpu_gfx_rlc_init_sr()
112 amdgpu_bo_unreserve(adev->gfx.rlc.save_restore_obj); in amdgpu_gfx_rlc_init_sr()
125 int amdgpu_gfx_rlc_init_csb(struct amdgpu_device *adev) in amdgpu_gfx_rlc_init_csb() argument
131 adev->gfx.rlc.clear_state_size = dws = adev->gfx.rlc.funcs->get_csb_size(adev); in amdgpu_gfx_rlc_init_csb()
132 r = amdgpu_bo_create_kernel(adev, dws * 4, PAGE_SIZE, in amdgpu_gfx_rlc_init_csb()
134 &adev->gfx.rlc.clear_state_obj, in amdgpu_gfx_rlc_init_csb()
135 &adev->gfx.rlc.clear_state_gpu_addr, in amdgpu_gfx_rlc_init_csb()
136 (void **)&adev->gfx.rlc.cs_ptr); in amdgpu_gfx_rlc_init_csb()
138 dev_err(adev->dev, "(%d) failed to create rlc csb bo\n", r); in amdgpu_gfx_rlc_init_csb()
139 amdgpu_gfx_rlc_fini(adev); in amdgpu_gfx_rlc_init_csb()
154 int amdgpu_gfx_rlc_init_cpt(struct amdgpu_device *adev) in amdgpu_gfx_rlc_init_cpt() argument
158 r = amdgpu_bo_create_reserved(adev, adev->gfx.rlc.cp_table_size, in amdgpu_gfx_rlc_init_cpt()
160 &adev->gfx.rlc.cp_table_obj, in amdgpu_gfx_rlc_init_cpt()
161 &adev->gfx.rlc.cp_table_gpu_addr, in amdgpu_gfx_rlc_init_cpt()
162 (void **)&adev->gfx.rlc.cp_table_ptr); in amdgpu_gfx_rlc_init_cpt()
164 dev_err(adev->dev, "(%d) failed to create cp table bo\n", r); in amdgpu_gfx_rlc_init_cpt()
165 amdgpu_gfx_rlc_fini(adev); in amdgpu_gfx_rlc_init_cpt()
170 amdgpu_gfx_rlc_setup_cp_table(adev); in amdgpu_gfx_rlc_init_cpt()
171 amdgpu_bo_kunmap(adev->gfx.rlc.cp_table_obj); in amdgpu_gfx_rlc_init_cpt()
172 amdgpu_bo_unreserve(adev->gfx.rlc.cp_table_obj); in amdgpu_gfx_rlc_init_cpt()
184 void amdgpu_gfx_rlc_setup_cp_table(struct amdgpu_device *adev) in amdgpu_gfx_rlc_setup_cp_table() argument
192 max_me = adev->gfx.rlc.funcs->get_cp_table_num(adev); in amdgpu_gfx_rlc_setup_cp_table()
195 dst_ptr = adev->gfx.rlc.cp_table_ptr; in amdgpu_gfx_rlc_setup_cp_table()
199 (const struct gfx_firmware_header_v1_0 *)adev->gfx.ce_fw->data; in amdgpu_gfx_rlc_setup_cp_table()
201 (adev->gfx.ce_fw->data + in amdgpu_gfx_rlc_setup_cp_table()
207 (const struct gfx_firmware_header_v1_0 *)adev->gfx.pfp_fw->data; in amdgpu_gfx_rlc_setup_cp_table()
209 (adev->gfx.pfp_fw->data + in amdgpu_gfx_rlc_setup_cp_table()
215 (const struct gfx_firmware_header_v1_0 *)adev->gfx.me_fw->data; in amdgpu_gfx_rlc_setup_cp_table()
217 (adev->gfx.me_fw->data + in amdgpu_gfx_rlc_setup_cp_table()
223 (const struct gfx_firmware_header_v1_0 *)adev->gfx.mec_fw->data; in amdgpu_gfx_rlc_setup_cp_table()
225 (adev->gfx.mec_fw->data + in amdgpu_gfx_rlc_setup_cp_table()
231 (const struct gfx_firmware_header_v1_0 *)adev->gfx.mec2_fw->data; in amdgpu_gfx_rlc_setup_cp_table()
233 (adev->gfx.mec2_fw->data + in amdgpu_gfx_rlc_setup_cp_table()
256 void amdgpu_gfx_rlc_fini(struct amdgpu_device *adev) in amdgpu_gfx_rlc_fini() argument
259 if (adev->gfx.rlc.save_restore_obj) { in amdgpu_gfx_rlc_fini()
260 amdgpu_bo_free_kernel(&adev->gfx.rlc.save_restore_obj, in amdgpu_gfx_rlc_fini()
261 &adev->gfx.rlc.save_restore_gpu_addr, in amdgpu_gfx_rlc_fini()
262 (void **)&adev->gfx.rlc.sr_ptr); in amdgpu_gfx_rlc_fini()
266 amdgpu_bo_free_kernel(&adev->gfx.rlc.clear_state_obj, in amdgpu_gfx_rlc_fini()
267 &adev->gfx.rlc.clear_state_gpu_addr, in amdgpu_gfx_rlc_fini()
268 (void **)&adev->gfx.rlc.cs_ptr); in amdgpu_gfx_rlc_fini()
271 amdgpu_bo_free_kernel(&adev->gfx.rlc.cp_table_obj, in amdgpu_gfx_rlc_fini()
272 &adev->gfx.rlc.cp_table_gpu_addr, in amdgpu_gfx_rlc_fini()
273 (void **)&adev->gfx.rlc.cp_table_ptr); in amdgpu_gfx_rlc_fini()