From: Huang Rui <ray.huang@amd.com>
To: "Christian König" <christian.koenig@amd.com>
Cc: Alex Deucher <alexander.deucher@amd.com>,
amd-gfx@lists.freedesktop.org,
Trigger Huang <Trigger.Huang@amd.com>,
Zhu Lingshan <lingshan.zhu@amd.com>
Subject: Re: [PATCH 1/2] drm/amdgpu: remove re-route ih in psp v12
Date: Tue, 29 Apr 2025 22:02:15 +0800 [thread overview]
Message-ID: <aBDb59NyMq1G0iW3@amd.com> (raw)
In-Reply-To: <34919514-46de-4e4d-9eae-e58bb8c7bb94@amd.com>
On Tue, Apr 29, 2025 at 03:50:25PM +0200, Christian König wrote:
> On 4/29/25 12:29, Huang Rui wrote:
> > APU doesn't have second IH ring, so re-routing action here is a no-op.
> > It will take a lot of time to wait timeout from PSP during the
> > initialization. So remove the function in psp v12.
>
>
> Not 100% sure, but I think this code is also used for non APUs.
>
> So we need to keep it around, just don't try to re-route faults to the second IH ring on APUs.
Yes, psp v12 is only for APUs like Renoir and related APU kicker and won't
be applied to dGPU. I think we should make series to modify these series to
update re-routing into dGPUs next step.
Thanks,
Ray
>
> Regards,
> Christian.
>
> >
> > Signed-off-by: Huang Rui <ray.huang@amd.com>
> > ---
> > drivers/gpu/drm/amd/amdgpu/psp_v12_0.c | 34 --------------------------
> > 1 file changed, 34 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/amd/amdgpu/psp_v12_0.c b/drivers/gpu/drm/amd/amdgpu/psp_v12_0.c
> > index 6331941440d9..ed24f61e1ab8 100644
> > --- a/drivers/gpu/drm/amd/amdgpu/psp_v12_0.c
> > +++ b/drivers/gpu/drm/amd/amdgpu/psp_v12_0.c
> > @@ -34,9 +34,6 @@
> > #include "sdma0/sdma0_4_0_offset.h"
> > #include "nbio/nbio_7_4_offset.h"
> >
> > -#include "oss/osssys_4_0_offset.h"
> > -#include "oss/osssys_4_0_sh_mask.h"
> > -
> > MODULE_FIRMWARE("amdgpu/renoir_asd.bin");
> > MODULE_FIRMWARE("amdgpu/renoir_ta.bin");
> > MODULE_FIRMWARE("amdgpu/green_sardine_asd.bin");
> > @@ -142,35 +139,6 @@ static int psp_v12_0_bootloader_load_sos(struct psp_context *psp)
> > return ret;
> > }
> >
> > -static void psp_v12_0_reroute_ih(struct psp_context *psp)
> > -{
> > - struct amdgpu_device *adev = psp->adev;
> > - uint32_t tmp;
> > -
> > - /* Change IH ring for VMC */
> > - tmp = REG_SET_FIELD(0, IH_CLIENT_CFG_DATA, CREDIT_RETURN_ADDR, 0x1244b);
> > - tmp = REG_SET_FIELD(tmp, IH_CLIENT_CFG_DATA, CLIENT_TYPE, 1);
> > - tmp = REG_SET_FIELD(tmp, IH_CLIENT_CFG_DATA, RING_ID, 1);
> > -
> > - WREG32_SOC15(MP0, 0, mmMP0_SMN_C2PMSG_69, 3);
> > - WREG32_SOC15(MP0, 0, mmMP0_SMN_C2PMSG_70, tmp);
> > - WREG32_SOC15(MP0, 0, mmMP0_SMN_C2PMSG_64, GFX_CTRL_CMD_ID_GBR_IH_SET);
> > -
> > - psp_wait_for(psp, SOC15_REG_OFFSET(MP0, 0, mmMP0_SMN_C2PMSG_64),
> > - 0x80000000, 0x8000FFFF, false);
> > -
> > - /* Change IH ring for UMC */
> > - tmp = REG_SET_FIELD(0, IH_CLIENT_CFG_DATA, CREDIT_RETURN_ADDR, 0x1216b);
> > - tmp = REG_SET_FIELD(tmp, IH_CLIENT_CFG_DATA, RING_ID, 1);
> > -
> > - WREG32_SOC15(MP0, 0, mmMP0_SMN_C2PMSG_69, 4);
> > - WREG32_SOC15(MP0, 0, mmMP0_SMN_C2PMSG_70, tmp);
> > - WREG32_SOC15(MP0, 0, mmMP0_SMN_C2PMSG_64, GFX_CTRL_CMD_ID_GBR_IH_SET);
> > -
> > - psp_wait_for(psp, SOC15_REG_OFFSET(MP0, 0, mmMP0_SMN_C2PMSG_64),
> > - 0x80000000, 0x8000FFFF, false);
> > -}
> > -
> > static int psp_v12_0_ring_create(struct psp_context *psp,
> > enum psp_ring_type ring_type)
> > {
> > @@ -179,8 +147,6 @@ static int psp_v12_0_ring_create(struct psp_context *psp,
> > struct psp_ring *ring = &psp->km_ring;
> > struct amdgpu_device *adev = psp->adev;
> >
> > - psp_v12_0_reroute_ih(psp);
> > -
> > if (amdgpu_sriov_vf(psp->adev)) {
> > /* Write low address of the ring to C2PMSG_102 */
> > psp_ring_reg = lower_32_bits(ring->ring_mem_mc_addr);
>
next prev parent reply other threads:[~2025-04-29 14:02 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-04-29 10:29 [PATCH 1/2] drm/amdgpu: remove re-route ih in psp v12 Huang Rui
2025-04-29 10:29 ` [PATCH 2/2] drm/amdgpu: cleanup sriov function for " Huang Rui
2025-04-29 13:23 ` Alex Deucher
2025-04-29 13:50 ` [PATCH 1/2] drm/amdgpu: remove re-route ih in " Christian König
2025-04-29 14:02 ` Huang Rui [this message]
2025-04-29 14:05 ` Alex Deucher
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=aBDb59NyMq1G0iW3@amd.com \
--to=ray.huang@amd.com \
--cc=Trigger.Huang@amd.com \
--cc=alexander.deucher@amd.com \
--cc=amd-gfx@lists.freedesktop.org \
--cc=christian.koenig@amd.com \
--cc=lingshan.zhu@amd.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.