答复: [PATCH] drm/amdgpu:skip ASIC_INIT when posting card on vg20

Qu, Jim Jim.Qu at amd.com
Mon Dec 10 10:28:18 UTC 2018


Hi Feifei,

When PSP perform ASIC_INIT during the whole boot up period?

In S4,  the asic will be reset, and it need be posted at the beginning of resume. So it is better move the logic into amdgpu_device_need_post() if ASIC_INIT is automatic performed by PSP during S4.

Thanks
JimQu

________________________________________
发件人: Xu, Feifei
发送时间: 2018年12月10日 18:09
收件人: Qu, Jim; Quan, Evan; amd-gfx at lists.freedesktop.org
主题: RE: [PATCH] drm/amdgpu:skip ASIC_INIT when posting card on vg20

In fact, in multigpu cases, the original logical in amdgpu_device_need_post()->amdgpu_atombios_scratch_need_asic_init() return TRUE.
The logical is to: read ATOM_S7_ASIC_INIT_COMPLETE_MASK bit which is notified by BIOS to driver that if post is needed.

After the ASIC_INIT table moved to psp, though post is needed (the ATOM_S7_ASIC_INIT_COMPLETE_MASK is unset), we still need to skip the post in driver.

Regards,
Feifei

-----Original Message-----
From: Qu, Jim <Jim.Qu at amd.com>
Sent: 2018年12月10日 17:42
To: Quan, Evan <Evan.Quan at amd.com>; Xu, Feifei <Feifei.Xu at amd.com>; amd-gfx at lists.freedesktop.org
Subject: 答复: [PATCH] drm/amdgpu:skip ASIC_INIT when posting card on vg20

 I think it is better move it into amdgpu_device_need_post() as a negative condition.

Thanks
JimQu

________________________________________
发件人: amd-gfx <amd-gfx-bounces at lists.freedesktop.org> 代表 Quan, Evan <Evan.Quan at amd.com>
发送时间: 2018年12月10日 14:33:58
收件人: Xu, Feifei; amd-gfx at lists.freedesktop.org
抄送: Xu, Feifei
主题: RE: [PATCH] drm/amdgpu:skip ASIC_INIT when posting card on vg20

Reviewed-by: Evan Quan <evan.quan at amd.com>

> -----Original Message-----
> From: amd-gfx <amd-gfx-bounces at lists.freedesktop.org> On Behalf Of
> Feifei Xu
> Sent: 2018年12月10日 14:17
> To: amd-gfx at lists.freedesktop.org
> Cc: Xu, Feifei <Feifei.Xu at amd.com>; Quan, Evan <Evan.Quan at amd.com>
> Subject: [PATCH] drm/amdgpu:skip ASIC_INIT when posting card on vg20
>
> On vega20, the job of executing the ASIC_INIT table when posting card
> is moved to psp. Skip the atombios's ASIC_INIT on vega20 when posting card.
>
> Change-Id: Id1d3c0a0d19296d5ed804de7edf5b09b8d38c0a5
> Signed-off-by: Feifei Xu <Feifei.Xu at amd.com>
> Tested-by: Candice Li <Candice.Li at amd.com>
> ---
>  drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> index ef36cc595985..a375d2ac112f 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> @@ -2547,7 +2547,7 @@ int amdgpu_device_init(struct amdgpu_device
> *adev,
>       amdgpu_device_detect_sriov_bios(adev);
>
>       /* Post card if necessary */
> -     if (amdgpu_device_need_post(adev)) {
> +     if ((adev->asic_type != CHIP_VEGA20) &&
> amdgpu_device_need_post(adev))
> +{
>               if (!adev->bios) {
>                       dev_err(adev->dev, "no vBIOS found\n");
>                       r = -EINVAL;
> --
> 2.17.1
>
> _______________________________________________
> amd-gfx mailing list
> amd-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/amd-gfx
_______________________________________________
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