<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/gpu/drm/amd/include/kgd_kfd_interface.h, branch v4.9</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
</subtitle>
<id>https://git.shady.money/linux/atom?h=v4.9</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v4.9'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2016-02-27T20:52:40Z</updated>
<entry>
<title>drm/amdkfd: Track when module's init is complete</title>
<updated>2016-02-27T20:52:40Z</updated>
<author>
<name>Oded Gabbay</name>
<email>oded.gabbay@gmail.com</email>
</author>
<published>2016-02-13T08:14:07Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=c68f4528a2e984d044a5f6ad1c5eca7bba9b3b4c'/>
<id>urn:sha1:c68f4528a2e984d044a5f6ad1c5eca7bba9b3b4c</id>
<content type='text'>
Current dependencies between amdkfd and radeon/amdgpu force the loading
of amdkfd _before_ radeon and/or amdgpu are loaded. When all these kernel
drivers are built as modules, this ordering is enforced by the kernel
built-in mechanism of loading dependent modules.

However, there is no such mechanism in case where all these drivers are
compiled inside the kernel image (not as modules). The current way to
enforce loading of amdkfd before radeon/amdgpu, is to put amdkfd before
radeon/amdgpu in the drm Makefile, but that method is way too fragile.

In addition, there is no kernel mechanism to check whether a kernel
driver that is built inside the kernel image, has already been loaded.

To solve this, this patch adds to kfd_module.c a new static variable,
amdkfd_init_completed, that is set to 1 only when amdkfd's
module initialization function has been completed (successfully).

kgd2kfd_init(), which is the initialization function of the
kgd--&gt;kfd interface, and which is the first function in amdkfd called by
radeon/amdgpu, will return successfully only if amdkfd_init_completed is
equal 1.

If amdkfd_init_completed is not equal to 1, kgd2kfd_init() will
return -EPROBE_DEFER to signal radeon/amdgpu they need to defer
their loading until amdkfd is loaded.

Signed-off-by: Oded Gabbay &lt;oded.gabbay@gmail.com&gt;
Reviewed-by: Alex Deucher &lt;alexander.deucher@amd.com&gt;
</content>
</entry>
<entry>
<title>drm/radeon: Modify kgd_engine_type enum to match CZ</title>
<updated>2015-07-20T06:16:47Z</updated>
<author>
<name>Oded Gabbay</name>
<email>oded.gabbay@gmail.com</email>
</author>
<published>2015-01-19T14:20:21Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=22801f76fa59870aed2c0b8a4eb6c8d6993347ae'/>
<id>urn:sha1:22801f76fa59870aed2c0b8a4eb6c8d6993347ae</id>
<content type='text'>
This patch splits the KGD_ENGINE_SDMA to KGD_ENGINE_SDMA1 and
KGD_ENGINE_SDMA2 to match CZ definitions.

Signed-off-by: Oded Gabbay &lt;oded.gabbay@gmail.com&gt;
</content>
</entry>
<entry>
<title>drm/radeon: Add ATC VMID&lt;--&gt;PASID functions to kfd-&gt;kgd</title>
<updated>2015-06-03T08:34:46Z</updated>
<author>
<name>Alexey Skidanov</name>
<email>Alexey.Skidanov@amd.com</email>
</author>
<published>2015-05-19T16:25:01Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=edad40239ffcaafd7eb56e4060d472aa5af2df21'/>
<id>urn:sha1:edad40239ffcaafd7eb56e4060d472aa5af2df21</id>
<content type='text'>
This patch adds three new interfaces to kfd2kgd interface file of radeon.

The interfaces are:

- Check if a specific VMID has a valid PASID mapping
- Retrieve the PASID which is mapped to a specific VMID
- Issue a VMID invalidation request to the ATC

Signed-off-by: Alexey Skidanov &lt;Alexey.Skidanov@amd.com&gt;
Signed-off-by: Oded Gabbay &lt;oded.gabbay@gmail.com&gt;
</content>
</entry>
<entry>
<title>drm/radeon: Add H/W debugger kfd-&gt;kgd functions</title>
<updated>2015-06-03T08:31:12Z</updated>
<author>
<name>Yair Shachar</name>
<email>yair.shachar@amd.com</email>
</author>
<published>2014-09-28T08:51:15Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=a6186f4d6f5d4755a38f57005160a30acda8e081'/>
<id>urn:sha1:a6186f4d6f5d4755a38f57005160a30acda8e081</id>
<content type='text'>
This patch adds new interface functions to the kfd2kgd interface file. The
new functions allow to perform H/W debugger operations by writing to GPU
registers.

Signed-off-by: Yair Shachar &lt;yair.shachar@amd.com&gt;
Signed-off-by: Oded Gabbay &lt;oded.gabbay@gmail.com&gt;
</content>
</entry>
<entry>
<title>drm/radeon: Add init interrupt kfd-&gt;kgd interface</title>
<updated>2015-05-19T09:13:39Z</updated>
<author>
<name>Oded Gabbay</name>
<email>oded.gabbay@gmail.com</email>
</author>
<published>2015-03-05T13:13:18Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=d36b94fcf0c812b04fff483e1b423f7d5042766e'/>
<id>urn:sha1:d36b94fcf0c812b04fff483e1b423f7d5042766e</id>
<content type='text'>
This patch adds a new interface function to the kfd-&gt;kgd interface.
The function is kgd_init_interrupts() and its function is to
initialize a pipe's interrupts.

