• Ben Goz's avatar
    drm/amdkfd: Add initial VI support for KQ · 6898f0a5
    Ben Goz authored
    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
kfd_kernel_queue_vi.c 1.92 KB