From f30a685f48768b784fb92652d945f43a289e13c4 Mon Sep 17 00:00:00 2001 From: Mahantesh Kumbar Date: Fri, 21 Apr 2017 16:49:12 +0530 Subject: gpu: nvgpu: interface layer for falcon - struct nvgpu_falcon to hold properties of falcon controller - falcon controller interface layer which establish access to required falcon controller HAL based on struct nvgpu_falcon member flcn_id & flcn_base parameter. - each falcon nvgpu_falcon struct initialized during init with id, base-address along with other properties at HAL. - Added defines related to flacon controller. Change-Id: Ia7777c01ecc542150ddd72f8603b7b4475522b58 Signed-off-by: Mahantesh Kumbar Reviewed-on: http://git-master/r/1467523 Reviewed-by: mobile promotions Tested-by: mobile promotions --- drivers/gpu/nvgpu/gk20a/gk20a.h | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'drivers/gpu/nvgpu/gk20a') diff --git a/drivers/gpu/nvgpu/gk20a/gk20a.h b/drivers/gpu/nvgpu/gk20a/gk20a.h index 71ff8d3e..74e2c688 100644 --- a/drivers/gpu/nvgpu/gk20a/gk20a.h +++ b/drivers/gpu/nvgpu/gk20a/gk20a.h @@ -46,6 +46,7 @@ struct dbg_profiler_object_data; #include #include #include +#include #include "clk_gk20a.h" #include "ce2_gk20a.h" @@ -869,6 +870,9 @@ struct gpu_ops { void (*enable_shadow_rom)(struct gk20a *g); void (*disable_shadow_rom)(struct gk20a *g); } xve; + struct { + void (*falcon_hal_sw_init)(struct nvgpu_falcon *flcn); + } falcon; }; struct nvgpu_bios_ucode { @@ -944,6 +948,10 @@ struct gk20a { struct rw_semaphore busy_lock; + struct nvgpu_falcon pmu_flcn; + struct nvgpu_falcon sec2_flcn; + struct nvgpu_falcon fecs_flcn; + struct nvgpu_falcon gpccs_flcn; struct clk_gk20a clk; struct fifo_gk20a fifo; struct gr_gk20a gr; -- cgit v1.2.2