diff options
author | Terje Bergstrom <tbergstrom@nvidia.com> | 2017-09-27 16:21:44 -0400 |
---|---|---|
committer | mobile promotions <svcmobile_promotions@nvidia.com> | 2017-10-13 18:19:55 -0400 |
commit | be3750bc9eb60f8696c20b7298cc282eea17ac1b (patch) | |
tree | b36fb818ce58a96fc7f2822480433057bd28faf4 /drivers/gpu/nvgpu/common/linux/os_linux.h | |
parent | ff9c3fc20a27444cd1ff7d9402965023e425f404 (diff) |
gpu: nvgpu: Abstract IO aperture accessors
Add abstraction of IO aperture accessors. Add new functions
gk20a_io_exists() and gk20a_io_valid_reg() to remove dependencies to
aperture fields from common code.
Implement Linux version of the abstraction by moving gk20a_readl()
and gk20a_writel() to new Linux specific io.c. Move the fields
defining IO aperture to nvgpu_os_linux.
Add t19x specific IO aperture initialization functions and add t19x
specific section to nvgpu_os_linux.
JIRA NVGPU-259
Change-Id: I09e79cda60d11a20d1099a9aaa6d2375236e94ce
Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/1569698
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/common/linux/os_linux.h')
-rw-r--r-- | drivers/gpu/nvgpu/common/linux/os_linux.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/common/linux/os_linux.h b/drivers/gpu/nvgpu/common/linux/os_linux.h index 48479843..4a3128c3 100644 --- a/drivers/gpu/nvgpu/common/linux/os_linux.h +++ b/drivers/gpu/nvgpu/common/linux/os_linux.h | |||
@@ -18,6 +18,9 @@ | |||
18 | 18 | ||
19 | #include <linux/cdev.h> | 19 | #include <linux/cdev.h> |
20 | 20 | ||
21 | #ifdef CONFIG_TEGRA_19x_GPU | ||
22 | #include <nvgpu/linux/os_linux_t19x.h> | ||
23 | #endif | ||
21 | #include "gk20a/gk20a.h" | 24 | #include "gk20a/gk20a.h" |
22 | #include "cde.h" | 25 | #include "cde.h" |
23 | 26 | ||
@@ -85,6 +88,17 @@ struct nvgpu_os_linux { | |||
85 | struct work_struct nonstall_fn_work; | 88 | struct work_struct nonstall_fn_work; |
86 | struct workqueue_struct *nonstall_work_queue; | 89 | struct workqueue_struct *nonstall_work_queue; |
87 | 90 | ||
91 | struct resource *reg_mem; | ||
92 | void __iomem *regs; | ||
93 | void __iomem *regs_saved; | ||
94 | |||
95 | struct resource *bar1_mem; | ||
96 | void __iomem *bar1; | ||
97 | void __iomem *bar1_saved; | ||
98 | |||
99 | #ifdef CONFIG_TEGRA_19x_GPU | ||
100 | struct nvgpu_os_linux_t19x t19x; | ||
101 | #endif | ||
88 | #ifdef CONFIG_DEBUG_FS | 102 | #ifdef CONFIG_DEBUG_FS |
89 | struct dentry *debugfs; | 103 | struct dentry *debugfs; |
90 | struct dentry *debugfs_alias; | 104 | struct dentry *debugfs_alias; |