[PATCH 3/4] drm/amdgpu: Add fw load in gfx_v8 and sdma_v3.

Quan, Evan Evan.Quan at amd.com
Sun Sep 30 04:18:59 UTC 2018


Will the pp_funcs->load_firmware be called twice?

Regards,
Evan
> -----Original Message-----
> From: amd-gfx <amd-gfx-bounces at lists.freedesktop.org> On Behalf Of Rex
> Zhu
> Sent: 2018年9月30日 0:19
> To: amd-gfx at lists.freedesktop.org
> Cc: Zhu, Rex <Rex.Zhu at amd.com>
> Subject: [PATCH 3/4] drm/amdgpu: Add fw load in gfx_v8 and sdma_v3.
> 
> gfx and sdma can be initialized before smu.
> 
> Signed-off-by: Rex Zhu <Rex.Zhu at amd.com>
> ---
>  drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c  | 11 +++++++++++
> drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c |  8 ++++++++
>  2 files changed, 19 insertions(+)
> 
> diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
> b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
> index 6b1954e..77e05c1 100644
> --- a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
> +++ b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
> @@ -4180,9 +4180,20 @@ static void gfx_v8_0_rlc_start(struct
> amdgpu_device *adev)
> 
>  static int gfx_v8_0_rlc_resume(struct amdgpu_device *adev)  {
> +	int r;
> +
>  	gfx_v8_0_rlc_stop(adev);
>  	gfx_v8_0_rlc_reset(adev);
>  	gfx_v8_0_init_pg(adev);
> +
> +	if (adev->powerplay.pp_funcs->load_firmware) {
> +		r = adev->powerplay.pp_funcs->load_firmware(adev-
> >powerplay.pp_handle);
> +		if (r) {
> +			pr_err("firmware loading failed\n");
> +			return r;
> +		}
> +	}
> +
>  	gfx_v8_0_rlc_start(adev);
> 
>  	return 0;
> diff --git a/drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c
> b/drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c
> index 6fb3eda..0bdde7f 100644
> --- a/drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c
> +++ b/drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c
> @@ -788,6 +788,14 @@ static int sdma_v3_0_start(struct amdgpu_device
> *adev)  {
>  	int r;
> 
> +	if (adev->powerplay.pp_funcs->load_firmware) {
> +		r = adev->powerplay.pp_funcs->load_firmware(adev-
> >powerplay.pp_handle);
> +		if (r) {
> +			pr_err("firmware loading failed\n");
> +			return r;
> +		}
> +	}
> +
>  	/* disable sdma engine before programing it */
>  	sdma_v3_0_ctx_switch_enable(adev, false);
>  	sdma_v3_0_enable(adev, false);
> --
> 1.9.1
> 
> _______________________________________________
> amd-gfx mailing list
> amd-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx


More information about the amd-gfx mailing list