summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/common
diff options
context:
space:
mode:
authorTerje Bergstrom <tbergstrom@nvidia.com>2017-10-29 23:14:12 -0400
committermobile promotions <svcmobile_promotions@nvidia.com>2017-11-01 12:36:22 -0400
commitb8bfcd4358275be4a11405641defee46d4b33b6b (patch)
tree528497c2a78c67224a1f526d184ae52dd5b0b3fa /drivers/gpu/nvgpu/common
parent68dbfedd4f837d1bf2bab128500140f5d8cfadac (diff)
gpu: nvgpu: Add GPU arch and impl to common structure
Add GPU architecture and implentation to a new struct nvgpu_gpu_params which is defined in common header file gk20a/gk20.h. JIRA NVGPU-259 Change-Id: I9113d188037c9ad7bfc2200e0e41b39cac576985 Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/1588032 GVS: Gerrit_Virtual_Submit Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com> Reviewed-by: Konsta Holtta <kholtta@nvidia.com> Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/common')
-rw-r--r--drivers/gpu/nvgpu/common/linux/ioctl_ctrl.c3
-rw-r--r--drivers/gpu/nvgpu/common/linux/module.c5
-rw-r--r--drivers/gpu/nvgpu/common/pmu/pmu_perfmon.c2
3 files changed, 7 insertions, 3 deletions
diff --git a/drivers/gpu/nvgpu/common/linux/ioctl_ctrl.c b/drivers/gpu/nvgpu/common/linux/ioctl_ctrl.c
index 1e5a9d59..1442c19a 100644
--- a/drivers/gpu/nvgpu/common/linux/ioctl_ctrl.c
+++ b/drivers/gpu/nvgpu/common/linux/ioctl_ctrl.c
@@ -202,6 +202,9 @@ gk20a_ctrl_ioctl_gpu_characteristics(
202#ifdef CONFIG_TEGRA_19x_GPU 202#ifdef CONFIG_TEGRA_19x_GPU
203 pgpu->flags |= nvgpu_ctrl_ioctl_gpu_characteristics_flags_t19x(g); 203 pgpu->flags |= nvgpu_ctrl_ioctl_gpu_characteristics_flags_t19x(g);
204#endif 204#endif
205 pgpu->arch = g->params.gpu_arch;
206 pgpu->impl = g->params.gpu_impl;
207 pgpu->rev = g->params.gpu_rev;
205 208
206 if (request->gpu_characteristics_buf_size > 0) { 209 if (request->gpu_characteristics_buf_size > 0) {
207 size_t write_size = sizeof(*pgpu); 210 size_t write_size = sizeof(*pgpu);
diff --git a/drivers/gpu/nvgpu/common/linux/module.c b/drivers/gpu/nvgpu/common/linux/module.c
index fb5d3614..4f66fc67 100644
--- a/drivers/gpu/nvgpu/common/linux/module.c
+++ b/drivers/gpu/nvgpu/common/linux/module.c
@@ -156,9 +156,10 @@ static int gk20a_restore_registers(struct gk20a *g)
156 return 0; 156 return 0;
157} 157}
158 158
159static int nvgpu_init_os_linux_ops(struct nvgpu_os_linux *l) { 159static int nvgpu_init_os_linux_ops(struct nvgpu_os_linux *l)
160{
160 struct gk20a *g = &l->g; 161 struct gk20a *g = &l->g;
161 u32 ver = g->gpu_characteristics.arch + g->gpu_characteristics.impl; 162 u32 ver = g->params.gpu_arch + g->params.gpu_impl;
162 163
163 switch (ver) { 164 switch (ver) {
164 case GK20A_GPUID_GM20B: 165 case GK20A_GPUID_GM20B:
diff --git a/drivers/gpu/nvgpu/common/pmu/pmu_perfmon.c b/drivers/gpu/nvgpu/common/pmu/pmu_perfmon.c
index f0307d96..2b952868 100644
--- a/drivers/gpu/nvgpu/common/pmu/pmu_perfmon.c
+++ b/drivers/gpu/nvgpu/common/pmu/pmu_perfmon.c
@@ -35,7 +35,7 @@
35static u8 get_perfmon_id(struct nvgpu_pmu *pmu) 35static u8 get_perfmon_id(struct nvgpu_pmu *pmu)
36{ 36{
37 struct gk20a *g = gk20a_from_pmu(pmu); 37 struct gk20a *g = gk20a_from_pmu(pmu);
38 u32 ver = g->gpu_characteristics.arch + g->gpu_characteristics.impl; 38 u32 ver = g->params.gpu_arch + g->params.gpu_impl;
39 u8 unit_id; 39 u8 unit_id;
40 40
41 switch (ver) { 41 switch (ver) {