Граф коммитов

423 Коммитов

Автор SHA1 Сообщение Дата
Harish Kasiviswanathan 1438f15fd0 Fix VM range for dGPU local memory
Currently, Kernel imposes a limit on VM. Thunk should be aware of it.
This fix is required till Kernel VM limit is sorted.

For now both "Host Access" memory and "Local Memory" share the same VM range.

Change-Id: I5a9220face20df9ede2b78bd6201a01dd2ea70e0
Signed-off-by: Harish Kasiviswanathan <Harish.Kasiviswanathan@amd.com>
2015-09-23 16:18:50 -04:00
Harish Kasiviswanathan 4b768872c0 Fix mem size variable type
Memory size is 64-bit. So use HSAuint64 instead of uint32.

Change-Id: Iaa607dec9c1a1c5ac46ea442fd482210ea550b45
Signed-off-by: Harish Kasiviswanathan <Harish.Kasiviswanathan@amd.com>
2015-09-23 15:33:54 -04:00
Amber Lin f7fffdc2be Enable GFXIP version info for dGPU
Add GFXIP version 8.0.2(major.minor.stepping) for gfx802 and 8.0.3 for gfx803.


Change-Id: Icc7cac6b2e8a78d9cff4105aeb2bfcd2c7759027
2015-09-22 15:04:43 -04:00
Ben Goz 6170080cf6 Adding support for local memory on dGPU
Change-Id: I1a926b11730ba295605eeb37c9b1fc438bed8a64
Signed-off-by: Ben Goz <ben.goz@amd.com>
2015-09-21 14:13:15 -04:00
Ben Goz 692e004047 Adding new memory allocation IOCTL
Change-Id: I0eb1924811a2e1e436296ebe632d8f112a61637d
Signed-off-by: Ben Goz <ben.goz@amd.com>
2015-09-21 13:58:32 -04:00
Harish Kasiviswanathan 3e9773ff2c Revert "Topology, memory allocation, cleanup issue for gGPU"
This reverts commit ee08f537a7.

Change-Id: I92a4ed91bf566259916d1a96207e1fe9a6099c31
Signed-off-by: Harish Kasiviswanathan <Harish.Kasiviswanathan@amd.com>
2015-09-21 10:47:30 -04:00
Harish Kasiviswanathan ee08f537a7 Topology, memory allocation, cleanup issue for gGPU
Patch submitted by Besar Wicaksono

1. Bug on detecting local memory size interpreted as 32 bit value
instead of 64. The bug causes thunk to go into an infinite loop trying
to reserve virtual address range for dgpu system memory.
2. SIMD count in the node property is 0. Runtime use this attribute to
find a gpu device.
	Regarding other attributes of intel+tonga topology, Harish started a
	discussion on August iirc, could you please share an update ?
	This would help me progress with more tests such as scratch memory,
	which require the scratch aperture information in order to construct a
	buffer srd in gpuvm space.
3. Bug on releasing memory via fmm_release, where no actual release is
being done. The vm_object can't be found because the memory size does
not match due to the allocation padded the size with 32KB.
4. Pointer arithmetic on vm_area allocation/release. The value of
vm_area_t::end seems to be interpreted inconsistently whether it is
(start + size  -1) or (start + size).
	One example of potential issue I see is the logic could report
	larger size of the hole in the vm area list.
5. Resource cleanup on multiple library load/unload within a single
process.
	- Any memory allocation on subsequent library load will result
	an error "va above limit". To my understanding this is due to
	the reserved memory for the system memory not being released on unload.
	- The static variable events_page needs to be invalidated
	appropriately on library unload so the next load could
	reinitialize it.
6. Could you please update if AQL queue is ready to test with the stg
kfd/kmt ?
7. The system memory allocation with size larger than 32KB seems to be
padded by an extra 32KB. I was wondering if we could remove this
overhead.

Change-Id: I039988d36637525089c7569dc3b77e58750e2121
2015-09-15 13:15:04 -04:00
David Ogbeide 8a01cd1212 libhsakmt: specify build output via variable
Makefile currently sends build output a default location.
Allow choice of build output location if so desired
using a variable.



Signed-off-by: David Ogbeide <davidboyowa.ogbeide@amd.com>
2015-09-01 14:30:53 -04:00
Ben Goz fb8378a18b Support gfx802 dGPU
Signed-off-by: Ben Goz <ben.goz@amd.com>
2015-08-30 14:13:53 +03:00
shaoyunl 2dff5cabfa Minor fix in libhsathunk for KFDMemory test
Signed-off-by: shaoyun liu(shaoyun.liu@amd.com)
Reviewed-by: Ben Goz(Ben.Goz@amd.com)
2015-08-05 17:32:00 -04:00
Ben Goz bb4a5cddd9 Revert "Enable creating SDMA queue."
This reverts commit 112f7e751a.
2015-08-05 13:33:42 +03:00
Amber Lin a3925a3a19 Enable version info via thunk interface
- Replace HSAuint32 with HSA_ENGINE_ID for EngineId type so it explicitely
  presents version information for ucode and GfxIP
