mirror of
https://github.com/torvalds/linux.git
synced 2026-05-25 07:33:19 +02:00
drm/amdgpu: reset psp ring wptr during ring_create
[Why] psp ring wptr is not initialized properly in ring_create, which would lead to psp failure after several gpu reset. [How] Set ring_wptr to zero in psp_ring_create. Signed-off-by: YuBiao Wang <YuBiao.Wang@amd.com> Reviewed-by: Horace Chen <horace.chen@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
076f55a45e
commit
29b4ac0ed9
|
|
@ -461,6 +461,7 @@ static int psp_v11_0_ring_create(struct psp_context *psp,
|
|||
struct amdgpu_device *adev = psp->adev;
|
||||
|
||||
if (amdgpu_sriov_vf(adev)) {
|
||||
ring->ring_wptr = 0;
|
||||
ret = psp_v11_0_ring_stop(psp, ring_type);
|
||||
if (ret) {
|
||||
DRM_ERROR("psp_v11_0_ring_stop_sriov failed!\n");
|
||||
|
|
|
|||
|
|
@ -227,6 +227,7 @@ static int psp_v3_1_ring_create(struct psp_context *psp,
|
|||
psp_v3_1_reroute_ih(psp);
|
||||
|
||||
if (amdgpu_sriov_vf(adev)) {
|
||||
ring->ring_wptr = 0;
|
||||
ret = psp_v3_1_ring_stop(psp, ring_type);
|
||||
if (ret) {
|
||||
DRM_ERROR("psp_v3_1_ring_stop_sriov failed!\n");
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user