1. 26 11月, 2017 1 次提交
    • D
      uapi: fix linux/kfd_ioctl.h userspace compilation errors · b4d08520
      Dmitry V. Levin 提交于
      Consistently use types provided by <linux/types.h> via <drm/drm.h>
      to fix the following linux/kfd_ioctl.h userspace compilation errors:
      
      /usr/include/linux/kfd_ioctl.h:236:2: error: unknown type name 'uint64_t'
        uint64_t va_addr; /* to KFD */
      /usr/include/linux/kfd_ioctl.h:237:2: error: unknown type name 'uint32_t'
        uint32_t gpu_id; /* to KFD */
      /usr/include/linux/kfd_ioctl.h:238:2: error: unknown type name 'uint32_t'
        uint32_t pad;
      /usr/include/linux/kfd_ioctl.h:243:2: error: unknown type name 'uint64_t'
        uint64_t tile_config_ptr;
      /usr/include/linux/kfd_ioctl.h:245:2: error: unknown type name 'uint64_t'
        uint64_t macro_tile_config_ptr;
      /usr/include/linux/kfd_ioctl.h:249:2: error: unknown type name 'uint32_t'
        uint32_t num_tile_configs;
      /usr/include/linux/kfd_ioctl.h:253:2: error: unknown type name 'uint32_t'
        uint32_t num_macro_tile_configs;
      /usr/include/linux/kfd_ioctl.h:255:2: error: unknown type name 'uint32_t'
        uint32_t gpu_id;  /* to KFD */
      /usr/include/linux/kfd_ioctl.h:256:2: error: unknown type name 'uint32_t'
        uint32_t gb_addr_config; /* from KFD */
      /usr/include/linux/kfd_ioctl.h:257:2: error: unknown type name 'uint32_t'
        uint32_t num_banks;  /* from KFD */
      /usr/include/linux/kfd_ioctl.h:258:2: error: unknown type name 'uint32_t'
        uint32_t num_ranks;  /* from KFD */
      
      Fixes: 6a1c9510 ("drm/amdkfd: Adding new IOCTL for scratch memory v2")
      Fixes: 5d71dbc3 ("drm/amdkfd: Implement image tiling mode support v2")
      Signed-off-by: NDmitry V. Levin <ldv@altlinux.org>
      Signed-off-by: NOded Gabbay <oded.gabbay@gmail.com>
      b4d08520
  2. 15 11月, 2017 2 次提交
  3. 28 10月, 2017 1 次提交
  4. 16 8月, 2017 2 次提交
  5. 07 8月, 2017 1 次提交
  6. 03 6月, 2015 1 次提交
    • Y
      drm/amdkfd: add H/W debugger IOCTL set definitions · aef11009
      Yair Shachar 提交于
      This patch adds four new IOCTLs to amdkfd. These IOCTLs expose a H/W
      debugger functionality to the userspace.
      
      The IOCTLs are:
      
      - AMDKFD_IOC_DBG_REGISTER:
      
      The purpose of this IOCTL is to notify amdkfd that a process wants to use
      GPU debugging facilities on itself only.
      It is expected that this IOCTL would be called before any other H/W
      debugger requests are sent to amdkfd and for each GPU where the H/W
      debugging needs to be enabled. The use of this IOCTL ensures that only
      one instance of a debugger is active in the system.
      
      - AMDKFD_IOC_DBG_UNREGISTER:
      
      This IOCTL detaches the debugger/debugged process from the H/W
      Debug which was established by the AMDKFD_IOC_DBG_REGISTER IOCTL.
      
      - AMDKFD_IOC_DBG_ADDRESS_WATCH:
      
      This IOCTL allows to set different watchpoints with various conditions as
      indicated by the IOCTL's arguments. The available number of watchpoints
      is retrieved from topology. This operation is confined to the current
      debugged process, which was registered through AMDKFD_IOC_DBG_REGISTER.
      
      - AMDKFD_IOC_DBG_WAVE_CONTROL:
      
      This IOCTL allows to control a wavefront as indicated by the IOCTL's
      arguments. For example, you can halt/resume or kill either a
      single wavefront or a set of wavefronts. This operation is confined to
      the current debugged process, which was registered through
      AMDKFD_IOC_DBG_REGISTER.
      
      Because the arguments for the address watch IOCTL and wave control IOCTL
      are dynamic, meaning that they could vary in size, the userspace passes a
      pointer to a structure (in userspace) that contains the value of the
      arguments. The kernel driver is responsible to parse this structure and
      validate its contents.
      
      v2: change void* to uint64_t inside ioctl arguments
      Signed-off-by: NYair Shachar <yair.shachar@amd.com>
      Signed-off-by: NOded Gabbay <oded.gabbay@gmail.com>
      aef11009
  7. 19 5月, 2015 1 次提交
    • A
      drm/amdkfd: add events IOCTL set definitions · 29a5d3eb
      Andrew Lewycky 提交于
      - AMDKFD_IOC_CREATE_EVENT:
      	Creates a new event of a specified type
      
      - AMDKFD_IOC_DESTROY_EVENT:
      	Destroys an existing event
      
      - AMDKFD_IOC_SET_EVENT:
      	Signal an existing event
      
      - AMDKFD_IOC_RESET_EVENT:
      	Reset an existing event
      
      - AMDKFD_IOC_WAIT_EVENTS:
      	Wait on event(s) until they are signaled
      
      v2:
      
      - Move the limit of the signal events to kfd_ioctl.h so it
        can be used by userspace
      
      v3:
      - Change all bool fields in struct kfd_memory_exception_failure
      to uint32_t
      Signed-off-by: NAndrew Lewycky <Andrew.Lewycky@amd.com>
      Signed-off-by: NOded Gabbay <oded.gabbay@gmail.com>
      29a5d3eb
  8. 07 1月, 2015 1 次提交
  9. 16 7月, 2014 1 次提交
    • O
      amdkfd: Add IOCTL set definitions of amdkfd · b7facbae
      Oded Gabbay 提交于
      - KFD_IOC_GET_VERSION:
      	Retrieves the interface version of amdkfd
      
      - KFD_IOC_CREATE_QUEUE:
      	Creates a usermode queue that runs on a specific GPU device
      
      - KFD_IOC_DESTROY_QUEUE:
      	Destroys an existing usermode queue
      
      - KFD_IOC_SET_MEMORY_POLICY:
      	Sets the memory policy of the default and alternate aperture of the
              calling process
      
      - KFD_IOC_GET_CLOCK_COUNTERS:
      	Retrieves counters (timestamps) of CPU and GPU
      
      - KFD_IOC_GET_PROCESS_APERTURES:
      	Retrieves information about process apertures that were initialized
              during the open() call of the amdkfd device
      
      - KFD_IOC_UPDATE_QUEUE:
      	Updates configuration of an existing usermode queue
      
      v3: Remove pragma pack and pmc ioctls. Added parameter for doorbell offset and
      a comment on counters
      
      v5:
      
      Add define for AQL queues.
      Fix arguments of Get Version IOCTL
      Make IOCTL's structures to be the same size on 32/64 bit
      
      v6: Change the version of the amdkfd-thunk interface
      Signed-off-by: NOded Gabbay <oded.gabbay@amd.com>
      b7facbae