summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/common/pmu/pmu_fw.c
diff options
context:
space:
mode:
authorMahantesh Kumbar <mkumbar@nvidia.com>2018-07-11 05:30:45 -0400
committermobile promotions <svcmobile_promotions@nvidia.com>2018-07-31 04:25:41 -0400
commit2d454db04fcc0c03e05b4665831e5780240d79b8 (patch)
treec18fd4bc302ea68e57e1e1d95c0f253e800bc043 /drivers/gpu/nvgpu/common/pmu/pmu_fw.c
parentd32692ae2427693daf85b3c7b4e24cd36471dec6 (diff)
gpu: nvgpu: falcon queue support
-Renamed "struct pmu_queue" to "struct nvgpu_falcon_queue" & moved to falcon.h -Renamed pmu_queue_* functions to flcn_queue_* & moved to new file falcon_queue.c -Created ops for queue functions in struct nvgpu_falcon_queue to support different queue types like DMEM/FB-Q. -Created ops in nvgpu_falcon_engine_dependency_ops to add engine specific queue functionality & assigned correct HAL functions in hal*.c file. -Made changes in dependent functions as needed to replace struct pmu_queue & calling queue functions using nvgpu_falcon_queue data structure. -Replaced input param "struct nvgpu_pmu *pmu" with "struct gk20a *g" for pmu ops pmu_queue_head/pmu_queue_tail & also for functions gk20a_pmu_queue_head()/ gk20a_pmu_queue_tail(). -Made changes in nvgpu_pmu_queue_init() to use nvgpu_falcon_queue for PMU queue. -Modified Makefile to include falcon_queue.o -Modified Makefile.sources to include falcon_queue.c Change-Id: I956328f6631b7154267fd5a29eaa1826190d99d1 Signed-off-by: Mahantesh Kumbar <mkumbar@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/1776070 Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/common/pmu/pmu_fw.c')
-rw-r--r--drivers/gpu/nvgpu/common/pmu/pmu_fw.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/drivers/gpu/nvgpu/common/pmu/pmu_fw.c b/drivers/gpu/nvgpu/common/pmu/pmu_fw.c
index 359c19ca..53eae49a 100644
--- a/drivers/gpu/nvgpu/common/pmu/pmu_fw.c
+++ b/drivers/gpu/nvgpu/common/pmu/pmu_fw.c
@@ -848,7 +848,8 @@ static void perfmon_cmd_init_set_mov_avg_v1(struct pmu_perfmon_cmd *pc,
848 init->samples_in_moving_avg = value; 848 init->samples_in_moving_avg = value;
849} 849}
850 850
851static void get_pmu_init_msg_pmu_queue_params_v1(struct pmu_queue *queue, 851static void get_pmu_init_msg_pmu_queue_params_v1(
852 struct nvgpu_falcon_queue *queue,
852 u32 id, void *pmu_init_msg) 853 u32 id, void *pmu_init_msg)
853{ 854{
854 struct pmu_init_msg_pmu_v1 *init = 855 struct pmu_init_msg_pmu_v1 *init =
@@ -859,7 +860,8 @@ static void get_pmu_init_msg_pmu_queue_params_v1(struct pmu_queue *queue,
859 queue->size = init->queue_info[id].size; 860 queue->size = init->queue_info[id].size;
860} 861}
861 862
862static void get_pmu_init_msg_pmu_queue_params_v4(struct pmu_queue *queue, 863static void get_pmu_init_msg_pmu_queue_params_v4(
864 struct nvgpu_falcon_queue *queue,
863 u32 id, void *pmu_init_msg) 865 u32 id, void *pmu_init_msg)
864{ 866{
865 struct pmu_init_msg_pmu_v4 *init = pmu_init_msg; 867 struct pmu_init_msg_pmu_v4 *init = pmu_init_msg;
@@ -885,7 +887,8 @@ static void get_pmu_init_msg_pmu_queue_params_v4(struct pmu_queue *queue,
885 queue->offset = init->queue_offset + current_ptr; 887 queue->offset = init->queue_offset + current_ptr;
886} 888}
887 889
888static void get_pmu_init_msg_pmu_queue_params_v5(struct pmu_queue *queue, 890static void get_pmu_init_msg_pmu_queue_params_v5(
891 struct nvgpu_falcon_queue *queue,
889 u32 id, void *pmu_init_msg) 892 u32 id, void *pmu_init_msg)
890{ 893{
891 struct pmu_init_msg_pmu_v5 *init = pmu_init_msg; 894 struct pmu_init_msg_pmu_v5 *init = pmu_init_msg;
@@ -911,7 +914,8 @@ static void get_pmu_init_msg_pmu_queue_params_v5(struct pmu_queue *queue,
911 queue->offset = init->queue_offset + current_ptr; 914 queue->offset = init->queue_offset + current_ptr;
912} 915}
913 916
914static void get_pmu_init_msg_pmu_queue_params_v3(struct pmu_queue *queue, 917static void get_pmu_init_msg_pmu_queue_params_v3(
918 struct nvgpu_falcon_queue *queue,
915 u32 id, void *pmu_init_msg) 919 u32 id, void *pmu_init_msg)
916{ 920{
917 struct pmu_init_msg_pmu_v3 *init = 921 struct pmu_init_msg_pmu_v3 *init =