ras_controller_interrupt and SDP err_event_athub_interrupt are two dedicated interrupt for VG20 RAS controller ras_controller interrupt will be triggered when there is NBIF error. Driver can leverage this interrupt to query and log necessary error count and other information. err_event_athub interrupt will be triggered when sdp err_event received from ATHUB. This is an very important ras interrupt for all hw block (except BIF and SDMA) when uncorrectable error happens and hw probably freeze. Driver can leverage this interrupt to query and log necessary error count before reset GPU. BIF ring was designed and dedicated for both interrupts. However, it can't be enabled due to known HW bug. Driver has to poll BIF_DOORBELL_INT_CNTL register to check whether the interrupt is triggered or not. Hawking Zhang (8): drm/amdgpu: add new amdgpu nbio header file drm/amdgpu: switch to new amdgpu_nbio structure drm/amdgpu/nbio: add functions to query ras specific interrupt status drm/amdgpu: add nbif v7_4 irq source header for vega20 drm/amdgpu: update nbio v7_4 ip header files drm/amdgpu: add ras_controller and err_event_athub interrupt support drm/amdgpu: enable/disable ras_controller_irq and err_event_athub_irq drm/amdgpu: poll ras_controller_irq and err_event_athub_irq status drivers/gpu/drm/amd/amdgpu/amdgpu.h | 63 +------- drivers/gpu/drm/amd/amdgpu/amdgpu_irq.c | 12 ++ drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.h | 93 ++++++++++++ drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c | 14 ++ drivers/gpu/drm/amd/amdgpu/df_v3_6.c | 16 +-- drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c | 14 +- drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c | 6 +- drivers/gpu/drm/amd/amdgpu/gmc_v10_0.c | 6 +- drivers/gpu/drm/amd/amdgpu/gmc_v9_0.c | 20 ++- drivers/gpu/drm/amd/amdgpu/navi10_ih.c | 4 +- drivers/gpu/drm/amd/amdgpu/nbio_v2_3.c | 1 - drivers/gpu/drm/amd/amdgpu/nbio_v2_3.h | 1 + drivers/gpu/drm/amd/amdgpu/nbio_v6_1.c | 3 +- drivers/gpu/drm/amd/amdgpu/nbio_v6_1.h | 1 + drivers/gpu/drm/amd/amdgpu/nbio_v7_0.c | 1 - drivers/gpu/drm/amd/amdgpu/nbio_v7_0.h | 1 + drivers/gpu/drm/amd/amdgpu/nbio_v7_4.c | 160 ++++++++++++++++++++- drivers/gpu/drm/amd/amdgpu/nbio_v7_4.h | 1 + drivers/gpu/drm/amd/amdgpu/nv.c | 34 ++--- drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c | 6 +- drivers/gpu/drm/amd/amdgpu/sdma_v5_0.c | 8 +- drivers/gpu/drm/amd/amdgpu/soc15.c | 71 ++++----- drivers/gpu/drm/amd/amdgpu/vcn_v2_0.c | 2 +- drivers/gpu/drm/amd/amdgpu/vcn_v2_5.c | 2 +- drivers/gpu/drm/amd/amdgpu/vega10_ih.c | 2 +- .../amd/include/asic_reg/nbio/nbio_7_4_offset.h | 4 +- .../amd/include/asic_reg/nbio/nbio_7_4_sh_mask.h | 6 +- .../amd/include/ivsrcid/nbio/irqsrcs_nbif_7_4.h | 42 ++++++ drivers/gpu/drm/amd/powerplay/amdgpu_smu.c | 2 +- .../gpu/drm/amd/powerplay/smumgr/smu10_smumgr.c | 2 +- .../gpu/drm/amd/powerplay/smumgr/vega10_smumgr.c | 2 +- .../gpu/drm/amd/powerplay/smumgr/vega12_smumgr.c | 2 +- .../gpu/drm/amd/powerplay/smumgr/vega20_smumgr.c | 4 +- 33 files changed, 447 insertions(+), 159 deletions(-) create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.h create mode 100644 drivers/gpu/drm/amd/include/ivsrcid/nbio/irqsrcs_nbif_7_4.h -- 2.7.4 _______________________________________________ amd-gfx mailing list amd-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/amd-gfx