[PATCH 2/4] drm/xe/gsc: Fix FW status if the firmware is already loaded

Julia Filipchuk julia.filipchuk at intel.com
Sat Aug 24 00:32:14 UTC 2024


Reviewed-by: Julia Filipchuk <julia.filipchuk at intel.com>

On 8/13/2024 4:11 PM, Daniele Ceraolo Spurio wrote:
> We set the FW status to "TRANSFERRED" after the load completes and to
> "RUNNING"once we're done with proxy init, so do the same if we're trying
> to re-load the FW and it is already loaded.
> 
> Note that there is no difference in driver behavior between the 2
> states, but it's useful to be accurate when we dump the status for
> debug.
> 
> Signed-off-by: Daniele Ceraolo Spurio <daniele.ceraolospurio at intel.com>
> Cc: John Harrison <John.C.Harrison at Intel.com>
> Cc: Alan Previn <alan.previn.teres.alexis at intel.com>
> ---
>  drivers/gpu/drm/xe/xe_gsc.c | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/xe/xe_gsc.c b/drivers/gpu/drm/xe/xe_gsc.c
> index 66963e26c574..85a6a65063c4 100644
> --- a/drivers/gpu/drm/xe/xe_gsc.c
> +++ b/drivers/gpu/drm/xe/xe_gsc.c
> @@ -537,7 +537,10 @@ void xe_gsc_load_start(struct xe_gsc *gsc)
>  
>  	/* GSC FW survives GT reset and D3Hot */
>  	if (gsc_fw_is_loaded(gt)) {
> -		xe_uc_fw_change_status(&gsc->fw, XE_UC_FIRMWARE_TRANSFERRED);
> +		if (xe_gsc_proxy_init_done(gsc))
> +			xe_uc_fw_change_status(&gsc->fw, XE_UC_FIRMWARE_RUNNING);
> +		else
> +			xe_uc_fw_change_status(&gsc->fw, XE_UC_FIRMWARE_TRANSFERRED);
>  		return;
>  	}
>  



More information about the Intel-xe mailing list