diff options
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_umr.h')
| -rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_umr.h | 36 | 
1 files changed, 35 insertions, 1 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_umr.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_umr.h index 919d9d401750..107f9bb0e24f 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_umr.h +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_umr.h @@ -35,17 +35,51 @@ struct amdgpu_debugfs_regs2_iocdata {  	} srbm;  }; +struct amdgpu_debugfs_regs2_iocdata_v2 { +	__u32 use_srbm, use_grbm, pg_lock; +	struct { +		__u32 se, sh, instance; +	} grbm; +	struct { +		__u32 me, pipe, queue, vmid; +	} srbm; +	u32 xcc_id; +}; + +struct amdgpu_debugfs_gprwave_iocdata { +	u32 gpr_or_wave, se, sh, cu, wave, simd, xcc_id; +	struct { +		u32 thread, vpgr_or_sgpr; +	} gpr; +}; +  /*   * MMIO debugfs state data (per file* handle)   */  struct amdgpu_debugfs_regs2_data {  	struct amdgpu_device *adev;  	struct mutex lock; -	struct amdgpu_debugfs_regs2_iocdata id; +	struct amdgpu_debugfs_regs2_iocdata_v2 id; +}; + +struct amdgpu_debugfs_gprwave_data { +	struct amdgpu_device *adev; +	struct mutex lock; +	struct amdgpu_debugfs_gprwave_iocdata id;  };  enum AMDGPU_DEBUGFS_REGS2_CMDS {  	AMDGPU_DEBUGFS_REGS2_CMD_SET_STATE=0, +	AMDGPU_DEBUGFS_REGS2_CMD_SET_STATE_V2, +}; + +enum AMDGPU_DEBUGFS_GPRWAVE_CMDS { +	AMDGPU_DEBUGFS_GPRWAVE_CMD_SET_STATE=0,  }; +//reg2 interface  #define AMDGPU_DEBUGFS_REGS2_IOC_SET_STATE _IOWR(0x20, AMDGPU_DEBUGFS_REGS2_CMD_SET_STATE, struct amdgpu_debugfs_regs2_iocdata) +#define AMDGPU_DEBUGFS_REGS2_IOC_SET_STATE_V2 _IOWR(0x20, AMDGPU_DEBUGFS_REGS2_CMD_SET_STATE_V2, struct amdgpu_debugfs_regs2_iocdata_v2) + +//gprwave interface +#define AMDGPU_DEBUGFS_GPRWAVE_IOC_SET_STATE _IOWR(0x20, AMDGPU_DEBUGFS_GPRWAVE_CMD_SET_STATE, struct amdgpu_debugfs_gprwave_iocdata)  | 
