Introduce common nbio helpers to build s2a doorbell entry values from
per-generation field layouts and program them through either mmio or
global SMN addresses.

Convert the nbio v4_3, v6_3_1, v6_3_2, v7_9, v7_11_4, v7_11_5 implementations

This removes duplicated register-field construction and access logic from
the individual IP implementations. Future NBIO generations using the same
s2a programming model can provide their field layout and client-to-port
mapping while reusing the common validation and programming paths.

Hawking Zhang (13):
  drm/amdgpu: Add common NBIO doorbell entry helpers
  drm/amdgpu: Add nbio v6_3_2 doorbell layout
  drm/amdgpu: Use common doorbell helpers in nbio v6_3_2
  drm/amdgpu: Add nbio v4_3 doorbell layout
  drm/amdgpu: Use common doorbell helpers in nbio v4_3
  drm/amdgpu: Support doorbell range programming through smn
  drm/amdgpu: Use common doorbell helpers in nbio v7_9
  drm/amdgpu: Use common doorbell helpers in nbio v7_11_5
  drm/amdgpu: Add nbif v4_10_0 ip headers
  drm/amdgpu: Add nbio v7_11_4 support
  drm/amdgpu: Drop nbio v7_11_x support from nbif v6_3_1
  drm/amdgpu: Use common doorbell helpers in nbio v7_11_4
  drm/amdgpu: Use common doorbell helpers in nbif v6_3_1

 drivers/gpu/drm/amd/amdgpu/Makefile           |   3 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c |   6 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.c      | 150 +++++
 drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.h      |  88 +++
 drivers/gpu/drm/amd/amdgpu/nbif_v6_3_1.c      | 384 ++++++------
 drivers/gpu/drm/amd/amdgpu/nbio_v4_3.c        | 265 +++++---
 drivers/gpu/drm/amd/amdgpu/nbio_v6_3_2.c      | 324 +++++-----
 drivers/gpu/drm/amd/amdgpu/nbio_v7_11_4.c     | 452 ++++++++++++++
 drivers/gpu/drm/amd/amdgpu/nbio_v7_11_4.h     |  32 +
 drivers/gpu/drm/amd/amdgpu/nbio_v7_11_5.c     | 256 +++++---
 drivers/gpu/drm/amd/amdgpu/nbio_v7_9.c        | 377 ++++++------
 .../asic_reg/nbif/nbif_4_10_0_offset.h        | 103 ++++
 .../asic_reg/nbif/nbif_4_10_0_sh_mask.h       | 573 ++++++++++++++++++
 13 files changed, 2307 insertions(+), 706 deletions(-)
 create mode 100644 drivers/gpu/drm/amd/amdgpu/nbio_v7_11_4.c
 create mode 100644 drivers/gpu/drm/amd/amdgpu/nbio_v7_11_4.h
 create mode 100644 
drivers/gpu/drm/amd/include/asic_reg/nbif/nbif_4_10_0_offset.h
 create mode 100644 
drivers/gpu/drm/amd/include/asic_reg/nbif/nbif_4_10_0_sh_mask.h

-- 
2.17.1

Reply via email to