> -----Original Message----- > From: Zeng, Oak > Sent: Wednesday, March 01, 2017 5:29 PM > To: Deucher, Alexander; 'ozeng'; amd-gfx at lists.freedesktop.org > Subject: RE: [PATCH] drm/amdgpu: Added more hqd debug messages > > Hi Alex, > > COMPUTE_PGM* registers are per pipe per queue - each queue of each > pipe has a copy of those registers. > > kgd_hqd_dump is called per pipe per queue. In kgd_hqd_dump, > SRBM_GFX_CNTL register is set up to lock the correct pipe/queue. This is > done through function acquire_queue(kgd, pipe_id, queue_id). If that is the case, then the patch is: Acked-by: Alex Deucher <alexander.deucher at amd.com> > > -----Original Message----- > From: Deucher, Alexander > Sent: Wednesday, March 01, 2017 5:00 PM > To: 'ozeng'; amd-gfx at lists.freedesktop.org > Cc: Zeng, Oak > Subject: RE: [PATCH] drm/amdgpu: Added more hqd debug messages > > > -----Original Message----- > > From: amd-gfx [mailto:amd-gfx-bounces at lists.freedesktop.org] On Behalf > > Of ozeng > > Sent: Wednesday, March 01, 2017 4:28 PM > > To: amd-gfx at lists.freedesktop.org > > Cc: Zeng, Oak > > Subject: [PATCH] drm/amdgpu: Added more hqd debug messages > > > > Dump register COMPUTE_PGM_RSRC1 and COMPUTE_PGM_RSRC2 in > function > > kgd_hqd_dump > > > > Change-Id: I8e007f5bcc095d3283b642791860dd072dd43b1c > > Signed-off-by: Oak Zeng <Oak.Zeng at amd.com> > > --- > > drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c | 2 ++ > > drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c | 2 ++ > > 2 files changed, 4 insertions(+) > > > > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c > > b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c > > index 7732def..d7bcdc3 100644 > > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c > > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c > > @@ -439,6 +439,8 @@ static int kgd_hqd_dump(struct kgd_dev *kgd, > > > > acquire_queue(kgd, pipe_id, queue_id); > > > > + DUMP_REG(mmCOMPUTE_PGM_RSRC1); > > + DUMP_REG(mmCOMPUTE_PGM_RSRC2); > > DUMP_REG(mmCOMPUTE_STATIC_THREAD_MGMT_SE0); > > DUMP_REG(mmCOMPUTE_STATIC_THREAD_MGMT_SE1); > > DUMP_REG(mmCOMPUTE_STATIC_THREAD_MGMT_SE2); > > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c > > b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c > > index 289c188..2aff607 100644 > > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c > > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c > > @@ -433,6 +433,8 @@ static int kgd_hqd_dump(struct kgd_dev *kgd, > > > > acquire_queue(kgd, pipe_id, queue_id); > > > > + DUMP_REG(mmCOMPUTE_PGM_RSRC1); > > + DUMP_REG(mmCOMPUTE_PGM_RSRC2); > > DUMP_REG(mmCOMPUTE_STATIC_THREAD_MGMT_SE0); > > DUMP_REG(mmCOMPUTE_STATIC_THREAD_MGMT_SE1); > > DUMP_REG(mmCOMPUTE_STATIC_THREAD_MGMT_SE2); > > Aren't COMPUTE_PGM* registers multi-state for pipelining? In which case, > reading them back via MMIO is largely useless. > > Alex > > > -- > > 2.7.4 > > > > _______________________________________________ > > amd-gfx mailing list > > amd-gfx at lists.freedesktop.org > > https://lists.freedesktop.org/mailman/listinfo/amd-gfx