On 21/07/14 21:22, Daniel Vetter wrote:
> On Mon, Jul 21, 2014 at 7:28 PM, Oded Gabbay wrote:
>>> I'm not sure whether we can do the same trick with the hw scheduler. But
>>> then unpinning hw contexts will drain the pipeline anyway, so I guess we
>>> can just stop
On 21/07/14 21:14, Jerome Glisse wrote:
> On Mon, Jul 21, 2014 at 08:42:58PM +0300, Oded Gabbay wrote:
>> On 21/07/14 18:54, Jerome Glisse wrote:
>>> On Mon, Jul 21, 2014 at 05:12:06PM +0300, Oded Gabbay wrote:
>>>> On 21/07/14 16:39, Christian K?nig wrote:
>>&
On 21/07/14 18:54, Jerome Glisse wrote:
> On Mon, Jul 21, 2014 at 05:12:06PM +0300, Oded Gabbay wrote:
>> On 21/07/14 16:39, Christian K?nig wrote:
>>> Am 21.07.2014 14:36, schrieb Oded Gabbay:
>>>> On 20/07/14 20:46, Jerome Glisse wrote:
>>>>> On Thu,
On 21/07/14 20:05, Daniel Vetter wrote:
> On Mon, Jul 21, 2014 at 11:58:52AM -0400, Jerome Glisse wrote:
>> On Mon, Jul 21, 2014 at 05:25:11PM +0200, Daniel Vetter wrote:
>>> On Mon, Jul 21, 2014 at 03:39:09PM +0200, Christian K?nig wrote:
>>>> Am 21.07.2014 14:36, sc
On 21/07/14 16:39, Christian K?nig wrote:
> Am 21.07.2014 14:36, schrieb Oded Gabbay:
>> On 20/07/14 20:46, Jerome Glisse wrote:
>>> On Thu, Jul 17, 2014 at 04:57:25PM +0300, Oded Gabbay wrote:
>>>> Forgot to cc mailing list on cover letter. Sorry.
>>>&
On 20/07/14 20:46, Jerome Glisse wrote:
> On Thu, Jul 17, 2014 at 04:57:25PM +0300, Oded Gabbay wrote:
>> Forgot to cc mailing list on cover letter. Sorry.
>>
>> As a continuation to the existing discussion, here is a v2 patch series
>> restructured with a cleaner histo
ule
amdkfd: Add device queue manager module
amdkfd: Implement the create/destroy/update queue IOCTLs
Evgeny Pinchuk (3):
amdkfd: Add topology module to amdkfd
amdkfd: Implement the Get Clock Counters IOCTL
amdkfd: Implement the PMC Acquire/Release IOCTLs
Oded Gabbay (10):
mm: A
From: Evgeny Pinchuk <evgeny.pinc...@amd.com>
Signed-off-by: Ben Goz
Signed-off-by: Oded Gabbay
---
drivers/gpu/drm/radeon/amdkfd/kfd_chardev.c | 46 +++--
drivers/gpu/drm/radeon/amdkfd/kfd_device.c | 2 ++
drivers/gpu/drm/radeon/amdkfd/kfd_priv.h
From: Alexey Skidanov <alexey.skida...@amd.com>
Signed-off-by: Alexey Skidanov
Signed-off-by: Oded Gabbay
---
drivers/gpu/drm/radeon/amdkfd/kfd_chardev.c | 40 -
drivers/gpu/drm/radeon/amdkfd/kfd_priv.h| 5
2 files changed, 44 insertions(+), 1 de
From: Evgeny Pinchuk <evgeny.pinc...@amd.com>
Signed-off-by: Evgeny Pinchuk
Signed-off-by: Oded Gabbay
---
drivers/gpu/drm/radeon/amdkfd/kfd_chardev.c | 29 -
1 file changed, 28 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/radeon/amdkfd/kfd_cha
From: Andrew Lewycky <andrew.lewy...@amd.com>
Signed-off-by: Andrew Lewycky
Signed-off-by: Oded Gabbay
---
drivers/gpu/drm/radeon/amdkfd/kfd_chardev.c | 51 -
1 file changed, 50 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/radeon/amdkfd/kfd_cha
From: Ben Goz <ben@amd.com>
Signed-off-by: Ben Goz
Signed-off-by: Oded Gabbay
---
drivers/gpu/drm/radeon/amdkfd/kfd_chardev.c | 133 +++-
drivers/gpu/drm/radeon/amdkfd/kfd_priv.h| 8 ++
2 files changed, 138 insertions(+), 3 deletions(-)
diff --git a/d
t it's possible for us to lose
interrupts because we have no back-pressure to the hardware.
Signed-off-by: Andrew Lewycky
Signed-off-by: Oded Gabbay
---
drivers/gpu/drm/radeon/amdkfd/Makefile| 3 +-
drivers/gpu/drm/radeon/amdkfd/kfd_device.c| 16 ++-
drivers/gpu/drm/radeon/
t also supports suspend/resume operation.
Signed-off-by: Ben Goz
Signed-off-by: Oded Gabbay
---
drivers/gpu/drm/radeon/amdkfd/Makefile | 2 +-
drivers/gpu/drm/radeon/amdkfd/kfd_device.c | 26 +-
.../drm/radeon/amdkfd/kfd_device_queue_manager.c | 985 +
d
en Goz
Signed-off-by: Oded Gabbay
---
drivers/gpu/drm/radeon/amdkfd/Makefile | 3 +-
drivers/gpu/drm/radeon/amdkfd/kfd_priv.h | 17 +
drivers/gpu/drm/radeon/amdkfd/kfd_process.c| 13 +
.../drm/radeon/amdkfd/kfd_process_queue_manager.c | 343 +
4
From: Ben Goz <ben@amd.com>
The packet manager module builds PM4 packets for the sole use of the CP
scheduler. Those packets are used by the HIQ to submit runlists to the CP.
Signed-off-by: Ben Goz
Signed-off-by: Oded Gabbay
---
drivers/gpu/drm/radeon/amdkfd/Makefile
out CP Scheduling
Signed-off-by: Ben Goz
Signed-off-by: Oded Gabbay
---
drivers/gpu/drm/radeon/amdkfd/kfd_module.c | 4
drivers/gpu/drm/radeon/amdkfd/kfd_priv.h | 9 +
2 files changed, 13 insertions(+)
diff --git a/drivers/gpu/drm/radeon/amdkfd/kfd_module.c
b/drivers/gpu/drm/
From: Ben Goz <ben@amd.com>
The kernel queue module enables the amdkfd to establish kernel queues, not
exposed to user space.
The kernel queues are used for HIQ (HSA Interface Queue) and DIQ (Debug
Interface Queue) operations
Signed-off-by: Ben Goz
Signed-off-by: Oded
From: Ben Goz <ben@amd.com>
The mqd_manager module handles MQD data structures. MQD stands for Memory Queue
Descriptor, which is used by the H/W to keep the usermode queue state in memory.
Signed-off-by: Ben Goz
Signed-off-by: Oded Gabbay
---
drivers/gpu/drm/radeon/amdkfd/Ma
From: Ben Goz <ben@amd.com>
The queue module enables allocating and initializing queues uniformly.
Signed-off-by: Ben Goz
Signed-off-by: Oded Gabbay
---
drivers/gpu/drm/radeon/amdkfd/Makefile| 2 +-
drivers/gpu/drm/radeon/amdkfd/kfd_priv.h | 48 +
drivers/g
at this stage of the patchset.
Signed-off-by: Oded Gabbay
---
drivers/gpu/drm/radeon/amdkfd/kfd_device.c | 80 -
drivers/gpu/drm/radeon/amdkfd/kfd_priv.h| 1 +
drivers/gpu/drm/radeon/amdkfd/kfd_process.c | 12 +
3 files changed, 92 insertions(+), 1 deletion(-)
diff
review
The kfd_process object is created when a process opens /dev/kfd and is closed
when the mm_struct of that process is teared-down.
Signed-off-by: Andrew Lewycky
Signed-off-by: Oded Gabbay
---
drivers/gpu/drm/radeon/amdkfd/Makefile | 4 +-
drivers/gpu/drm/radeon/amdkfd/kfd_aperture.c
From: Evgeny Pinchuk <evgeny.pinc...@amd.com>
This patch adds the topology module to the driver. The topology is exposed to
userspace through the sysfs.
The calls to add and remove a device to/from topology are done by the radeon
driver.
Signed-off-by: Evgeny Pinchuk
Signed-off-by: Oded
This patch adds the amdkfd skeleton driver. The driver does nothing except
define a /dev/kfd device.
It returns -ENODEV on all amdkfd IOCTLs.
Signed-off-by: Oded Gabbay
---
drivers/gpu/drm/radeon/Kconfig | 2 +
drivers/gpu/drm/radeon/Makefile | 2 +
drivers/gpu/drm
.
Signed-off-by: Oded Gabbay
---
drivers/gpu/drm/radeon/Makefile | 1 +
drivers/gpu/drm/radeon/cik.c| 9 +
drivers/gpu/drm/radeon/cik_reg.h| 65 +
drivers/gpu/drm/radeon/cikd.h | 51 +++-
drivers/gpu/drm/radeon/radeon.h | 3 +
drivers/gpu/drm/radeon
Implementing a lock for selecting and accessing shader engines and arrays.
This lock will make sure that radeon and amdkfd are not colliding when
accessing shader engines and arrays with GRBM_GFX_INDEX register.
Signed-off-by: Oded Gabbay
---
drivers/gpu/drm/radeon/cik.c | 26
radeon and amdkfd share the doorbell aperture.
radeon sets it up, takes the doorbells required for its own rings
and reports the setup to amdkfd.
radeon reserved doorbells are at the start of the doorbell aperture.
Signed-off-by: Oded Gabbay
---
drivers/gpu/drm/radeon/radeon.h| 4
amdkfd should set interrupts for pipes 1-7.
Signed-off-by: Oded Gabbay
---
drivers/gpu/drm/radeon/cik.c | 71 +---
1 file changed, 1 insertion(+), 70 deletions(-)
diff --git a/drivers/gpu/drm/radeon/cik.c b/drivers/gpu/drm/radeon/cik.c
index 0b53633
To support HSA on KV, we need to limit the number of vmids and pipes
that are available for radeon's use with KV.
This patch reserves VMIDs 8-15 for amdkfd (so radeon can only use VMIDs
0-7) and also makes radeon thinks that KV has only a single MEC with a single
pipe in it
Signed-off-by: Oded
On 17/07/14 15:29, Christian K?nig wrote:
> Am 17.07.2014 13:57, schrieb Oded Gabbay:
>> On 11/07/14 19:36, Jerome Glisse wrote:
>>> On Fri, Jul 11, 2014 at 12:50:08AM +0300, Oded Gabbay wrote:
>>>> The KFD driver should be loaded when the radeon driver is loaded and
On 11/07/14 21:25, Jerome Glisse wrote:
> On Fri, Jul 11, 2014 at 12:50:11AM +0300, Oded Gabbay wrote:
>> This patch adds the code base of the scheduler, which handles queue
>> creation, deletion and scheduling on the CP of the GPU.
>>
>> Signed-off-by: Oded Gabbay
On 11/07/14 19:36, Jerome Glisse wrote:
> On Fri, Jul 11, 2014 at 12:50:08AM +0300, Oded Gabbay wrote:
>> The KFD driver should be loaded when the radeon driver is loaded and
>> should be finalized when the radeon driver is removed.
>>
>> This patch adds a function
On 11/07/14 19:24, Jerome Glisse wrote:
> On Thu, Jul 10, 2014 at 03:38:33PM -0700, Joe Perches wrote:
>> On Fri, 2014-07-11 at 00:50 +0300, Oded Gabbay wrote:
>>> This patch adds the interface between the radeon driver and the kfd
>>> driver. The interface
On 11/07/14 20:28, Joe Perches wrote:
> On Fri, 2014-07-11 at 13:04 -0400, Jerome Glisse wrote:
>> On Fri, Jul 11, 2014 at 12:50:09AM +0300, Oded Gabbay wrote:
> []
>>> +static long kfd_ioctl(struct file *, unsigned int, unsigned long);
>>
>> Nitpick, avoid unsi
On 11/07/14 22:22, Jerome Glisse wrote:
> On Fri, Jul 11, 2014 at 06:56:12PM +, Bridgman, John wrote:
>>> From: Jerome Glisse [mailto:j.glisse at gmail.com]
>>> Sent: Friday, July 11, 2014 2:52 PM
>>> To: Bridgman, John
>>> Cc: Oded Gabbay; David Airlie
On 14/07/14 10:58, Christian K?nig wrote:
> Am 14.07.2014 09:38, schrieb Michel D?nzer:
>> On 11.07.2014 06:50, Oded Gabbay wrote:
>>> @@ -5876,8 +5871,13 @@ int cik_ib_parse(struct radeon_device *rdev, struct
>>> radeon_ib *ib)
>>>*/
>>>
This version is intended for upstreaming to the Linux kernel 3.17
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/kfd_module.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/hsa/radeon/kfd_module.c
b/drivers/gpu/hsa/radeon/kfd_module.c
index c706236
From: Ben Goz <ben@amd.com>
Signed-off-by: Ben Goz
Signed-off-by: Oded Gabbay
---
drivers/gpu/drm/radeon/radeon_kfd.c | 44 -
include/linux/radeon_kfd.h | 10 -
2 files changed, 54 deletions(-)
diff --git a/drivers/gpu/drm/
pages, the danger of sharing registers
between the drivers is minimal.
Having said that, we are planning to move the doorbells as well
to radeon.
Signed-off-by: Ben Goz
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/Makefile | 2 +-
drivers/gpu/hsa/radeon/kfd_de
From: Ben Goz <ben@amd.com>
This patch extends the kfd2kgd interface by adding functions
that perform direct register access.
These functions can be called from kfd and will allow to
eliminate all direct register accesses from within the kfd.
Signed-off-by: Ben Goz
Signed-off-by
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/kfd_module.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/hsa/radeon/kfd_module.c
b/drivers/gpu/hsa/radeon/kfd_module.c
index 33cee3c..c706236 100644
--- a/drivers/gpu/hsa/radeon/kfd_module.c
+++ b
This patch removes the checksum verification done when
parsing a CRAT table. The verification was both erronous and
redundant, as it is done by another piece of kernel code.
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/kfd_topology.c | 29 ++---
1 file changed
From: Alexey Skidanov <alexey.skida...@amd.com>
Signed-off-by: Alexey Skidanov
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/kfd_topology.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/gpu/hsa/radeon/kfd_topology.c
b/drivers/gpu/hsa/radeon/kfd_topology.c
index 0
check before the call
to destroy the current runlist. If there is oversubscription,
the function prints an error to dmesg and simply exits.
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/kfd_packet_manager.c| 3 ---
drivers/gpu/hsa/radeon/kfd_process_queue_manager.c | 9 +
2
From: Ben Goz <ben@amd.com>
* re-execute runlist on kernel queues destruction.
* delete kernel queues from pqm's queues list on pqm unint
Signed-off-by: Ben Goz
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/kfd_device_queue_manager.c | 4
drivers/gpu/hsa/
From: Ben Goz <ben@amd.com>
Signed-off-by: Ben Goz
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/kfd_chardev.c | 8 ++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/hsa/radeon/kfd_chardev.c
b/drivers/gpu/hsa/radeon/kfd_chardev.c
index 0
From: Yair Shachar <yair.shac...@amd.com>
Waiting on fence returns status
Signed-off-by: Yair Shachar
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/kfd_device_queue_manager.c | 6 --
drivers/gpu/hsa/radeon/kfd_priv.h | 2 ++
2 files changed, 6 insertions
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/kfd_device.c | 3 +++
drivers/gpu/hsa/radeon/kfd_device_queue_manager.c | 2 +-
drivers/gpu/hsa/radeon/kfd_mqd_manager.c | 1 +
drivers/gpu/hsa/radeon/kfd_packet_manager.c | 3 ++-
drivers/gpu/hsa/radeon
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/Makefile | 5 +-
drivers/gpu/hsa/radeon/kfd_sched_cik_static.c | 987 --
2 files changed, 2 insertions(+), 990 deletions(-)
delete mode 100644 drivers/gpu/hsa/radeon/kfd_sched_cik_static.c
diff --git
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/kfd_chardev.c | 11 ++-
1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/drivers/gpu/hsa/radeon/kfd_chardev.c
b/drivers/gpu/hsa/radeon/kfd_chardev.c
index 51f790f..09c9a61 100644
--- a/drivers/gpu/hsa/radeon
This patch fixes a bug in the code flow that caused an override of the sh_mem
registers.
The bug resulted in sh_mem registers being not initialized properly and
overwrite over sh_mem registers for vmid 0 (which is a vmid of non-HSA
processes).
Reviewed-by: Ben Goz
Signed-off-by: Oded Gabbay
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/kfd_module.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/hsa/radeon/kfd_module.c
b/drivers/gpu/hsa/radeon/kfd_module.c
index fbfcce6..33cee3c 100644
--- a/drivers/gpu/hsa/radeon/kfd_module.c
+++ b/drivers
From: Ben Goz <ben@amd.com>
This module is unnecessary as we allocating read/write pointers
from userspace thunk layer
Signed-off-by: Ben Goz
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/Makefile| 2 +-
drivers/gpu/hsa/radeon/kfd_cha
From: Ben Goz <ben@amd.com>
Signed-off-by: Ben Goz
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/kfd_device_queue_manager.c | 2 +-
drivers/gpu/hsa/radeon/kfd_device_queue_manager.h | 2 +-
drivers/gpu/hsa/radeon/kfd_packet_manager.c | 2 +-
3 files changed, 3 inse
From: Ben Goz <ben@amd.com>
This commit is a bug fix for 32b hsa processes support
Signed-off-by: Ben Goz
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/cik_regs.h | 1 +
drivers/gpu/hsa/radeon/kfd_device_queue_manager.c | 8 +---
2 files changed, 6 inse
From: Ben Goz <ben@amd.com>
This commit adding fault handling for process queue manager update queue
Signed-off-by: Ben Goz
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/kfd_process_queue_manager.c | 15 ---
1 file changed, 12 insertions(+), 3 deletions(-)
diff
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/kfd_module.c | 19 ---
1 file changed, 12 insertions(+), 7 deletions(-)
diff --git a/drivers/gpu/hsa/radeon/kfd_module.c
b/drivers/gpu/hsa/radeon/kfd_module.c
index 85069c5..fbfcce6 100644
--- a/drivers/gpu/hsa/radeon
This patch fixes a bug in the timeout calculation done in sync_with_hw
functions. The original code assumed that jiffies is incremented in ms.
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/kfd_kernel_queue.c | 14 ++
1 file changed, 10 insertions(+), 4 deletions(-)
diff
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/kfd_topology.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/hsa/radeon/kfd_topology.c
b/drivers/gpu/hsa/radeon/kfd_topology.c
index 213ae7b..059b7db 100644
--- a/drivers/gpu/hsa/radeon/kfd_topology.c
+++ b
This patch rearranges the structures defined in kfd_ioctl.h so that
all the uint64_t variables are located at the start of each structure and
then all the uint32_t variables are located.
Signed-off-by: Oded Gabbay
---
include/uapi/linux/kfd_ioctl.h | 51
From: Evgeny Pinchuk <evgeny.pinc...@amd.com>
Introducing IOCTL implementation for controlling exclusive access to performace
counters.
The exclusive access is per GPU device.
Signed-off-by: Evgeny Pinchuk
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/kfd_chardev.
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/kfd_device_queue_manager.h | 6 +++---
drivers/gpu/hsa/radeon/kfd_hw_pointer_store.h | 6 +++---
drivers/gpu/hsa/radeon/kfd_kernel_queue.h | 6 +++---
drivers/gpu/hsa/radeon/kfd_module.c | 8
drivers/gpu
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/kfd_chardev.c | 6 +++---
drivers/gpu/hsa/radeon/kfd_kernel_queue.c | 4 ++--
drivers/gpu/hsa/radeon/kfd_queue.c| 2 +-
3 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/drivers/gpu/hsa/radeon/kfd_chardev.c
b
From: Ben Goz <ben@amd.com>
This patch adding support for LDS aperture for user processes.
Signed-off-by: Ben Goz
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/kfd_device_queue_manager.c | 41 +--
1 file changed, 39 insertions(+), 2 deletions(-)
diff
From: Ben Goz <ben@amd.com>
This patch adds a new IOCTL that enables the user to perform update to an HSA
queue.
Signed-off-by: Ben Goz
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/cik_mqds.h | 1 -
drivers/gpu/hsa/radeon/kfd_chardev.c
From: Ben Goz <ben@amd.com>
This patch makes the switch between the old KFD queue scheduler to the new KFD
queue scheduler. The new scheduler supports H/W CP scheduling, over-subscription
of queues and pre-emption of queues.
Signed-off-by: Ben Goz
Signed-off-by: Oded Gabbay
---
d
t also supports suspend/resume operation.
Signed-off-by: Ben Goz
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/Makefile |2 +-
drivers/gpu/hsa/radeon/kfd_device_queue_manager.c | 1006 +
drivers/gpu/hsa/radeon/kfd_priv.h |2 +
3
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/Makefile| 3 +-
drivers/gpu/hsa/radeon/kfd_priv.h | 29 ++
drivers/gpu/hsa/radeon/kfd_process_queue_manager.c | 370 +
3 files changed, 401 insertions(+), 1 deletion(-)
create mode
From: Ben Goz <ben@amd.com>
The packet manager module builds PM4 packets for the sole use of the CP
scheduler. Those packets are used by the HIQ to submit runlists to the CP.
Signed-off-by: Ben Goz
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/Makefile
out CP Scheduling
Signed-off-by: Ben Goz
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/kfd_module.c | 5 +++
drivers/gpu/hsa/radeon/kfd_priv.h | 65 +
2 files changed, 70 insertions(+)
diff --git a/drivers/gpu/hsa/radeon/kfd_module.c
b/drivers/g
From: Ben Goz <ben@amd.com>
The kernel queue module enables the KFD to establish kernel queues, not exposed
to user space. The kernel queues are used for HIQ (HSA Interface Queue) and DIQ
(Debug Interface Queue) operations.
Signed-off-by: Ben Goz
Signed-off-by: Oded Gabbay
---
drive
From: Ben Goz <ben@amd.com>
The mqd_manager module handles MQD data structures. MQD stands for Memory Queue
Descriptor, which is used by the H/W to keep the HSA queue state in memory.
Signed-off-by: Ben Goz
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/Makefile
From: Ben Goz <ben@amd.com>
This patch adds infrastructure to allocate doorbells which are not exposed to
user space.
Signed-off-by: Ben Goz
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/kfd_doorbell.c | 76 ++-
drivers/gpu/hsa/radeon/kfd_
From: Ben Goz <ben@amd.com>
The queue module enables allocating and initializing queues uniformly.
The hw_pointer_store module handles allocation and assignment of read and write
pointers to user HSA queues.
Signed-off-by: Ben Goz
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/
From: Michael Varga <michael.va...@amd.com>
Added debug print statements so critical errors during init may be debugged
more easily.
Signed-off-by: Michael Varga
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/kfd_device.c | 18 +++---
1 file changed, 15 insertions
From: Alexey Skidanov <alexey.skida...@amd.com>
Added apertures initialization and appropriate ioctl
Signed-off-by: Alexey Skidanov
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/Makefile | 2 +-
drivers/gpu/hsa/radeon/kfd_aperture.c
From: Alexey Skidanov <alexey.skida...@amd.com>
Signed-off-by: Alexey Skidanov
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/kfd_sched_cik_static.c | 6 --
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/hsa/radeon/kfd_sched_cik_static.c
b/drivers/g
From: Alexey Skidanov <alexey.skida...@amd.com>
Initializing compat_ioctl properly. All ioctls args are packed.
Signed-off-by: Alexey Skidanov
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/kfd_chardev.c | 7 +--
drivers/gpu/hsa/radeon/kfd_priv.h| 4
include/uapi
From: Evgeny Pinchuk <evgeny.pinc...@amd.com>
Changing the source of the max engine clock value.
Signed-off-by: Evgeny Pinchuk
Signed-off-by: Oded Gabbay
---
drivers/gpu/drm/radeon/radeon_kfd.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/
From: Evgeny Pinchuk <evgeny.pinc...@amd.com>
Adding support for CPU and GPU max clock speeds in node properties.
Signed-off-by: Evgeny Pinchuk
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/kfd_topology.c | 6 --
1 file changed, 4 insertions(+), 2 deletions(-)
diff
From: Evgeny Pinchuk <evgeny.pinc...@amd.com>
Adding new function to the interface used by kfd.
The new function retrieves the max engine clock speed.
Signed-off-by: Evgeny Pinchuk
Signed-off-by: Oded Gabbay
---
drivers/gpu/drm/radeon/radeon_kfd.c | 11 +++
include/linux/radeon
This patch creates a workaround for a bug in amd_iommu driver, where the driver
doesn't save all necessary information when going to suspend.
The workaround removes a device from the IOMMU device list on suspend and
register a resumed device in the IOMMU device list.
Signed-off-by: Oded Gabbay
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/kfd_sched_cik_static.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/hsa/radeon/kfd_sched_cik_static.c
b/drivers/gpu/hsa/radeon/kfd_sched_cik_static.c
index 5bfde5c..7573d25 100644
--- a/drivers/gpu/hsa
From: Evgeny Pinchuk <evgeny.pinc...@amd.com>
Fixed wrong reporting of timestamps in kfd_ioctl_get_clock_counters.
Signed-off-by: Evgeny Pinchuk
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/kfd_chardev.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/d
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/kfd_chardev.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/gpu/hsa/radeon/kfd_chardev.c
b/drivers/gpu/hsa/radeon/kfd_chardev.c
index d6fa980..dba6084 100644
--- a/drivers/gpu/hsa/radeon/kfd_chardev.c
inchuk
Signed-off-by: Oded Gabbay
---
drivers/gpu/drm/radeon/cik.c | 26 ++
drivers/gpu/drm/radeon/radeon.h| 2 ++
drivers/gpu/drm/radeon/radeon_device.c | 1 +
drivers/gpu/drm/radeon/radeon_kfd.c| 23 +++
include/linux/radeon
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/cik_int.h | 20 ++--
1 file changed, 10 insertions(+), 10 deletions(-)
diff --git a/drivers/gpu/hsa/radeon/cik_int.h b/drivers/gpu/hsa/radeon/cik_int.h
index e98551d..350f0c2 100644
--- a/drivers/gpu/hsa/radeon/cik_int.h
From: Evgeny Pinchuk <evgeny.pinc...@amd.com>
Implemented new IOCTL to query the CPU and GPU clock counters.
Signed-off-by: Evgeny Pinchuk
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/kfd_chardev.c | 37
include/uapi/linux/kfd_ioctl.h
From: Evgeny Pinchuk <evgeny.pinc...@amd.com>
Adding API for KFD to be able to query the GPU clock counter.
Signed-off-by: Evgeny Pinchuk
Signed-off-by: Oded Gabbay
---
drivers/gpu/drm/radeon/radeon_kfd.c | 9 +
include/linux/radeon_kfd.h | 1 +
2 files changed, 10 inse
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/kfd_device.c | 28 +++-
1 file changed, 23 insertions(+), 5 deletions(-)
diff --git a/drivers/gpu/hsa/radeon/kfd_device.c
b/drivers/gpu/hsa/radeon/kfd_device.c
index b627e57..a21c095 100644
--- a/drivers/gpu/hsa
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/kfd_sched_cik_static.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/hsa/radeon/kfd_sched_cik_static.c
b/drivers/gpu/hsa/radeon/kfd_sched_cik_static.c
index 3c3e7d6..5bfde5c 100644
--- a/drivers/gpu/hsa
ed-off-by: Oded Gabbay
---
mm/rmap.c | 8 ++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/mm/rmap.c b/mm/rmap.c
index 196cd0c..73d4c3d 100644
--- a/mm/rmap.c
+++ b/mm/rmap.c
@@ -1231,13 +1231,17 @@ static int try_to_unmap_one(struct page *page, struct
vm_area_struct *vma,
From: Andrew Lewycky <andrew.lewy...@amd.com>
This patch adds support in KFD for the hsaKmtSetMemoryPolicy
HSA thunk API call
Signed-off-by: Andrew Lewycky
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/cik_regs.h | 1 +
drivers/gpu/hsa/radeon/kfd_chardev.c
From: Andrew Lewycky <andrew.lewy...@amd.com>
Permanently bind the process to the device.
The binding survives even when all queues are destroyed.
Process exit and device removal terminate the binding.
Signed-off-by: Andrew Lewycky
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/
From: Evgeny Pinchuk <evgeny.pinc...@amd.com>
The assignment of OEMID from the CRAT table is into a 64 variable. The OEMID is
48bit wide in the CRAT.
This fix makes sure that only 48bit are assigned for the OEMID value from the
CRAT table.
Signed-off-by: Evgeny Pinchuk
Signed-off-by
When radeon handles interrupts for cik, propogate this interrupt to kfd.
Signed-off-by: Oded Gabbay
---
drivers/gpu/drm/radeon/cik.c| 4
drivers/gpu/drm/radeon/radeon_kfd.c | 6 ++
2 files changed, 10 insertions(+)
diff --git a/drivers/gpu/drm/radeon/cik.c b/drivers/gpu/drm
HSA radeon driver (kfd) should set interrupts for pipes 1-7.
Signed-off-by: Oded Gabbay
---
drivers/gpu/drm/radeon/cik.c | 71 +---
1 file changed, 1 insertion(+), 70 deletions(-)
diff --git a/drivers/gpu/drm/radeon/cik.c b/drivers/gpu/drm/radeon/cik.c
-by: Oded Gabbay
---
drivers/gpu/drm/radeon/cik.c| 7 +++
drivers/gpu/drm/radeon/radeon_kfd.c | 16
2 files changed, 23 insertions(+)
diff --git a/drivers/gpu/drm/radeon/cik.c b/drivers/gpu/drm/radeon/cik.c
index e0c8052..b1c50f4 100644
--- a/drivers/gpu/drm/radeon
This patch adds two new interfaces to the kgd2kfd structure. Those
interfaces are for doing suspend and resume of a kfd device, when its
matching radeon device does suspend and resume.
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/Makefile | 2 +-
drivers/gpu/hsa/radeon
This patch adds a new callback function to the kgd2kfd interface. The
new callback is for propagating interrupts from radeon driver to the kfd
driver.
Signed-off-by: Oded Gabbay
---
drivers/gpu/hsa/radeon/kfd_module.c | 1 +
include/linux/radeon_kfd.h | 1 +
2 files changed, 2
1001 - 1100 of 1120 matches
Mail list logo