The current queue/pipe split policy is for amdgpu to take the first pipe of MEC0 and leave the rest for amdkfd to use. This policy is taken as an assumption in a few areas of the implementation. This patch series aims to allow for flexible/tunable queue/pipe split policies between kgd and kfd. It also updates the queue/pipe split policy to one that allows better compute app concurrency for both drivers. In the process some duplicate code and hardcoded constants were removed. Any suggestions or feedback on improvements welcome.