Re: [PATCH drm/amdgpu/psp: ignore psp reponse status] drm/amdgpu/psp: ignore psp reponse status
Am 14.01.19 um 09:16 schrieb Aaron Liu: Don't return err if psp reponse status isn't zero Change-Id: I680679983f972b6969f4949f1faafaf17fe996a6 Signed-off-by: Aaron Liu Thanks for taking care of that. Fix is Acked-by: Christian König --- drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 9 + 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c index 53c2d60..48778b3 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c @@ -140,14 +140,15 @@ psp_cmd_submit_buf(struct psp_context *psp, while (*((unsigned int *)psp->fence_buf) != index) msleep(1); - /* the status field must be 0 after psp command completion */ + /* the status field should be 0 after psp command completion +* if not, print WARN msg +*/ if (psp->cmd_buf_mem->resp.status) { if (ucode) - DRM_ERROR("failed to load ucode id (%d) ", + DRM_WARN("failed to load ucode id (%d) ", ucode->ucode_id); - DRM_ERROR("psp command failed and response status is (%d)\n", + DRM_WARN("psp command failed and response status is (%d)\n", psp->cmd_buf_mem->resp.status); - return -EINVAL; } /* get xGMI session id from response buffer */ ___ amd-gfx mailing list amd-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/amd-gfx
RE: [PATCH drm/amdgpu/psp: ignore psp reponse status] drm/amdgpu/psp: ignore psp reponse status
Reviewed-by: Feifei Xu -Original Message- From: amd-gfx On Behalf Of Huang, Ray Sent: Monday, January 14, 2019 4:28 PM To: Liu, Aaron ; amd-gfx@lists.freedesktop.org; Yu, Xiangliang ; Deucher, Alexander ; Zhang, Hawking Cc: Liu, Aaron ; Koenig, Christian Subject: RE: [PATCH drm/amdgpu/psp: ignore psp reponse status] drm/amdgpu/psp: ignore psp reponse status Is some cases, response status is not 0 even there is no problem while the command is submitted. Some version of PSP FW doesn't write 0 to that field. So here we would like to only print a warning instead of an error during psp initialization to avoid breaking hw_init. Reviewed-by: Huang Rui > -Original Message- > From: amd-gfx [mailto:amd-gfx-boun...@lists.freedesktop.org] On Behalf > Of Aaron Liu > Sent: Monday, January 14, 2019 4:17 PM > To: amd-gfx@lists.freedesktop.org > Cc: Liu, Aaron > Subject: [PATCH drm/amdgpu/psp: ignore psp reponse status] > drm/amdgpu/psp: ignore psp reponse status > > Don't return err if psp reponse status isn't zero > > Change-Id: I680679983f972b6969f4949f1faafaf17fe996a6 > Signed-off-by: Aaron Liu > --- > drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 9 + > 1 file changed, 5 insertions(+), 4 deletions(-) > > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c > b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c > index 53c2d60..48778b3 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c > @@ -140,14 +140,15 @@ psp_cmd_submit_buf(struct psp_context *psp, > while (*((unsigned int *)psp->fence_buf) != index) > msleep(1); > > - /* the status field must be 0 after psp command completion */ > + /* the status field should be 0 after psp command completion > + * if not, print WARN msg > + */ > if (psp->cmd_buf_mem->resp.status) { > if (ucode) > - DRM_ERROR("failed to load ucode id (%d) ", > + DRM_WARN("failed to load ucode id (%d) ", > ucode->ucode_id); > - DRM_ERROR("psp command failed and response status is > (%d)\n", > + DRM_WARN("psp command failed and response status is > (%d)\n", > psp->cmd_buf_mem->resp.status); > - return -EINVAL; > } > > /* get xGMI session id from response buffer */ > -- > 2.7.4 > > ___ > amd-gfx mailing list > amd-gfx@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/amd-gfx ___ amd-gfx mailing list amd-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/amd-gfx ___ amd-gfx mailing list amd-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/amd-gfx
RE: [PATCH drm/amdgpu/psp: ignore psp reponse status] drm/amdgpu/psp: ignore psp reponse status
Please add more comments to explain why don't return error. And add my RB with that fix. Reviewed-by: Xiangliang Yu -Original Message- From: amd-gfx On Behalf Of Aaron Liu Sent: Monday, January 14, 2019 4:17 PM To: amd-gfx@lists.freedesktop.org Cc: Liu, Aaron Subject: [PATCH drm/amdgpu/psp: ignore psp reponse status] drm/amdgpu/psp: ignore psp reponse status Don't return err if psp reponse status isn't zero Change-Id: I680679983f972b6969f4949f1faafaf17fe996a6 Signed-off-by: Aaron Liu --- drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 9 + 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c index 53c2d60..48778b3 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c @@ -140,14 +140,15 @@ psp_cmd_submit_buf(struct psp_context *psp, while (*((unsigned int *)psp->fence_buf) != index) msleep(1); - /* the status field must be 0 after psp command completion */ + /* the status field should be 0 after psp command completion +* if not, print WARN msg +*/ if (psp->cmd_buf_mem->resp.status) { if (ucode) - DRM_ERROR("failed to load ucode id (%d) ", + DRM_WARN("failed to load ucode id (%d) ", ucode->ucode_id); - DRM_ERROR("psp command failed and response status is (%d)\n", + DRM_WARN("psp command failed and response status is (%d)\n", psp->cmd_buf_mem->resp.status); - return -EINVAL; } /* get xGMI session id from response buffer */ -- 2.7.4 ___ amd-gfx mailing list amd-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/amd-gfx ___ amd-gfx mailing list amd-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/amd-gfx
RE: [PATCH drm/amdgpu/psp: ignore psp reponse status] drm/amdgpu/psp: ignore psp reponse status
Is some cases, response status is not 0 even there is no problem while the command is submitted. Some version of PSP FW doesn't write 0 to that field. So here we would like to only print a warning instead of an error during psp initialization to avoid breaking hw_init. Reviewed-by: Huang Rui > -Original Message- > From: amd-gfx [mailto:amd-gfx-boun...@lists.freedesktop.org] On Behalf > Of Aaron Liu > Sent: Monday, January 14, 2019 4:17 PM > To: amd-gfx@lists.freedesktop.org > Cc: Liu, Aaron > Subject: [PATCH drm/amdgpu/psp: ignore psp reponse status] > drm/amdgpu/psp: ignore psp reponse status > > Don't return err if psp reponse status isn't zero > > Change-Id: I680679983f972b6969f4949f1faafaf17fe996a6 > Signed-off-by: Aaron Liu > --- > drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 9 + > 1 file changed, 5 insertions(+), 4 deletions(-) > > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c > b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c > index 53c2d60..48778b3 100644 > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c > @@ -140,14 +140,15 @@ psp_cmd_submit_buf(struct psp_context *psp, > while (*((unsigned int *)psp->fence_buf) != index) > msleep(1); > > - /* the status field must be 0 after psp command completion */ > + /* the status field should be 0 after psp command completion > + * if not, print WARN msg > + */ > if (psp->cmd_buf_mem->resp.status) { > if (ucode) > - DRM_ERROR("failed to load ucode id (%d) ", > + DRM_WARN("failed to load ucode id (%d) ", > ucode->ucode_id); > - DRM_ERROR("psp command failed and response status is > (%d)\n", > + DRM_WARN("psp command failed and response status is > (%d)\n", > psp->cmd_buf_mem->resp.status); > - return -EINVAL; > } > > /* get xGMI session id from response buffer */ > -- > 2.7.4 > > ___ > amd-gfx mailing list > amd-gfx@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/amd-gfx ___ amd-gfx mailing list amd-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/amd-gfx
[PATCH drm/amdgpu/psp: ignore psp reponse status] drm/amdgpu/psp: ignore psp reponse status
Don't return err if psp reponse status isn't zero Change-Id: I680679983f972b6969f4949f1faafaf17fe996a6 Signed-off-by: Aaron Liu --- drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c | 9 + 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c index 53c2d60..48778b3 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c @@ -140,14 +140,15 @@ psp_cmd_submit_buf(struct psp_context *psp, while (*((unsigned int *)psp->fence_buf) != index) msleep(1); - /* the status field must be 0 after psp command completion */ + /* the status field should be 0 after psp command completion +* if not, print WARN msg +*/ if (psp->cmd_buf_mem->resp.status) { if (ucode) - DRM_ERROR("failed to load ucode id (%d) ", + DRM_WARN("failed to load ucode id (%d) ", ucode->ucode_id); - DRM_ERROR("psp command failed and response status is (%d)\n", + DRM_WARN("psp command failed and response status is (%d)\n", psp->cmd_buf_mem->resp.status); - return -EINVAL; } /* get xGMI session id from response buffer */ -- 2.7.4 ___ amd-gfx mailing list amd-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/amd-gfx