Skip to content
  • Ben Goz's avatar
    drm/amdkfd: Add initial VI support for KQ · 6898f0a5
    Ben Goz authored and Oded Gabbay's avatar Oded Gabbay committed
    
    
    This patch starts to add support for the VI APU in the KQ (kernel queue)
    module.
    
    Because most (more than 90%) of the KQ code is shared among AMD's APUs, we
    chose a design that performs most/all the code in the shared KQ file
    (kfd_kernel_queue.c). If there is H/W specific code to be executed,
    than it is written in an asic-specific extension function for that H/W.
    
    That asic-specific extension function is called from the shared function at the
    appropriate time. This requires that for every asic-specific extension function
    that is implemented in a specific ASIC, there will be an equivalent
    implementation in ALL ASICs, even if those implementations are just stubs.
    
    That way we achieve:
    
    - Maintainability: by having one copy of most of the code, we only need to
      fix bugs at one locations
    
    - Readability: very clear what is the shared code and what is done per ASIC
    
    - Extensibility: very easy to add new H/W specific files/functions
    
    Signed-off-by: default avatarBen Goz <ben.goz@amd.com>
    Signed-off-by: default avatarOded Gabbay <oded.gabbay@amd.com>
    Reviewed-by: default avatarAlex Deucher <alexander.deucher@amd.com>
    6898f0a5