diff options
author | Terje Bergstrom <tbergstrom@nvidia.com> | 2014-04-25 08:00:54 -0400 |
---|---|---|
committer | Dan Willemsen <dwillemsen@nvidia.com> | 2015-03-18 15:09:57 -0400 |
commit | 1c9aaa1eafcf91fbc29404b449f2bec072c804a5 (patch) | |
tree | 702f9933600962f05d0d76a9624a67f027b7bea8 /drivers/gpu/nvgpu/gm20b/hw_ltc_gm20b.h | |
parent | 24fc5e36a7f4fe2f36f78c6c91909595964f1645 (diff) |
gpu: nvgpu: Implement ELPG flush for gm20b
ELPG flush is initiated from a common broadcast register, but must be
waited on via per-L2 registers. Split gk20a and gm20b versions of
the flush.
Change-Id: I75c2d65e8da311b50d35bee70308b60464ec2d4d
Signed-off-by: Terje Bergstrom <tbergstrom@nvidia.com>
Reviewed-on: http://git-master/r/401545
Reviewed-by: Automatic_Commit_Validation_User
Diffstat (limited to 'drivers/gpu/nvgpu/gm20b/hw_ltc_gm20b.h')
-rw-r--r-- | drivers/gpu/nvgpu/gm20b/hw_ltc_gm20b.h | 20 |
1 files changed, 18 insertions, 2 deletions
diff --git a/drivers/gpu/nvgpu/gm20b/hw_ltc_gm20b.h b/drivers/gpu/nvgpu/gm20b/hw_ltc_gm20b.h index 28c58f50..9840805d 100644 --- a/drivers/gpu/nvgpu/gm20b/hw_ltc_gm20b.h +++ b/drivers/gpu/nvgpu/gm20b/hw_ltc_gm20b.h | |||
@@ -96,11 +96,11 @@ static inline u32 ltc_ltcs_ltss_cbc_ctrl1_r(void) | |||
96 | } | 96 | } |
97 | static inline u32 ltc_ltcs_ltss_cbc_ctrl1_clean_active_f(void) | 97 | static inline u32 ltc_ltcs_ltss_cbc_ctrl1_clean_active_f(void) |
98 | { | 98 | { |
99 | return 0x1; | 99 | return 0x1; |
100 | } | 100 | } |
101 | static inline u32 ltc_ltcs_ltss_cbc_ctrl1_invalidate_active_f(void) | 101 | static inline u32 ltc_ltcs_ltss_cbc_ctrl1_invalidate_active_f(void) |
102 | { | 102 | { |
103 | return 0x2; | 103 | return 0x2; |
104 | } | 104 | } |
105 | static inline u32 ltc_ltcs_ltss_cbc_ctrl1_clear_v(u32 r) | 105 | static inline u32 ltc_ltcs_ltss_cbc_ctrl1_clear_v(u32 r) |
106 | { | 106 | { |
@@ -258,6 +258,22 @@ static inline u32 ltc_ltc0_ltss_g_elpg_flush_pending_f(void) | |||
258 | { | 258 | { |
259 | return 0x1; | 259 | return 0x1; |
260 | } | 260 | } |
261 | static inline u32 ltc_ltc1_ltss_g_elpg_r(void) | ||
262 | { | ||
263 | return 0x00142214; | ||
264 | } | ||
265 | static inline u32 ltc_ltc1_ltss_g_elpg_flush_v(u32 r) | ||
266 | { | ||
267 | return (r >> 0) & 0x1; | ||
268 | } | ||
269 | static inline u32 ltc_ltc1_ltss_g_elpg_flush_pending_v(void) | ||
270 | { | ||
271 | return 0x00000001; | ||
272 | } | ||
273 | static inline u32 ltc_ltc1_ltss_g_elpg_flush_pending_f(void) | ||
274 | { | ||
275 | return 0x1; | ||
276 | } | ||
261 | static inline u32 ltc_ltc0_ltss_intr_r(void) | 277 | static inline u32 ltc_ltc0_ltss_intr_r(void) |
262 | { | 278 | { |
263 | return 0x0014020c; | 279 | return 0x0014020c; |