mirror of
https://github.com/torvalds/linux.git
synced 2024-11-11 14:42:24 +00:00
drm/amdgpu: fix PSP autoload twice in FLR
Assigning false to block->status.hw overwrites PSP's previous hardware status, which causes the PSP to Resume operation after hardware init. Remove this assignment and let the PSP execute Resume operation when it is told to. v2: Remove the braces. v3: Modify the description. Signed-off-by: Liu ChengZhe <ChengZhe.Liu@amd.com> Reviewed-by: Luben Tuikov <luben.tuikov@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
This commit is contained in:
parent
278a4b5f62
commit
6b6124bb4a
@ -2574,6 +2574,9 @@ static int amdgpu_device_ip_reinit_early_sriov(struct amdgpu_device *adev)
|
|||||||
AMD_IP_BLOCK_TYPE_IH,
|
AMD_IP_BLOCK_TYPE_IH,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
for (i = 0; i < adev->num_ip_blocks; i++)
|
||||||
|
adev->ip_blocks[i].status.hw = false;
|
||||||
|
|
||||||
for (i = 0; i < ARRAY_SIZE(ip_order); i++) {
|
for (i = 0; i < ARRAY_SIZE(ip_order); i++) {
|
||||||
int j;
|
int j;
|
||||||
struct amdgpu_ip_block *block;
|
struct amdgpu_ip_block *block;
|
||||||
@ -2581,7 +2584,6 @@ static int amdgpu_device_ip_reinit_early_sriov(struct amdgpu_device *adev)
|
|||||||
for (j = 0; j < adev->num_ip_blocks; j++) {
|
for (j = 0; j < adev->num_ip_blocks; j++) {
|
||||||
block = &adev->ip_blocks[j];
|
block = &adev->ip_blocks[j];
|
||||||
|
|
||||||
block->status.hw = false;
|
|
||||||
if (block->version->type != ip_order[i] ||
|
if (block->version->type != ip_order[i] ||
|
||||||
!block->status.valid)
|
!block->status.valid)
|
||||||
continue;
|
continue;
|
||||||
|
Loading…
Reference in New Issue
Block a user