- Created a GfxIP lookup table to pass the version information. This lookup
  searches for matching device ID.

Signed-off-by: Amber Lin <Amber.Lin@amd.com>
Acked-by: John Bridgman <John.Bridgman@amd.com>
Reviewed-by: Felix Kuehling <Felix.Kuehling@amd.com>
2015-07-31 14:56:33 -04:00
Flora Cui fc4e07daa3 Add interface to set CU mask
Signed-off-by: Flora Cui <flora.cui@amd.com>
Acked-by: Ben Goz <ben.goz@amd.com>
2015-07-23 15:44:01 +08:00
Moses Reuben 29c083f695 adding support for scratch memory
Signed-off-by: Moses Reuben <moses.reuben@amd.com>
2015-07-21 16:43:23 +03:00
Oded Gabbay 2e76017278 increase event limit to provide 4K events
Signed-off-by: Oded Gabbay <oded.gabbay@amd.com>
2015-05-18 11:01:42 +03:00
Oded Gabbay 8aa0791ddb Don't report local mem aperture if local mem size is 0
Signed-off-by: Oded Gabbay <oded.gabbay@amd.com>
2015-05-05 10:51:50 +03:00
Oded Gabbay a70a98b30b Increase limit of signal events to 4096
Signed-off-by: Oded Gabbay <oded.gabbay@amd.com>
Reviewed-by: Ben Goz<ben.goz@amd.com>
2015-05-03 13:58:10 +03:00
Oded Gabbay eb2d3cfcdf Add missing DoorbellType field to HSA_CAPABILITY
Signed-off-by: Oded Gabbay <oded.gabbay@amd.com>
2015-05-02 12:10:04 +03:00
Oded Gabbay 4c4df38035 Revert "Add execution property in register memory for gfx801."
This reverts commit 5ed05c99b3.
2015-04-28 17:50:00 +03:00
Xihan Zhang 112f7e751a Enable creating SDMA queue.
Signed-off-by: Xihan Zhang <xihan.zhang@amd.com>
Reviewed-by: Ben Goz<ben.goz@amd.comt>
2015-04-28 23:42:49 +08:00
Xihan Zhang 5ed05c99b3 Add execution property in register memory for gfx801.
Signed-off-by: Xihan Zhang <xihan.zhang@amd.com>
2015-04-10 22:26:44 +08:00
Xihan Zhang 30eb386026 Add Performance Counter Support on gfx801.
Signed-off-by: Xihan Zhang <xihan.zhang@amd.com>
Acked-by: Oded Gabbay <oded.gabbay@amd.com>
2015-04-09 00:00:42 +08:00
Ben Goz b27de08442 Adding support for mmap events page from Thunk
Signed-off-by: Ben Goz <ben.goz@amd.com>
2015-03-24 17:55:54 +02:00
Oded Gabbay ac56c6baff Fix return value when local memory alloc fails
Signed-off-by: Oded Gabbay <oded.gabbay@amd.com>
Reviewed-by: Ben Goz <ben.goz@amd.com>
2015-03-19 10:49:27 +02:00
Oded Gabbay aba396bc52 Call __fmm_release with gpu id and not index
__fmm_release expects gpu_id as parameter. fmm_release passed it instead the
index of the GPU in the gpu_mem array.

Signed-off-by: Oded Gabbay <oded.gabbay@amd.com>
2015-03-03 15:23:57 +02:00
Oded Gabbay 13e0d87733 Disable SDMA queue creation
Signed-off-by: Oded Gabbay <oded.gabbay@amd.com>
2015-03-01 14:40:16 +02:00
Oded Gabbay 417e6f7501 Revert "Disable SDMA queue creation"
This reverts commit f3ac33230e.
2015-03-01 14:36:45 +02:00
Oded Gabbay f3ac33230e Disable SDMA queue creation
Signed-off-by: Oded Gabbay <oded.gabbay@amd.com>
2015-03-01 11:08:46 +02:00
Oded Gabbay e62d46ba1c Don't alloc/free VRAM in map/unmap paths
Signed-off-by: Oded Gabbay <oded.gabbay@amd.com>
2015-02-25 22:49:11 +02:00
Oded Gabbay 027ca02f2e reformat memory and fmm functions according to kernel coding style
Signed-off-by: Oded Gabbay <oded.gabbay@amd.com>
2015-02-25 22:49:08 +02:00
Oded Gabbay 5c0f8660b6 Revert "Workaround for non cached memory issue on gfx801 A0"
This reverts commit 402ff3f881.

Signed-off-by: Oded Gabbay <oded.gabbay@amd.com>
Acked-by: Ben Goz <ben.goz@amd.com>

Conflicts:
	include/linux/kfd_ioctl.h
	src/queues.c
