forked from Minki/linux
6898f0a568
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: Ben Goz <ben.goz@amd.com> Signed-off-by: Oded Gabbay <oded.gabbay@amd.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> |
||
---|---|---|
.. | ||
cik_regs.h | ||
Kconfig | ||
kfd_chardev.c | ||
kfd_crat.h | ||
kfd_device_queue_manager_cik.c | ||
kfd_device_queue_manager_vi.c | ||
kfd_device_queue_manager.c | ||
kfd_device_queue_manager.h | ||
kfd_device.c | ||
kfd_doorbell.c | ||
kfd_flat_memory.c | ||
kfd_interrupt.c | ||
kfd_kernel_queue_cik.c | ||
kfd_kernel_queue_vi.c | ||
kfd_kernel_queue.c | ||
kfd_kernel_queue.h | ||
kfd_module.c | ||
kfd_mqd_manager_cik.c | ||
kfd_mqd_manager_vi.c | ||
kfd_mqd_manager.c | ||
kfd_mqd_manager.h | ||
kfd_packet_manager.c | ||
kfd_pasid.c | ||
kfd_pm4_headers.h | ||
kfd_pm4_opcodes.h | ||
kfd_priv.h | ||
kfd_process_queue_manager.c | ||
kfd_process.c | ||
kfd_queue.c | ||
kfd_topology.c | ||
kfd_topology.h | ||
Makefile |