[PATCH 2/3] drm/amdgpu: Use SDMA1 for buffer movement on Aldebaran

Greathouse, Joseph Joseph.Greathouse at amd.com
Fri Aug 20 23:27:23 UTC 2021


> -----Original Message-----
> From: Christian König <ckoenig.leichtzumerken at gmail.com>
> Sent: Friday, August 20, 2021 2:00 AM
> To: Greathouse, Joseph <Joseph.Greathouse at amd.com>; amd-gfx at lists.freedesktop.org
> Subject: Re: [PATCH 2/3] drm/amdgpu: Use SDMA1 for buffer movement on Aldebaran
> 
> Am 20.08.21 um 07:32 schrieb Joseph Greathouse:
> > Aldebaran should not use SDMA0 for buffer funcs such as page migration.
> > Instead, we move over to SDMA1 for these features. Leave SDMA0 in
> > charge for all other existing chips to avoid any possibility of
> > regressions.
> 
> The part why we do this is missing, apart from that looks good to me.
> 
> Christian.

How about this for a replacement description?

Because of sharing an MMHUB port with other engines, the hardware
design team has advised that Aldebaran should not use SDMA0 for
buffer funcs such as page migration. Instead, we move over to
SDMA1 for these features. Leave SDMA0 in charge for all other
existing chips to avoid any possibility of regressions.
 
Thanks,
-Joe

> >
> > Signed-off-by: Joseph Greathouse <Joseph.Greathouse at amd.com>
> > ---
> >   drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c | 8 ++++++--
> >   1 file changed, 6 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c b/drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c
> > index 8931000dcd41..771630d7bb3f 100644
> > --- a/drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c
> > +++ b/drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c
> > @@ -2689,11 +2689,15 @@ static const struct amdgpu_buffer_funcs sdma_v4_0_buffer_funcs = {
> >
> >   static void sdma_v4_0_set_buffer_funcs(struct amdgpu_device *adev)
> >   {
> > +     int engine = 0;
> > +
> > +     if (adev->asic_type == CHIP_ALDEBARAN)
> > +             engine = 1;
> >       adev->mman.buffer_funcs = &sdma_v4_0_buffer_funcs;
> >       if (adev->sdma.has_page_queue)
> > -             adev->mman.buffer_funcs_ring = &adev->sdma.instance[0].page;
> > +             adev->mman.buffer_funcs_ring = &adev->sdma.instance[engine].page;
> >       else
> > -             adev->mman.buffer_funcs_ring = &adev->sdma.instance[0].ring;
> > +             adev->mman.buffer_funcs_ring = &adev->sdma.instance[engine].ring;
> >   }
> >
> >   static const struct amdgpu_vm_pte_funcs sdma_v4_0_vm_pte_funcs = {



More information about the amd-gfx mailing list