summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/gk20a/kind_gk20a.h
diff options
context:
space:
mode:
authorSunny He <suhe@nvidia.com>2017-07-31 19:10:14 -0400
committermobile promotions <svcmobile_promotions@nvidia.com>2017-08-14 18:55:13 -0400
commitd5a5fb3563121a4904be9185914c563070ffd021 (patch)
tree08a5fb65b912caf1555e62b031881fe1807bbd52 /drivers/gpu/nvgpu/gk20a/kind_gk20a.h
parent36f02cf49729b32aa241cb9f1f235749da681dd1 (diff)
gpu: nvgpu: remove kind map inheritance
Currently, the kind map initialization inherits from earlier chips' kind map definitions and simply adds on newly supported features. This is dangerous as changes in older architectures may affect newer architectures in unpredictable ways. This patch removes inheritance between subsequent architectures' kind map initializations. Jira NVGPU-74 Change-Id: Ie5c33f613db7ba109564b4cb2312e47ee3332afc Signed-off-by: Sunny He <suhe@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/1537745 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: svccoveritychecker <svccoveritychecker@nvidia.com> GVS: Gerrit_Virtual_Submit Reviewed-by: Terje Bergstrom <tbergstrom@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/gk20a/kind_gk20a.h')
-rw-r--r--drivers/gpu/nvgpu/gk20a/kind_gk20a.h18
1 files changed, 17 insertions, 1 deletions
diff --git a/drivers/gpu/nvgpu/gk20a/kind_gk20a.h b/drivers/gpu/nvgpu/gk20a/kind_gk20a.h
index 28d5802c..dcc33f7d 100644
--- a/drivers/gpu/nvgpu/gk20a/kind_gk20a.h
+++ b/drivers/gpu/nvgpu/gk20a/kind_gk20a.h
@@ -3,7 +3,7 @@
3 * 3 *
4 * GK20A memory kind management 4 * GK20A memory kind management
5 * 5 *
6 * Copyright (c) 2011-2014, NVIDIA CORPORATION. All rights reserved. 6 * Copyright (c) 2011-2017, NVIDIA CORPORATION. All rights reserved.
7 * 7 *
8 * This program is free software; you can redistribute it and/or modify it 8 * This program is free software; you can redistribute it and/or modify it
9 * under the terms and conditions of the GNU General Public License, 9 * under the terms and conditions of the GNU General Public License,
@@ -36,6 +36,22 @@ extern u16 gk20a_kind_attr[];
36#define GK20A_KIND_ATTR_C BIT(3) 36#define GK20A_KIND_ATTR_C BIT(3)
37#define GK20A_KIND_ATTR_ZBC BIT(4) 37#define GK20A_KIND_ATTR_ZBC BIT(4)
38 38
39/* TBD: not sure on the work creation for gk20a, doubtful */
40static inline bool gk20a_kind_work_creation_sked(u8 k)
41{
42 return false;
43}
44static inline bool gk20a_kind_work_creation_host(u8 k)
45{
46 return false;
47}
48
49static inline bool gk20a_kind_work_creation(u8 k)
50{
51 return gk20a_kind_work_creation_sked(k) ||
52 gk20a_kind_work_creation_host(k);
53}
54
39static inline bool gk20a_kind_is_supported(u8 k) 55static inline bool gk20a_kind_is_supported(u8 k)
40{ 56{
41 return !!(gk20a_kind_attr[k] & GK20A_KIND_ATTR_SUPPORTED); 57 return !!(gk20a_kind_attr[k] & GK20A_KIND_ATTR_SUPPORTED);