1. 22 1月, 2015 2 次提交
  2. 18 1月, 2015 1 次提交
  3. 15 1月, 2015 3 次提交
  4. 13 1月, 2015 1 次提交
    • B
      drm/amdkfd: Fix for-loop when allocating HQD (non-HWS) · f0ec5b99
      Ben Goz 提交于
      This patch fixes a minor bug in allocate_hqd(), where the loop run from the
      next-to-allocate pipe until the number of pipes.
      
      This is wrong because we need to consider the possibility where
      next-to-allocate pipe is not 0, and thus, the for-loop only checks part of the
      pipes and doesn't wrap-around, as it supposed to do.
      
      Therefore, we add another counting variable to make sure we go over all the
      pipes, regardless of where we start to look at the first iteration of the loop.
      
      This bug only affected non-HWS mode. In HWS mode, the CP fw is responsible for
      allocating the HQD.
      Signed-off-by: NBen Goz <ben.goz@amd.com>
      Signed-off-by: NOded Gabbay <oded.gabbay@amd.com>
      Acked-by: NAlex Deucher <alexander.deucher@amd.com>
      f0ec5b99
  5. 10 1月, 2015 11 次提交
  6. 08 1月, 2015 2 次提交
  7. 07 1月, 2015 3 次提交
  8. 05 1月, 2015 1 次提交
  9. 29 12月, 2014 1 次提交
  10. 05 1月, 2015 1 次提交
  11. 09 12月, 2014 1 次提交
  12. 06 12月, 2014 1 次提交
  13. 05 12月, 2014 1 次提交
  14. 04 12月, 2014 1 次提交
  15. 03 12月, 2014 2 次提交
  16. 02 12月, 2014 1 次提交
  17. 08 12月, 2014 1 次提交
  18. 02 12月, 2014 1 次提交
    • B
      drm/amdkfd: Add initial VI support for KQ · 6898f0a5
      Ben Goz 提交于
      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: NBen Goz <ben.goz@amd.com>
      Signed-off-by: NOded Gabbay <oded.gabbay@amd.com>
      Reviewed-by: NAlex Deucher <alexander.deucher@amd.com>
      6898f0a5
  19. 12 1月, 2015 3 次提交
    • O
      drm/amdkfd: Encapsulate KQ functions in ops structure · 443fbd5f
      Oded Gabbay 提交于
      This patch does some re-org on the kernel_queue structure. It takes out
      all the function pointers from the structure and puts them in a new structure,
      called kernel_queue_ops. Then, it puts an instance of that structure
      inside kernel_queue.
      
      This re-org is done to prepare the KQ module to support more than one AMD APU
      (Kaveri).
      Signed-off-by: NOded Gabbay <oded.gabbay@amd.com>
      Reviewed-by: NAlex Deucher <alexander.deucher@amd.com>
      443fbd5f
    • B
      drm/amdkfd: Add initial VI support for DQM · a22fc854
      Ben Goz 提交于
      This patch starts to add support for the VI APU in the DQM module.
      
      Because most (more than 90%) of the DQM code is shared among AMD's APUs, we
      chose a design that performs most/all the code in the shared DQM file
      (kfd_device_queue_manager.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: NBen Goz <ben.goz@amd.com>
      Signed-off-by: NOded Gabbay <oded.gabbay@amd.com>
      Reviewed-by: NAlex Deucher <alexander.deucher@amd.com>
      a22fc854
    • O
      drm/amdkfd: Encapsulate DQM functions in ops structure · 45c9a5e4
      Oded Gabbay 提交于
      This patch does some re-org on the device_queue_manager structure. It takes out
      all the function pointers from the structure and puts them in a new structure,
      called device_queue_manager_ops. Then, it puts an instance of that structure
      inside device_queue_manager.
      
      This re-org is done to prepare the DQM module to support more than one AMD APU
      (Kaveri).
      Signed-off-by: NOded Gabbay <oded.gabbay@amd.com>
      Reviewed-by: NAlex Deucher <alexander.deucher@amd.com>
      45c9a5e4
  20. 13 1月, 2015 1 次提交
  21. 26 11月, 2014 1 次提交