2015-02-16 17:22:45 +02:00
Yair Shachar 89188a6d6c Modify HW dbg thunk,to adapt to new KFD-thunk interface
Signed-off-by: Yair Shachar <yair.shachar@amd.com>
2015-02-08 21:44:47 +02:00
Oded Gabbay f0a7fcccc9 Match as much as possible hsakmt.h and hsakmttypes.h to p4
Signed-off-by: Oded Gabbay <oded.gabbay@amd.com>
2015-02-03 11:13:13 +02:00
Ben Goz 25441796bd Supporting new thunk spec - adding relevant memflags
Signed-off-by: Ben Goz <ben.goz@amd.com>
Reviewed-by: Oded Gabbay <oded.gabbay@amd.com>
2015-02-01 14:33:33 +02:00
Oded Gabbay f24aa620ed fix return value in Map/Unmap functions
Signed-off-by: Oded Gabbay <oded.gabbay@amd.com>
Reviewed-by: Yair Shachar <yair.shachar@amd.com>
2015-01-29 16:55:14 +02:00
Ben Goz 930ec8f04d Check if event is not null before handling events
Signed-off-by: Ben Goz <ben.goz@amd.com>
Reviewed-by: Oded Gabbay <oded.gabbay@amd.com>
2015-01-29 16:45:36 +02:00
Oded Gabbay 8cc0b16293 match kfd_ioctl.h to kernel repo
Signed-off-by: Oded Gabbay <oded.gabbay@amd.com>
2015-01-19 17:18:47 +02:00
Ben Goz e7a5cda5a5 fix a bug in rptr page release
Adjust to new ioctl format

Signed-off-by: Ben Goz <ben.goz@amd.com>
Reviewed-by: Oded Gabbay <oded.gabbay@amd.com>
2014-12-14 13:49:41 +02:00
Alexey Skidanov c3b51fd827 Adding memory exception notification through hsaKmtWaitOnMultipleEvents
Signed-off-by: Alexey Skidanov <Alexey.Skidanov@amd.com>
Reviewed-by: Oded Gabbay <oded.gabbay@amd.com>
2014-11-27 16:24:06 +02:00
Alexey Skidanov d7196d4122 IOCTL: Adding memory exception data
Signed-off-by: Alexey Skidanov <Alexey.Skidanov@amd.com>
Reviewed-by: Oded Gabbay <oded.gabbay@amd.com>
2014-11-27 16:21:53 +02:00
Alexey Skidanov 36ccd7f867 Adding memory event type and definition of memory exception data
Signed-off-by: Alexey Skidanov <Alexey.Skidanov@amd.com>
Reviewed-by: Oded Gabbay <oded.gabbay@amd.com>
2014-11-27 15:54:21 +02:00
Ben Goz 402ff3f881 Workaround for non cached memory issue on gfx801 A0
Signed-off-by: Ben Goz <ben.goz@amd.com>

Adjust to new ioctl format

Signed-off-by: Oded Gabbay <oded.gabbay@amd.com>
2014-12-07 14:51:53 +02:00
Ben Goz c5585b0f26 Supporting QCM for gfx801
Signed-off-by: Ben Goz <ben.goz@amd.com>
2014-12-07 14:50:28 +02:00
Ben Goz bd7e10b0ec Adding support in allocating executable memory
Signed-off-by: Ben Goz <ben.goz@amd.com>
2014-12-07 14:36:21 +02:00
Alexey Skidanov 5d82c65602 Add GPU local memory module
Add graphic interop support

Local memory rework

Signed-off-by: Alexey Skidanov <Alexey.Skidanov@amd.com>
Reviewed-by: Oded Gabbay <oded.gabbay@amd.com>

Adjust to new ioctl format

Signed-off-by: Oded Gabbay <oded.gabbay@amd.com>
2014-10-13 11:29:39 +03:00
Oded Gabbay 7972bb00c5 kfd_ioctl: interop
Signed-off-by: Oded Gabbay <oded.gabbay@amd.com>
2014-12-08 10:02:34 +02:00
Oded Gabbay d995344ae7 Add new definitions of HSA functions and types
Signed-off-by: Oded Gabbay <oded.gabbay@amd.com>
2014-10-20 08:48:28 +03:00
Oded Gabbay d14eb7aa00 kfd_ioctl: local memory
Add two new IOCTLs

Remove old IOCTLs

Signed-off-by: Alexey Skidanov <Alexey.Skidanov@amd.com>
Reviewed-by: Oded Gabbay <oded.gabbay@amd.com>
2014-12-08 10:02:27 +02:00
Yair Shachar 39f693aec0 Add H/W debug module
Signed-off-by: Yair Shachar <yair.shachar@amd.com>
Signed-off-by: Oded Gabbay <oded.gabbay@amd.com>

Adjust to new ioctl format

Signed-off-by: Oded Gabbay <oded.gabbay@amd.com>
2014-10-13 11:29:03 +03:00
Oded Gabbay f7c3c3bd1b kfd_ioctl: debug
Signed-off-by: Oded Gabbay <oded.gabbay@amd.com>
2014-12-08 10:02:12 +02:00