From: pding <Pixel.Ding@xxxxxxx> The post checking on scratch registers isn't reliable for virtual function. Signed-off-by: pding <Pixel.Ding at amd.com> --- drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c index 683965b..ab8f0d6 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c @@ -669,7 +669,7 @@ void amdgpu_gart_location(struct amdgpu_device *adev, struct amdgpu_mc *mc) * or post is needed if hw reset is performed. * Returns true if need or false if not. */ -bool amdgpu_need_post(struct amdgpu_device *adev) +static bool amdgpu_check_post(struct amdgpu_device *adev) { uint32_t reg; @@ -692,7 +692,7 @@ bool amdgpu_need_post(struct amdgpu_device *adev) } -static bool amdgpu_vpost_needed(struct amdgpu_device *adev) +bool amdgpu_need_post(struct amdgpu_device *adev) { if (amdgpu_sriov_vf(adev)) return false; @@ -716,7 +716,7 @@ static bool amdgpu_vpost_needed(struct amdgpu_device *adev) return true; } } - return amdgpu_need_post(adev); + return amdgpu_check_post(adev); } /** @@ -2208,7 +2208,7 @@ int amdgpu_device_init(struct amdgpu_device *adev, amdgpu_device_detect_sriov_bios(adev); /* Post card if necessary */ - if (amdgpu_vpost_needed(adev)) { + if (amdgpu_need_post(adev)) { if (!adev->bios) { dev_err(adev->dev, "no vBIOS found\n"); amdgpu_vf_error_put(AMDGIM_ERROR_VF_NO_VBIOS, 0, 0); -- 2.9.5