<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" style="display:none;"><!-- P {margin-top:0;margin-bottom:0;} --></style>
</head>
<body dir="ltr">
<div id="divtagdefaultwrapper" style="font-size:12pt;color:#000000;font-family:Calibri,Helvetica,sans-serif;" dir="ltr">
<p style="margin-top:0;margin-bottom:0">This bug may also be related:</p>
<p style="margin-top:0;margin-bottom:0"><a href="https://bugs.freedesktop.org/show_bug.cgi?id=109206" class="OWAAutoLink" id="LPlnk457827" previewremoved="true">https://bugs.freedesktop.org/show_bug.cgi?id=109206</a></p>
<p style="margin-top:0;margin-bottom:0"><br>
</p>
<p style="margin-top:0;margin-bottom:0">Alex<br>
</p>
</div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>From:</b> Koenig, Christian<br>
<b>Sent:</b> Thursday, January 3, 2019 10:57:50 AM<br>
<b>To:</b> Yu, Xiangliang; Xu, Feifei; amd-gfx@lists.freedesktop.org; Deucher, Alexander<br>
<b>Subject:</b> Re: [PATCH 2/2] drm/amdgpu/psp: Fix can't detect psp INVOKE command failed</font>
<div> </div>
</div>
<div class="BodyFragment"><font size="2"><span style="font-size:11pt;">
<div class="PlainText">> For Vega10, could you explain why it block older version fw?<br>
I'm not very familiar with the PSP, so I don't know what exactly is <br>
going wrong here.<br>
<br>
Symptoms are that we get the following in dmesg:<br>
> Jan 03 15:55:17 abel kernel: [drm] PSP loading VCE firmware<br>
> Jan 03 15:55:17 abel kernel: [drm] reserve 0x400000 from 0xf400c00000 <br>
> for PSP TMR SIZE<br>
> Jan 03 15:55:17 abel kernel: [drm:psp_cmd_submit_buf [amdgpu]] *ERROR* <br>
> psp command failed and response status is (1)<br>
> Jan 03 15:55:17 abel kernel: [drm:psp_hw_init [amdgpu]] *ERROR* PSP <br>
> firmware loading failed<br>
> Jan 03 15:55:17 abel kernel: [drm:amdgpu_device_fw_loading [amdgpu]] <br>
> *ERROR* hw_init of IP block <psp> failed -22<br>
> Jan 03 15:55:17 abel kernel: amdgpu 0000:43:00.0: <br>
> amdgpu_device_ip_init failed<br>
> Jan 03 15:55:17 abel kernel: amdgpu 0000:43:00.0: Fatal error during <br>
> GPU init<br>
<br>
I think the code was purposely ignoring some return status because the <br>
command wasn't available on older fw generations.<br>
<br>
Now that we bail out on every non zero return code that fails when you <br>
try to use the older PSP firmware on Vega10.<br>
<br>
Anyway breaking older fw versions is not something we can do, so we need <br>
to either fix or revert that ASAP or end users will start to complain.<br>
<br>
Any idea how to investigate further?<br>
<br>
Christian.<br>
<br>
Am 03.01.19 um 16:21 schrieb Yu, Xiangliang:<br>
> XGMI command will not load ucode, so it can't find the command failed if check ucode at first.<br>
> For code logic, should check response status to see if command complete successfully at first.<br>
> For Vega10, could you explain why it block older version fw?<br>
><br>
><br>
> -----Original Message-----<br>
> From: Christian König <ckoenig.leichtzumerken@gmail.com><br>
> Sent: Thursday, January 03, 2019 11:00 PM<br>
> To: Xu, Feifei <Feifei.Xu@amd.com>; Yu, Xiangliang <Xiangliang.Yu@amd.com>; amd-gfx@lists.freedesktop.org; Deucher, Alexander <Alexander.Deucher@amd.com><br>
> Subject: Re: [PATCH 2/2] drm/amdgpu/psp: Fix can't detect psp INVOKE command failed<br>
><br>
> Hi guys,<br>
><br>
> this patch broke loading older versions of PSP firmware on Vega10.<br>
><br>
> What exactly is the background here? E.g. why do we need it? And can we revert it ASAP?<br>
><br>
> Thanks,<br>
> Christian.<br>
><br>
> Am 18.12.18 um 03:45 schrieb Xu, Feifei:<br>
>> Reviewed-by: Feifei Xu <Feifei.Xu@amd.com><br>
>><br>
>> -----Original Message-----<br>
>> From: amd-gfx <amd-gfx-bounces@lists.freedesktop.org> On Behalf Of<br>
>> Xiangliang Yu<br>
>> Sent: Thursday, December 13, 2018 3:42 PM<br>
>> To: amd-gfx@lists.freedesktop.org<br>
>> Cc: Yu, Xiangliang <Xiangliang.Yu@amd.com><br>
>> Subject: [PATCH 2/2] drm/amdgpu/psp: Fix can't detect psp INVOKE<br>
>> command failed<br>
>><br>
>> There isn't ucode when executing INVOKE command, so current code can't check the failure of INVOKE command.<br>
>><br>
>> Remove the ucode check.<br>
>><br>
>> Signed-off-by: Xiangliang Yu <Xiangliang.Yu@amd.com><br>
>> ---<br>
>>    drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 11 +++++++----<br>
>>    1 file changed, 7 insertions(+), 4 deletions(-)<br>
>><br>
>> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c<br>
>> b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c<br>
>> index 2f126ea7..7f5ce37 100644<br>
>> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c<br>
>> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c<br>
>> @@ -140,10 +140,13 @@ psp_cmd_submit_buf(struct psp_context *psp,<br>
>>       while (*((unsigned int *)psp->fence_buf) != index)<br>
>>               msleep(1);<br>
>>    <br>
>> -    /* the status field must be 0 after FW is loaded */<br>
>> -    if (ucode && psp->cmd_buf_mem->resp.status) {<br>
>> -            DRM_ERROR("failed loading with status (%d) and ucode id (%d)\n",<br>
>> -                      psp->cmd_buf_mem->resp.status, ucode->ucode_id);<br>
>> +    /* the status field must be 0 after psp command completion */<br>
>> +    if (psp->cmd_buf_mem->resp.status) {<br>
>> +            if (ucode)<br>
>> +                    DRM_ERROR("failed to load ucode id (%d) ",<br>
>> +                              ucode->ucode_id);<br>
>> +            DRM_ERROR("psp command failed and response status is (%d)\n",<br>
>> +                      psp->cmd_buf_mem->resp.status);<br>
>>               return -EINVAL;<br>
>>       }<br>
>>    <br>
>> --<br>
>> 2.7.4<br>
>><br>
>> _______________________________________________<br>
>> amd-gfx mailing list<br>
>> amd-gfx@lists.freedesktop.org<br>
>> <a href="https://lists.freedesktop.org/mailman/listinfo/amd-gfx">https://lists.freedesktop.org/mailman/listinfo/amd-gfx</a><br>
>> _______________________________________________<br>
>> amd-gfx mailing list<br>
>> amd-gfx@lists.freedesktop.org<br>
>> <a href="https://lists.freedesktop.org/mailman/listinfo/amd-gfx">https://lists.freedesktop.org/mailman/listinfo/amd-gfx</a><br>
<br>
</div>
</span></font></div>
</body>
</html>