summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/nvgpu/include
diff options
context:
space:
mode:
authorMahantesh Kumbar <mkumbar@nvidia.com>2017-12-07 13:41:13 -0500
committermobile promotions <svcmobile_promotions@nvidia.com>2018-01-25 17:24:33 -0500
commit99e808567ca358e0e6d03f4731b81854070266a3 (patch)
treead8b851f0a2c50f79be3ebd003f57d35bf705909 /drivers/gpu/nvgpu/include
parent729403f545c5bc26ce208d38db65962596951e0a (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.h25
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 */
138struct 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_ */