drm/msm: Add API support for getting GPU hang timeout

Userspace needs to know the GPU timeout value to support Khronos robust
GPU timeout extension. The timeout value is returned to the user in
millisecond resolution.

Change-Id: Iba2ff43fce6d21da240356b392afa7a6e7a618ad
Signed-off-by: Sharat Masetty <smasetty@codeaurora.org>
This commit is contained in:
Sharat Masetty 2017-11-13 18:48:22 +05:30
parent ce488494ce
commit 1ff6f9bca6
2 changed files with 11 additions and 7 deletions

View file

@ -61,6 +61,9 @@ int adreno_get_param(struct msm_gpu *gpu, uint32_t param, uint64_t *value)
case MSM_PARAM_NR_RINGS:
*value = gpu->nr_rings;
return 0;
case MSM_PARAM_GPU_HANG_TIMEOUT:
*value = DRM_MSM_HANGCHECK_PERIOD;
return 0;
default:
DBG("%s: invalid param: %u", gpu->name, param);
return -EINVAL;

View file

@ -112,13 +112,14 @@ struct drm_msm_ext_panel_hdr_properties {
__u32 hdr_min_luminance; /* Min Luminance */
};
#define MSM_PARAM_GPU_ID 0x01
#define MSM_PARAM_GMEM_SIZE 0x02
#define MSM_PARAM_CHIP_ID 0x03
#define MSM_PARAM_MAX_FREQ 0x04
#define MSM_PARAM_TIMESTAMP 0x05
#define MSM_PARAM_GMEM_BASE 0x06
#define MSM_PARAM_NR_RINGS 0x07
#define MSM_PARAM_GPU_ID 0x01
#define MSM_PARAM_GMEM_SIZE 0x02
#define MSM_PARAM_CHIP_ID 0x03
#define MSM_PARAM_MAX_FREQ 0x04
#define MSM_PARAM_TIMESTAMP 0x05
#define MSM_PARAM_GMEM_BASE 0x06
#define MSM_PARAM_NR_RINGS 0x07
#define MSM_PARAM_GPU_HANG_TIMEOUT 0xa0 /* timeout in ms */
struct drm_msm_param {
__u32 pipe; /* in, MSM_PIPE_x */