diff options
author | Mahantesh Kumbar <mkumbar@nvidia.com> | 2017-12-07 13:41:13 -0500 |
---|---|---|
committer | mobile promotions <svcmobile_promotions@nvidia.com> | 2018-01-25 17:24:33 -0500 |
commit | 99e808567ca358e0e6d03f4731b81854070266a3 (patch) | |
tree | ad8b851f0a2c50f79be3ebd003f57d35bf705909 /drivers/gpu/nvgpu/include | |
parent | 729403f545c5bc26ce208d38db65962596951e0a (diff) |
gpu: nvgpu: gv100: BOOTSTRAP_GR_FALCONS using RPC
- Created nv_pmu_rpc_struct_acr_bootstrap_gr_falcons struct
- gv100_load_falcon_ucode() function to bootstrap GR
flacons using RPC, wait for INIT_WPR_REGION before
creating & executing BOOTSTRAP_GR_FALCONS RPC.
- Added code to handle BOOTSTRAP_GR_FALCONS ack in
RPC handler
Change-Id: If70dc75bb2789970382853fb001d970a346b2915
Signed-off-by: Mahantesh Kumbar <mkumbar@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/1613316
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'drivers/gpu/nvgpu/include')
-rw-r--r-- | drivers/gpu/nvgpu/include/nvgpu/pmuif/gpmuif_acr.h | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/drivers/gpu/nvgpu/include/nvgpu/pmuif/gpmuif_acr.h b/drivers/gpu/nvgpu/include/nvgpu/pmuif/gpmuif_acr.h index bc3b1056..c1a4b360 100644 --- a/drivers/gpu/nvgpu/include/nvgpu/pmuif/gpmuif_acr.h +++ b/drivers/gpu/nvgpu/include/nvgpu/pmuif/gpmuif_acr.h | |||
@@ -131,4 +131,29 @@ struct nv_pmu_rpc_struct_acr_init_wpr_region { | |||
131 | u32 scratch[1]; | 131 | u32 scratch[1]; |
132 | }; | 132 | }; |
133 | 133 | ||
134 | /* | ||
135 | * structure that holds data used to | ||
136 | * execute BOOTSTRAP_GR_FALCONS RPC. | ||
137 | */ | ||
138 | struct nv_pmu_rpc_struct_acr_bootstrap_gr_falcons { | ||
139 | /*[IN/OUT] Must be first field in RPC structure */ | ||
140 | struct nv_pmu_rpc_header hdr; | ||
141 | /* [IN] Mask of falcon IDs @ref LSF_FALCON_ID_<XYZ> */ | ||
142 | u32 falcon_id_mask; | ||
143 | /* | ||
144 | * [IN] Boostrapping flags @ref | ||
145 | * PMU_ACR_CMD_BOOTSTRAP_FALCON_FLAGS_<XYZ> | ||
146 | */ | ||
147 | u32 flags; | ||
148 | /* [IN] Indicate whether the particular falon uses VA */ | ||
149 | u32 falcon_va_mask; | ||
150 | /* | ||
151 | * [IN] WPR Base Address in VA. The Inst Block containing | ||
152 | * this VA should be bound to both PMU and GR falcons | ||
153 | * during the falcon boot | ||
154 | */ | ||
155 | struct falc_u64 wpr_base_virtual; | ||
156 | u32 scratch[1]; | ||
157 | }; | ||
158 | |||
134 | #endif /* _GPMUIFACR_H_ */ | 159 | #endif /* _GPMUIFACR_H_ */ |