[PATCH 2/2] drm/amdkfd: Enable SDMA queue reset on gfx v12.1
After suspend/resume sdma_gang is supported on MES 12.1, SDMA queue reset is supported too. Signed-off-by: Amber Lin Reviewed-by: Michael Chen --- drivers/gpu/drm/amd/amdkfd/kfd_topology.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_topology.c b/drivers/gpu/drm/amd/amdkfd/kfd_topology.c index 397e916e11b6..f37c2d3c8416 100644 --- a/drivers/gpu/drm/amd/amdkfd/kfd_topology.c +++ b/drivers/gpu/drm/amd/amdkfd/kfd_topology.c @@ -514,7 +514,8 @@ static ssize_t node_show(struct kobject *kobj, struct attribute *attr, dev->node_props.capability |= HSA_CAP_AQL_QUEUE_DOUBLE_MAP; - if (KFD_GC_VERSION(dev->gpu) < IP_VERSION(10, 0, 0) && + if ((KFD_GC_VERSION(dev->gpu) < IP_VERSION(10, 0, 0) || + KFD_GC_VERSION(dev->gpu) == IP_VERSION(12, 1, 0)) && (dev->gpu->adev->sdma.supported_reset & AMDGPU_RESET_TYPE_PER_QUEUE)) dev->node_props.capability2 |= HSA_CAP2_PER_SDMA_QUEUE_RESET_SUPPORTED; -- 2.43.0
Re: [PATCH 2/2] drm/amdkfd: Enable SDMA queue reset on gfx v12.1
On 3/23/26 15:25, Alex Deucher wrote: On Mon, Mar 23, 2026 at 3:04 PM Amber Lin wrote: After suspend/resume sdma_gang is supported on MES 12.1, SDMA queue reset is supported too. Signed-off-by: Amber Lin --- drivers/gpu/drm/amd/amdkfd/kfd_topology.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_topology.c b/drivers/gpu/drm/amd/amdkfd/kfd_topology.c index 4c52819aef9e..42d52c1f5109 100644 --- a/drivers/gpu/drm/amd/amdkfd/kfd_topology.c +++ b/drivers/gpu/drm/amd/amdkfd/kfd_topology.c @@ -514,7 +514,8 @@ static ssize_t node_show(struct kobject *kobj, struct attribute *attr, dev->node_props.capability |= HSA_CAP_AQL_QUEUE_DOUBLE_MAP; - if (KFD_GC_VERSION(dev->gpu) < IP_VERSION(10, 0, 0) && + if ((KFD_GC_VERSION(dev->gpu) < IP_VERSION(10, 0, 0) || + KFD_GC_VERSION(dev->gpu) == IP_VERSION(12, 1, 0)) && I thought this already worked on other MES-enabled chips. Alex My understanding is user mode compute(and sdma) queue/pipe reset only works on gfx 9 HWS. gfx 12.1 is the first MES-enabled chip on user mode compute side while they are already supported on gfx or kernel mode compute side. My next task is to extend this support to gfx 12 and other existing MES chips. (dev->gpu->adev->sdma.supported_reset & AMDGPU_RESET_TYPE_PER_QUEUE)) dev->node_props.capability2 |= HSA_CAP2_PER_SDMA_QUEUE_RESET_SUPPORTED; -- 2.43.0
Re: [PATCH 2/2] drm/amdkfd: Enable SDMA queue reset on gfx v12.1
On Mon, Mar 23, 2026 at 3:04 PM Amber Lin wrote: > > After suspend/resume sdma_gang is supported on MES 12.1, SDMA queue reset > is supported too. > > Signed-off-by: Amber Lin > --- > drivers/gpu/drm/amd/amdkfd/kfd_topology.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_topology.c > b/drivers/gpu/drm/amd/amdkfd/kfd_topology.c > index 4c52819aef9e..42d52c1f5109 100644 > --- a/drivers/gpu/drm/amd/amdkfd/kfd_topology.c > +++ b/drivers/gpu/drm/amd/amdkfd/kfd_topology.c > @@ -514,7 +514,8 @@ static ssize_t node_show(struct kobject *kobj, struct > attribute *attr, > dev->node_props.capability |= > HSA_CAP_AQL_QUEUE_DOUBLE_MAP; > > - if (KFD_GC_VERSION(dev->gpu) < IP_VERSION(10, 0, 0) && > + if ((KFD_GC_VERSION(dev->gpu) < IP_VERSION(10, 0, 0) || > + KFD_GC_VERSION(dev->gpu) == IP_VERSION(12, 1, 0)) && I thought this already worked on other MES-enabled chips. Alex > (dev->gpu->adev->sdma.supported_reset & > AMDGPU_RESET_TYPE_PER_QUEUE)) > dev->node_props.capability2 |= > HSA_CAP2_PER_SDMA_QUEUE_RESET_SUPPORTED; > > -- > 2.43.0 >
[PATCH 2/2] drm/amdkfd: Enable SDMA queue reset on gfx v12.1
After suspend/resume sdma_gang is supported on MES 12.1, SDMA queue reset is supported too. Signed-off-by: Amber Lin --- drivers/gpu/drm/amd/amdkfd/kfd_topology.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_topology.c b/drivers/gpu/drm/amd/amdkfd/kfd_topology.c index 4c52819aef9e..42d52c1f5109 100644 --- a/drivers/gpu/drm/amd/amdkfd/kfd_topology.c +++ b/drivers/gpu/drm/amd/amdkfd/kfd_topology.c @@ -514,7 +514,8 @@ static ssize_t node_show(struct kobject *kobj, struct attribute *attr, dev->node_props.capability |= HSA_CAP_AQL_QUEUE_DOUBLE_MAP; - if (KFD_GC_VERSION(dev->gpu) < IP_VERSION(10, 0, 0) && + if ((KFD_GC_VERSION(dev->gpu) < IP_VERSION(10, 0, 0) || + KFD_GC_VERSION(dev->gpu) == IP_VERSION(12, 1, 0)) && (dev->gpu->adev->sdma.supported_reset & AMDGPU_RESET_TYPE_PER_QUEUE)) dev->node_props.capability2 |= HSA_CAP2_PER_SDMA_QUEUE_RESET_SUPPORTED; -- 2.43.0
