From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jordan Crouse Subject: Re: [PATCH 5/7] drm/msm: add chip-id param Date: Mon, 10 Mar 2014 14:20:48 -0600 Message-ID: <531E1EA0.4070705@codeaurora.org> References: <1394470062-27442-1-git-send-email-robdclark@gmail.com> <1394470062-27442-6-git-send-email-robdclark@gmail.com> Reply-To: jcrouse@codeaurora.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Return-path: Received: from smtp.codeaurora.org ([198.145.11.231]:44434 "EHLO smtp.codeaurora.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752561AbaCJUUt (ORCPT ); Mon, 10 Mar 2014 16:20:49 -0400 In-Reply-To: <1394470062-27442-6-git-send-email-robdclark@gmail.com> Sender: linux-arm-msm-owner@vger.kernel.org List-Id: linux-arm-msm@vger.kernel.org To: Rob Clark Cc: dri-devel@lists.freedesktop.org, linux-arm-msm@vger.kernel.org On 03/10/2014 10:47 AM, Rob Clark wrote: > Some of the w/a or different behavior of userspace blob driver seem to > be keyed to gpu patch revision, rather than gpu-id. So expose the full > chip-id to userspace so it can DTRT. It is all chip-id all the time in the blob - we used to try to be clever with unique GPU IDs and such with it but we discovered over time that there is just too much drama. > Signed-off-by: Rob Clark Acked-by: Jordan Crouse > --- > drivers/gpu/drm/msm/adreno/adreno_gpu.c | 6 ++++++ > include/uapi/drm/msm_drm.h | 1 + > 2 files changed, 7 insertions(+) > > diff --git a/drivers/gpu/drm/msm/adreno/adreno_gpu.c b/drivers/gpu/drm/msm/adreno/adreno_gpu.c > index 7a11563..28ca8cd 100644 > --- a/drivers/gpu/drm/msm/adreno/adreno_gpu.c > +++ b/drivers/gpu/drm/msm/adreno/adreno_gpu.c > @@ -73,6 +73,12 @@ int adreno_get_param(struct msm_gpu *gpu, uint32_t param, uint64_t *value) > case MSM_PARAM_GMEM_SIZE: > *value = adreno_gpu->gmem; > return 0; > + case MSM_PARAM_CHIP_ID: > + *value = adreno_gpu->rev.patchid | > + (adreno_gpu->rev.minor << 8) | > + (adreno_gpu->rev.major << 16) | > + (adreno_gpu->rev.core << 24); > + return 0; > default: > DBG("%s: invalid param: %u", gpu->name, param); > return -EINVAL; > diff --git a/include/uapi/drm/msm_drm.h b/include/uapi/drm/msm_drm.h > index d3c6207..bf91a78 100644 > --- a/include/uapi/drm/msm_drm.h > +++ b/include/uapi/drm/msm_drm.h > @@ -50,6 +50,7 @@ struct drm_msm_timespec { > > #define MSM_PARAM_GPU_ID 0x01 > #define MSM_PARAM_GMEM_SIZE 0x02 > +#define MSM_PARAM_CHIP_ID 0x03 > > struct drm_msm_param { > uint32_t pipe; /* in, MSM_PIPE_x */ > -- The Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by The Linux Foundation