This is the first round of changes preparing for upstreaming KFD changes made internally in the last 2 years at AMD. A big part of it is coding style and messaging cleanup. I have tried to avoid making gratuitous formatting changes. All coding style changes should have a justification based on the Linux style guide. The last few patches (15-19) enable running pieces of the current ROCm user mode stack (with minor Thunk fixes for backwards compatibility) on this soon-to-be upstream kernel on CZ. At this time I can run some KFDTest unit tests, which are currently not open source. I'm trying to find other more substantial tests using a real compute API as a baseline for testing further KFD upstreaming patches. This patch series is freshly rebased on amd-staging-4.12. Felix Kuehling (11): drm/amdkfd: Fix typo in dbgdev_wave_reset_wavefronts drm/amdkfd: Remove bogus divide-by-sizeof(uint32_t) drm/amdkfd: Fix allocated_queues bitmap initialization drm/amdkfd: Remove BUG_ONs for NULL pointer arguments drm/amdkfd: Fix doorbell initialization and finalization drm/amdkfd: Allocate gtt_sa_bitmap in long units drm/amdkfd: Handle remaining BUG_ONs more gracefully drm/amdkfd: Update PM4 packet headers drm/amdgpu: Remove hard-coded assumptions about compute pipes drm/amdgpu: Disable GFX PG on CZ drm/amd: Update MEC HQD loading code for KFD Jay Cornwall (1): drm/amdkfd: Clamp EOP queue size correctly on Gfx8 Kent Russell (5): drm/amdkfd: Clean up KFD style errors and warnings drm/amdkfd: Consolidate and clean up log commands drm/amdkfd: Change x==NULL/false references to !x drm/amdkfd: Fix goto usage drm/amdkfd: Remove usage of alloc(sizeof(struct... Yair Shachar (1): drm/amdkfd: Fix double Mutex lock order Yong Zhao (1): drm/amdkfd: Add more error printing to help bringup drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c | 4 +- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.h | 16 + drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c | 156 +++++++--- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c | 185 ++++++++++-- drivers/gpu/drm/amd/amdgpu/vi.c | 3 +- drivers/gpu/drm/amd/amdkfd/kfd_chardev.c | 107 +++---- drivers/gpu/drm/amd/amdkfd/kfd_dbgdev.c | 102 +++---- drivers/gpu/drm/amd/amdkfd/kfd_dbgmgr.c | 21 +- drivers/gpu/drm/amd/amdkfd/kfd_dbgmgr.h | 27 +- drivers/gpu/drm/amd/amdkfd/kfd_device.c | 122 ++++---- .../gpu/drm/amd/amdkfd/kfd_device_queue_manager.c | 313 ++++++++----------- .../drm/amd/amdkfd/kfd_device_queue_manager_cik.c | 6 +- .../drm/amd/amdkfd/kfd_device_queue_manager_vi.c | 6 +- drivers/gpu/drm/amd/amdkfd/kfd_doorbell.c | 40 +-- drivers/gpu/drm/amd/amdkfd/kfd_events.c | 33 +-- drivers/gpu/drm/amd/amdkfd/kfd_flat_memory.c | 2 +- drivers/gpu/drm/amd/amdkfd/kfd_interrupt.c | 2 +- drivers/gpu/drm/amd/amdkfd/kfd_kernel_queue.c | 63 ++-- drivers/gpu/drm/amd/amdkfd/kfd_module.c | 10 +- drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager.h | 3 +- drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_cik.c | 62 ++-- drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager_vi.c | 46 +-- drivers/gpu/drm/amd/amdkfd/kfd_packet_manager.c | 301 +++++++------------ drivers/gpu/drm/amd/amdkfd/kfd_pasid.c | 7 +- drivers/gpu/drm/amd/amdkfd/kfd_pm4_headers.h | 330 +++------------------ drivers/gpu/drm/amd/amdkfd/kfd_pm4_headers_vi.h | 140 ++++++++- drivers/gpu/drm/amd/amdkfd/kfd_priv.h | 31 +- drivers/gpu/drm/amd/amdkfd/kfd_process.c | 25 +- .../gpu/drm/amd/amdkfd/kfd_process_queue_manager.c | 71 ++--- drivers/gpu/drm/amd/amdkfd/kfd_queue.c | 12 +- drivers/gpu/drm/amd/amdkfd/kfd_topology.c | 46 +-- drivers/gpu/drm/amd/include/kgd_kfd_interface.h | 11 +- drivers/gpu/drm/radeon/radeon_kfd.c | 12 +- 33 files changed, 1054 insertions(+), 1261 deletions(-) -- 2.7.4