diff options
author | Rob Clark <robclark@freedesktop.org> | 2014-06-18 09:45:23 -0400 |
---|---|---|
committer | Rob Clark <robclark@freedesktop.org> | 2014-06-18 10:42:07 -0400 |
commit | 56d170bc06c3ac69deb697f057c213f7c46d9a68 (patch) | |
tree | 1a5b756573afcfdbcfc41799f7656c0e1c0e0e68 /freedreno | |
parent | 09db8019da88644cd54dc9d93e8398d8b1f7d923 (diff) |
freedreno: add chip-id property
Userspace needs to know the patch-revision in addition to just the
gpu-id (ie. 320, 305, etc).
Signed-off-by: Rob Clark <robclark@freedesktop.org>
Diffstat (limited to 'freedreno')
-rw-r--r-- | freedreno/freedreno_drmif.h | 1 | ||||
-rw-r--r-- | freedreno/kgsl/kgsl_pipe.c | 3 | ||||
-rw-r--r-- | freedreno/msm/msm_pipe.c | 5 | ||||
-rw-r--r-- | freedreno/msm/msm_priv.h | 1 |
4 files changed, 10 insertions, 0 deletions
diff --git a/freedreno/freedreno_drmif.h b/freedreno/freedreno_drmif.h index 41ef6099..7c54e04b 100644 --- a/freedreno/freedreno_drmif.h +++ b/freedreno/freedreno_drmif.h @@ -49,6 +49,7 @@ enum fd_param_id { FD_DEVICE_ID, FD_GMEM_SIZE, FD_GPU_ID, + FD_CHIP_ID, }; /* bo flags: */ diff --git a/freedreno/kgsl/kgsl_pipe.c b/freedreno/kgsl/kgsl_pipe.c index f7ff7fe0..88d9505b 100644 --- a/freedreno/kgsl/kgsl_pipe.c +++ b/freedreno/kgsl/kgsl_pipe.c @@ -43,6 +43,9 @@ static int kgsl_pipe_get_param(struct fd_pipe *pipe, case FD_GMEM_SIZE: *value = kgsl_pipe->devinfo.gmem_sizebytes; return 0; + case FD_CHIP_ID: + *value = kgsl_pipe->devinfo.chip_id; + return 0; default: ERROR_MSG("invalid param id: %d", param); return -1; diff --git a/freedreno/msm/msm_pipe.c b/freedreno/msm/msm_pipe.c index ece4de5a..56505037 100644 --- a/freedreno/msm/msm_pipe.c +++ b/freedreno/msm/msm_pipe.c @@ -41,6 +41,9 @@ static int msm_pipe_get_param(struct fd_pipe *pipe, case FD_GMEM_SIZE: *value = msm_pipe->gmem; return 0; + case FD_CHIP_ID: + *value = msm_pipe->chip_id; + return 0; default: ERROR_MSG("invalid param id: %d", param); return -1; @@ -117,12 +120,14 @@ struct fd_pipe * msm_pipe_new(struct fd_device *dev, enum fd_pipe_id id) msm_pipe->pipe = pipe_id[id]; msm_pipe->gpu_id = get_param(dev, pipe_id[id], MSM_PARAM_GPU_ID); msm_pipe->gmem = get_param(dev, pipe_id[id], MSM_PARAM_GMEM_SIZE); + msm_pipe->chip_id = get_param(dev, pipe_id[id], MSM_PARAM_CHIP_ID); if (! msm_pipe->gpu_id) goto fail; INFO_MSG("Pipe Info:"); INFO_MSG(" GPU-id: %d", msm_pipe->gpu_id); + INFO_MSG(" Chip-id: 0x%08x", msm_pipe->chip_id); INFO_MSG(" GMEM size: 0x%08x", msm_pipe->gmem); return pipe; diff --git a/freedreno/msm/msm_priv.h b/freedreno/msm/msm_priv.h index 4c5623a9..75ae883f 100644 --- a/freedreno/msm/msm_priv.h +++ b/freedreno/msm/msm_priv.h @@ -53,6 +53,7 @@ struct msm_pipe { uint32_t pipe; uint32_t gpu_id; uint32_t gmem; + uint32_t chip_id; }; static inline struct msm_pipe * to_msm_pipe(struct fd_pipe *x) |