Commit 7701d10a authored by Yifan Zhang's avatar Yifan Zhang Committed by Alex Deucher
Browse files

drm/amdgpu: force read discovery file if set discovery=2



If discovery is set to 2 in module parameters explicitly, the
intention is to use the discovery file in FW rather than the one in
BIOS, usually because the latter is incorrect. This patch to force
read discovery file if set discovery=2.

Signed-off-by: default avatarYifan Zhang <yifan1.zhang@amd.com>
Reviewed-by: default avatarTim Huang <Tim.Huang@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent cb20d650
Loading
Loading
Loading
Loading
+7 −2
Original line number Diff line number Diff line
@@ -305,8 +305,13 @@ static int amdgpu_discovery_init(struct amdgpu_device *adev)
		goto out;
	}

	if (!amdgpu_discovery_verify_binary_signature(adev->mman.discovery_bin)) {
	if (!amdgpu_discovery_verify_binary_signature(adev->mman.discovery_bin) || amdgpu_discovery == 2) {
		/* ignore the discovery binary from vram if discovery=2 in kernel module parameter */
		if (amdgpu_discovery == 2)
			dev_info(adev->dev,"force read ip discovery binary from file");
		else
			dev_warn(adev->dev, "get invalid ip discovery binary signature from vram\n");

		/* retry read ip discovery binary from file */
		r = amdgpu_discovery_read_binary_from_file(adev, adev->mman.discovery_bin);
		if (r) {