gpu: nvgpu: enable clk_arb for dGPU safety

Enable CONFIG_NVGPU_CLK_ARB for dGPU safety build.

Use CONFIG_NVGPU_NON_FUSA for invocation of non-safe functions:
- nvgpu_hr_timestamp
- nvgpu_hr_timestamp_us

Jira NVGPU-4661
Jira NVGPU-5235 (for addressing usage of above functions).

Change-Id: I271fdbc45c1e4d01cb70d50dcf63d15b9df33c76
Signed-off-by: Thomas Fleury <tfleury@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2317842
Reviewed-by: automaticguardword <automaticguardword@nvidia.com>
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: svc-mobile-coverity <svc-mobile-coverity@nvidia.com>
Reviewed-by: svc-mobile-misra <svc-mobile-misra@nvidia.com>
Reviewed-by: svc-mobile-cert <svc-mobile-cert@nvidia.com>
Reviewed-by: Deepak Nibade <dnibade@nvidia.com>
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
GVS: Gerrit_Virtual_Submit
This commit is contained in:
Thomas Fleury
2020-03-24 12:23:24 -04:00
committed by Alex Waterman
parent 401d4cbc5f
commit 88c774e5d1
3 changed files with 9 additions and 1 deletions

View File

@@ -72,11 +72,14 @@ static void nvgpu_clk_arb_queue_notification(struct gk20a *g,
u32 alarm_mask) {
u32 queue_index;
u64 timestamp;
u64 timestamp = 0U;
queue_index = U32(nvgpu_atomic_inc_return(&queue->tail)) % queue->size;
#ifdef CONFIG_NVGPU_NON_FUSA
/* get current timestamp */
timestamp = (u64) nvgpu_hr_timestamp();
#endif
queue->clk_q_notifications[queue_index].timestamp = timestamp;
queue->clk_q_notifications[queue_index].clk_notification = alarm_mask;