The function currently enables the timestamp interrupt and the
bad opcode interrupt.

Signed-off-by: Oded Gabbay &lt;oded.gabbay@gmail.com&gt;
</content>
</entry>
<entry>
<title>drm/amdkfd: Add multiple kgd support</title>
<updated>2015-03-25T12:02:05Z</updated>
<author>
<name>Xihan Zhang</name>
<email>xihan.zhang@amd.com</email>
</author>
<published>2015-03-17T11:32:53Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=cea405b172e3b1fd2cf9da5ec05c7d808d6af03d'/>
<id>urn:sha1:cea405b172e3b1fd2cf9da5ec05c7d808d6af03d</id>
<content type='text'>
The current code can only support one kgd instance. We have to
support multiple kgd instances in one system. i.e two amdgpu or two
radeon or one amdgpu + one radeon or more than two kgd instances.

Signed-off-by: Xihan Zhang &lt;xihan.zhang@amd.com&gt;
Signed-off-by: Oded Gabbay &lt;oded.gabbay@amd.com&gt;
</content>
</entry>
<entry>
<title>Merge remote-tracking branch 'origin/master' into drm-next</title>
<updated>2015-01-22T00:44:41Z</updated>
<author>
<name>Dave Airlie</name>
<email>airlied@redhat.com</email>
</author>
<published>2015-01-22T00:44:41Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=281d1bbd34b734e4f22b30b6f3b673dda46a7470'/>
<id>urn:sha1:281d1bbd34b734e4f22b30b6f3b673dda46a7470</id>
<content type='text'>
Backmerge Linus tree after rc5 + drm-fixes went in.

There were a few amdkfd conflicts I wanted to avoid,
and Ben requested this for nouveau also.

Conflicts:
	drivers/gpu/drm/amd/amdkfd/Makefile
	drivers/gpu/drm/amd/amdkfd/kfd_chardev.c
	drivers/gpu/drm/amd/amdkfd/kfd_mqd_manager.c
	drivers/gpu/drm/amd/amdkfd/kfd_priv.h
	drivers/gpu/drm/amd/include/kgd_kfd_interface.h
	drivers/gpu/drm/i915/intel_runtime_pm.c
	drivers/gpu/drm/radeon/radeon_kfd.c
</content>
</entry>
<entry>
<title>drm/amd: Fixing typos in kfd&lt;-&gt;kgd interface</title>
<updated>2014-12-09T10:00:09Z</updated>
<author>
<name>Ben Goz</name>
<email>ben.goz@amd.com</email>
</author>
<published>2014-12-09T10:00:09Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=b64b8afcca9dea38cfde090af76ea935627ce1d5'/>
<id>urn:sha1:b64b8afcca9dea38cfde090af76ea935627ce1d5</id>
<content type='text'>
Signed-off-by: Ben Goz &lt;ben.goz@amd.com&gt;
Signed-off-by: Oded Gabbay &lt;oded.gabbay@amd.com&gt;
</content>
</entry>
<entry>
<title>drm/amd: Add get_fw_version to kfd--&gt;kgd interface</title>
<updated>2014-11-09T10:42:22Z</updated>
<author>
<name>Oded Gabbay</name>
<email>oded.gabbay@amd.com</email>
</author>
<published>2014-11-09T10:42:22Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=61466c651fc2faffe89000e9d42661f6ab81d8e4'/>
<id>urn:sha1:61466c651fc2faffe89000e9d42661f6ab81d8e4</id>
<content type='text'>
This patch adds a new interface to the kfd--&gt;kgd interface.
The new interface function retrieves the firmware version that is currently in
use by the MEC engine. The firmware was uploaded to the MEC engine by the kgd
(radeon).

v2: Added parameter of engine type to interface function

Signed-off-by: Oded Gabbay &lt;oded.gabbay@amd.com&gt;
Reviewed-by: Alex Deucher &lt;alexander.deucher@amd.com&gt;
</content>
</entry>
<entry>
<title>drm/radeon: Initialize compute vmid</title>
<updated>2015-01-02T21:43:19Z</updated>
<author>
<name>Ben Goz</name>
<email>ben.goz@amd.com</email>
</author>
<published>2015-01-02T21:43:19Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=08dcc57fcd240922347c8a9f14d18e67a3f9f1a9'/>
<id>urn:sha1:08dcc57fcd240922347c8a9f14d18e67a3f9f1a9</id>
<content type='text'>
This patch moves to radeon the initialization of compute vmid.

That initializations was done in kfd--&gt;kgd interface, but doing it in radeon
as part of radeon's H/W initialization routines is more appropriate.

In addition, this simplifies the kfd--&gt;kgd interface.

The patch removes the function from the interface file and from the interface
declaration file.

The function initializes memory apertures to fixed base/limit address and non
cached memory types.

Signed-off-by: Ben Goz &lt;ben.goz@amd.com&gt;
Signed-off-by: Oded Gabbay &lt;oded.gabbay@amd.com&gt;
Reviewed-by: Alex Deucher &lt;alexander.deucher@amd.com&gt;
</content>
</entry>
</feed>
