> -----Original Message----- > From: Christian König <ckoenig.leichtzumerken@xxxxxxxxx> > Sent: Friday, August 20, 2021 2:00 AM > To: Greathouse, Joseph <Joseph.Greathouse@xxxxxxx>; amd-gfx@xxxxxxxxxxxxxxxxxxxxx > 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@xxxxxxx> > > --- > > 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 = {