- 22 1月, 2015 2 次提交
-
-
由 Oded Gabbay 提交于
Signed-off-by: NOded Gabbay <oded.gabbay@amd.com> Reviewed-by: NJammy Zhou <Jammy.Zhou@amd.com>
-
由 Oded Gabbay 提交于
Signed-off-by: NOded Gabbay <oded.gabbay@amd.com> Reviewed-by: NJammy Zhou <Jammy.Zhou@amd.com>
-
- 15 1月, 2015 1 次提交
-
-
由 Oded Gabbay 提交于
In order not to occupy the current core and thus prevent the core from servicing IOMMU PPR requests, this patch replaces the call in DQM to cpu_relax() with a call to schedule(). Signed-off-by: NOded Gabbay <oded.gabbay@amd.com> Acked-by: NAlex Deucher <alexander.deucher@amd.com>
-
- 13 1月, 2015 1 次提交
-
-
由 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>
-
- 10 1月, 2015 3 次提交
-
-
由 Oded Gabbay 提交于
This patch change the calls throughout the amdkfd driver from the old kfd-->kgd interface to the new kfd gtt sa inside amdkfd v2: change the new call in sdma code that appeared because of the sdma feature Signed-off-by: NOded Gabbay <oded.gabbay@amd.com> Reviewed-by: NAlexey Skidanov <Alexey.skidanov@amd.com> Reviewed-by: NAlex Deucher <alexander.deucher@amd.com>
-
由 Ben Goz 提交于
This patch adds support for SDMA user-mode queues to the QCM - the Queue management system that manages queues-per-device and queues-per-process. v2: Remove calls to interface function that initializes sdma engines. v3: Use the new names of some of the defines. 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>
-
由 Alexey Skidanov 提交于
This patch splits the current kfd_get_process_device_data() to two functions, one that specifically creates a pdd and another one which just do lookup. This is done to enhance the readability and maintainability of the code. Signed-off-by: NAlexey Skidanov <Alexey.Skidanov@amd.com> Signed-off-by: NOded Gabbay <oded.gabbay@amd.com>
-
- 08 1月, 2015 1 次提交
-
-
由 Oded Gabbay 提交于
Signed-off-by: NOded Gabbay <oded.gabbay@amd.com>
-
- 05 1月, 2015 2 次提交
-
-
由 Ben Goz 提交于
This patch fixes a bug where deallocate_vmid() didn't actually unmap the VMID<-->PASID mapping (in the registers). That can cause undefined behavior. This bug only occurs in non-HWS mode. 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>
-
由 Ben Goz 提交于
This patch fixes a bug in DQM, where the MQD of a newly created compute queue is not loaded to an HQD slot. As a result, the CP never reads packets from this queue. This bug happens only in non-HWS (hardware scheduling) mode. In HWS mode, the CP is responsible of loading MQDs to HQDs slots. 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>
-
- 08 12月, 2014 1 次提交
-
-
由 Oded Gabbay 提交于
This patch fixes a device QCM bug, where the number of queues were not counted correctly for the operation of update queue. The count was incorrect as there was no regard to the previous state of the queue. Signed-off-by: NOded Gabbay <oded.gabbay@amd.com>
-
- 12 1月, 2015 2 次提交
-
-
由 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>
-
由 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>
-
- 25 11月, 2014 1 次提交
-
-
由 Oded Gabbay 提交于
The mqds array members are not freed when dqm is uninitialized. Reviewed-by: NBen Goz <Ben.Goz@amd.com> Signed-off-by: NOded Gabbay <oded.gabbay@amd.com>
-
- 19 11月, 2014 1 次提交
-
-
由 Alexey Skidanov 提交于
Reviewed-by: NAlex Deucher <alexander.deucher@amd.com> Signed-off-by: NAlexey Skidanov <Alexey.Skidanov@amd.com> Signed-off-by: NOded Gabbay <oded.gabbay@amd.com>
-
- 21 11月, 2014 1 次提交
-
-
由 Jay Cornwall 提交于
struct device_process_node was allocated during process registration but not released at process deregistration. Reviewed-by: NAlex Deucher <alexander.deucher@amd.com> Signed-off-by: NJay Cornwall <jay.cornwall@amd.com> Signed-off-by: NOded Gabbay <oded.gabbay@amd.com>
-
- 20 11月, 2014 1 次提交
-
-
由 Oded Gabbay 提交于
Reviewed-by: NAlex Deucher <alexander.deucher@amd.com> Signed-off-by: NOded Gabbay <oded.gabbay@amd.com>
-
- 18 8月, 2014 1 次提交
-
-
由 Ben Goz 提交于
This patch rewrites destroy_queue_nocpsch() as the current logic that is implemented in the function is completely flawed. This function is used only in non-HWS mode. 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>
-
- 04 1月, 2015 1 次提交
-
-
由 Ben Goz 提交于
As the MQD types are common across all AMD GPUs/APUs, let's remove the CIK part from the name. 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>
-
- 03 1月, 2015 1 次提交
-
-
由 Oded Gabbay 提交于
Because amdkfd will need to work both with radeon and amdgpu, don't include header files that are in radeon's folder. Instead, use the common amd include folder and move amdkfd specific defines to amdkfd header files. Signed-off-by: NOded Gabbay <oded.gabbay@amd.com> Reviewed-by: NAlex Deucher <alexander.deucher@amd.com>
-
- 27 10月, 2014 1 次提交
-
-
由 Ben Goz 提交于
This patch removes a call to kfd-->kgd interface function that is doing H/W initialization. That function is moved into radeon to be part of the common H/W initialization sequence. The interface function will be deleted. 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>
-
- 17 7月, 2014 1 次提交
-
-
由 Ben Goz 提交于
The queue scheduler divides into two sections, one section is process bounded and the other section is device bounded. The device bounded section is handled by this module. The DQM module handles queue setup, update and tear-down from the device side. It also supports suspend/resume operation. v3: Changed device_init, added the use of the new gart allocation functions an Added documentation. v4: Fixed a race in DQM queue scheduler where dqm->lock must be held when accessing dqm->queue_count and dqm->processes_count. This fixes runlist IB allocation failures when DQM is under load. Fixed race in DQM queue destruction where queues being destroyed must be removed from qpd->queues_list prior to preemption, or concurrent queue creation activity may reschedule them while their MQD is destroyed. Fixed EOP queue size setting in CP_HPD_EOP_CONTROL, because the size is specified as (log2(size_dwords)-1). The previous calculation assumed the size was specified in bytes, which caused interference between EOP queues when multiple MEC pipelines were active. v5: Move amdkfd from drm/radeon/ to drm/amd/ Change format of mqd structure to match latest KV firmware Add support for AQL queues creation to enable working with open-source HSA runtime Remove unused unmap_queue function Various fixes (Style, typos) Signed-off-by: NBen Goz <ben.goz@amd.com> Signed-off-by: NJay Cornwall <jay.cornwall@amd.com> Signed-off-by: NOded Gabbay <oded.gabbay@amd.com>
-