• Home
  • Raw
  • Download

Lines Matching refs:psp

53 static int psp_v3_1_ring_stop(struct psp_context *psp,
56 static int psp_v3_1_init_microcode(struct psp_context *psp) in psp_v3_1_init_microcode() argument
58 struct amdgpu_device *adev = psp->adev; in psp_v3_1_init_microcode()
74 err = psp_init_sos_microcode(psp, chip_name); in psp_v3_1_init_microcode()
78 err = psp_init_asd_microcode(psp, chip_name); in psp_v3_1_init_microcode()
85 static int psp_v3_1_bootloader_load_sysdrv(struct psp_context *psp) in psp_v3_1_bootloader_load_sysdrv() argument
89 struct amdgpu_device *adev = psp->adev; in psp_v3_1_bootloader_load_sysdrv()
100 ret = psp_wait_for(psp, SOC15_REG_OFFSET(MP0, 0, mmMP0_SMN_C2PMSG_35), in psp_v3_1_bootloader_load_sysdrv()
106 psp_copy_fw(psp, psp->sys.start_addr, psp->sys.size_bytes); in psp_v3_1_bootloader_load_sysdrv()
110 (uint32_t)(psp->fw_pri_mc_addr >> 20)); in psp_v3_1_bootloader_load_sysdrv()
118 ret = psp_wait_for(psp, SOC15_REG_OFFSET(MP0, 0, mmMP0_SMN_C2PMSG_35), in psp_v3_1_bootloader_load_sysdrv()
124 static int psp_v3_1_bootloader_load_sos(struct psp_context *psp) in psp_v3_1_bootloader_load_sos() argument
128 struct amdgpu_device *adev = psp->adev; in psp_v3_1_bootloader_load_sos()
139 ret = psp_wait_for(psp, SOC15_REG_OFFSET(MP0, 0, mmMP0_SMN_C2PMSG_35), in psp_v3_1_bootloader_load_sos()
145 psp_copy_fw(psp, psp->sos.start_addr, psp->sos.size_bytes); in psp_v3_1_bootloader_load_sos()
149 (uint32_t)(psp->fw_pri_mc_addr >> 20)); in psp_v3_1_bootloader_load_sos()
156 ret = psp_wait_for(psp, SOC15_REG_OFFSET(MP0, 0, mmMP0_SMN_C2PMSG_81), in psp_v3_1_bootloader_load_sos()
162 static int psp_v3_1_ring_init(struct psp_context *psp, in psp_v3_1_ring_init() argument
167 struct amdgpu_device *adev = psp->adev; in psp_v3_1_ring_init()
169 ring = &psp->km_ring; in psp_v3_1_ring_init()
188 static void psp_v3_1_reroute_ih(struct psp_context *psp) in psp_v3_1_reroute_ih() argument
190 struct amdgpu_device *adev = psp->adev; in psp_v3_1_reroute_ih()
203 psp_wait_for(psp, SOC15_REG_OFFSET(MP0, 0, mmMP0_SMN_C2PMSG_64), in psp_v3_1_reroute_ih()
215 psp_wait_for(psp, SOC15_REG_OFFSET(MP0, 0, mmMP0_SMN_C2PMSG_64), in psp_v3_1_reroute_ih()
219 static int psp_v3_1_ring_create(struct psp_context *psp, in psp_v3_1_ring_create() argument
224 struct psp_ring *ring = &psp->km_ring; in psp_v3_1_ring_create()
225 struct amdgpu_device *adev = psp->adev; in psp_v3_1_ring_create()
227 psp_v3_1_reroute_ih(psp); in psp_v3_1_ring_create()
231 ret = psp_v3_1_ring_stop(psp, ring_type); in psp_v3_1_ring_create()
253 ret = psp_wait_for(psp, SOC15_REG_OFFSET(MP0, 0, in psp_v3_1_ring_create()
276 ret = psp_wait_for(psp, SOC15_REG_OFFSET(MP0, 0, in psp_v3_1_ring_create()
284 static int psp_v3_1_ring_stop(struct psp_context *psp, in psp_v3_1_ring_stop() argument
288 struct amdgpu_device *adev = psp->adev; in psp_v3_1_ring_stop()
303 ret = psp_wait_for(psp, SOC15_REG_OFFSET(MP0, 0, mmMP0_SMN_C2PMSG_101), in psp_v3_1_ring_stop()
306 ret = psp_wait_for(psp, SOC15_REG_OFFSET(MP0, 0, mmMP0_SMN_C2PMSG_64), in psp_v3_1_ring_stop()
312 static int psp_v3_1_ring_destroy(struct psp_context *psp, in psp_v3_1_ring_destroy() argument
316 struct psp_ring *ring = &psp->km_ring; in psp_v3_1_ring_destroy()
317 struct amdgpu_device *adev = psp->adev; in psp_v3_1_ring_destroy()
319 ret = psp_v3_1_ring_stop(psp, ring_type); in psp_v3_1_ring_destroy()
330 static bool psp_v3_1_smu_reload_quirk(struct psp_context *psp) in psp_v3_1_smu_reload_quirk() argument
332 struct amdgpu_device *adev = psp->adev; in psp_v3_1_smu_reload_quirk()
339 static int psp_v3_1_mode1_reset(struct psp_context *psp) in psp_v3_1_mode1_reset() argument
343 struct amdgpu_device *adev = psp->adev; in psp_v3_1_mode1_reset()
347 ret = psp_wait_for(psp, offset, 0x80000000, 0x8000FFFF, false); in psp_v3_1_mode1_reset()
361 ret = psp_wait_for(psp, offset, 0x80000000, 0x80000000, false); in psp_v3_1_mode1_reset()
373 static uint32_t psp_v3_1_ring_get_wptr(struct psp_context *psp) in psp_v3_1_ring_get_wptr() argument
376 struct amdgpu_device *adev = psp->adev; in psp_v3_1_ring_get_wptr()
379 data = psp->km_ring.ring_wptr; in psp_v3_1_ring_get_wptr()
385 static void psp_v3_1_ring_set_wptr(struct psp_context *psp, uint32_t value) in psp_v3_1_ring_set_wptr() argument
387 struct amdgpu_device *adev = psp->adev; in psp_v3_1_ring_set_wptr()
394 psp->km_ring.ring_wptr = value; in psp_v3_1_ring_set_wptr()
413 void psp_v3_1_set_psp_funcs(struct psp_context *psp) in psp_v3_1_set_psp_funcs() argument
415 psp->funcs = &psp_v3_1_funcs; in psp_v3_1_set_psp_funcs()