diff options
author | Terje Bergstrom <tbergstrom@nvidia.com> | 2018-01-17 15:39:13 -0500 |
---|---|---|
committer | mobile promotions <svcmobile_promotions@nvidia.com> | 2018-01-23 01:20:15 -0500 |
commit | f3f14cdff53f4b936e2505d44aad6e3bca143056 (patch) | |
tree | 8d6438132b8ca429758d18142c5f569f60f2bc35 /drivers/gpu/nvgpu/common/linux/module_t19x.c | |
parent | 193a2ed38ca51d898ac811820ab86237c84e18eb (diff) |
gpu: nvgpu: Fold T19x code back to main code paths
Lots of code paths were split to T19x specific code paths and structs
due to split repository. Now that repositories are merged, fold all of
them back to main code paths and structs and remove the T19x specific
Kconfig flag.
Change-Id: Id0d17a5f0610fc0b49f51ab6664e716dc8b222b6
Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/1640606
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/common/linux/module_t19x.c')
-rw-r--r-- | drivers/gpu/nvgpu/common/linux/module_t19x.c | 62 |
1 files changed, 0 insertions, 62 deletions
diff --git a/drivers/gpu/nvgpu/common/linux/module_t19x.c b/drivers/gpu/nvgpu/common/linux/module_t19x.c deleted file mode 100644 index f0e3d438..00000000 --- a/drivers/gpu/nvgpu/common/linux/module_t19x.c +++ /dev/null | |||
@@ -1,62 +0,0 @@ | |||
1 | /* | ||
2 | * Copyright (c) 2017, NVIDIA CORPORATION. All rights reserved. | ||
3 | * | ||
4 | * This program is free software; you can redistribute it and/or modify it | ||
5 | * under the terms and conditions of the GNU General Public License, | ||
6 | * version 2, as published by the Free Software Foundation. | ||
7 | * | ||
8 | * This program is distributed in the hope it will be useful, but WITHOUT | ||
9 | * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | ||
10 | * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for | ||
11 | * more details. | ||
12 | * | ||
13 | * You should have received a copy of the GNU General Public License | ||
14 | * along with this program. If not, see <http://www.gnu.org/licenses/>. | ||
15 | */ | ||
16 | |||
17 | #include <nvgpu/types.h> | ||
18 | |||
19 | #include <nvgpu/hw/gv11b/hw_usermode_gv11b.h> | ||
20 | |||
21 | #include "common/linux/os_linux.h" | ||
22 | |||
23 | /* | ||
24 | * Locks out the driver from accessing GPU registers. This prevents access to | ||
25 | * thse registers after the GPU has been clock or power gated. This should help | ||
26 | * find annoying bugs where register reads and writes are silently dropped | ||
27 | * after the GPU has been turned off. On older chips these reads and writes can | ||
28 | * also lock the entire CPU up. | ||
29 | */ | ||
30 | void t19x_lockout_registers(struct gk20a *g) | ||
31 | { | ||
32 | struct nvgpu_os_linux *l = nvgpu_os_linux_from_gk20a(g); | ||
33 | |||
34 | l->t19x.usermode_regs = NULL; | ||
35 | } | ||
36 | |||
37 | /* | ||
38 | * Undoes t19x_lockout_registers(). | ||
39 | */ | ||
40 | void t19x_restore_registers(struct gk20a *g) | ||
41 | { | ||
42 | struct nvgpu_os_linux *l = nvgpu_os_linux_from_gk20a(g); | ||
43 | |||
44 | l->t19x.usermode_regs = l->t19x.usermode_regs_saved; | ||
45 | } | ||
46 | |||
47 | void t19x_remove_support(struct gk20a *g) | ||
48 | { | ||
49 | struct nvgpu_os_linux *l = nvgpu_os_linux_from_gk20a(g); | ||
50 | |||
51 | if (l->t19x.usermode_regs) { | ||
52 | l->t19x.usermode_regs = NULL; | ||
53 | } | ||
54 | } | ||
55 | |||
56 | void t19x_init_support(struct gk20a *g) | ||
57 | { | ||
58 | struct nvgpu_os_linux *l = nvgpu_os_linux_from_gk20a(g); | ||
59 | |||
60 | l->t19x.usermode_regs = l->regs + usermode_cfg0_r(); | ||
61 | l->t19x.usermode_regs_saved = l->t19x.usermode_regs; | ||
62 | } | ||