[PATCH] drm/amdgpu: force read discovery file if set discovery=2
Felix Kuehling
felix.kuehling at amd.com
Thu Oct 27 15:01:51 UTC 2022
Am 2022-10-25 um 23:13 schrieb Yifan Zhang:
> 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: Yifan Zhang <yifan1.zhang at amd.com>
> ---
> drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c | 9 +++++++--
> 1 file changed, 7 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c
> index 3993e6134914..5ea9afaaf4f1 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c
> @@ -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)) {
> - dev_warn(adev->dev, "get invalid ip discovery binary signature from vram\n");
> + if (!amdgpu_discovery_verify_binary_signature(adev->mman.discovery_bin) || amdgpu_discovery == 2) {
I'd change the order of the conditions. There is no need to check the
signature of the one from VRAM if we're not going to use it anyway:
if (amdgpu_discorvery == 2 ||
!amdgpu_discovery_verify_binary_signature(adev->mman.discovery_bin)) {
...
> + /* 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");
Missing space after the ,
Regards,
Felix
> + 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) {
More information about the amd-gfx
mailing list