diff options
Diffstat (limited to 'drivers/gpu/nvgpu/gm20b/pmu_gm20b.c')
-rw-r--r-- | drivers/gpu/nvgpu/gm20b/pmu_gm20b.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/drivers/gpu/nvgpu/gm20b/pmu_gm20b.c b/drivers/gpu/nvgpu/gm20b/pmu_gm20b.c index c25d2d56..28b40b1c 100644 --- a/drivers/gpu/nvgpu/gm20b/pmu_gm20b.c +++ b/drivers/gpu/nvgpu/gm20b/pmu_gm20b.c | |||
@@ -161,7 +161,7 @@ static void pmu_handle_acr_init_wpr_msg(struct gk20a *g, struct pmu_msg *msg, | |||
161 | gm20b_dbg_pmu("reply PMU_ACR_CMD_ID_INIT_WPR_REGION"); | 161 | gm20b_dbg_pmu("reply PMU_ACR_CMD_ID_INIT_WPR_REGION"); |
162 | 162 | ||
163 | if (msg->msg.acr.acrmsg.errorcode == PMU_ACR_SUCCESS) | 163 | if (msg->msg.acr.acrmsg.errorcode == PMU_ACR_SUCCESS) |
164 | g->ops.pmu.lspmuwprinitdone = true; | 164 | g->ops.pmu.lspmuwprinitdone = 1; |
165 | gk20a_dbg_fn("done"); | 165 | gk20a_dbg_fn("done"); |
166 | } | 166 | } |
167 | 167 | ||
@@ -213,7 +213,7 @@ void gm20b_pmu_load_lsf(struct gk20a *g, u8 falcon_id) | |||
213 | gk20a_dbg_fn(""); | 213 | gk20a_dbg_fn(""); |
214 | 214 | ||
215 | gm20b_dbg_pmu("wprinit status = %x\n", g->ops.pmu.lspmuwprinitdone); | 215 | gm20b_dbg_pmu("wprinit status = %x\n", g->ops.pmu.lspmuwprinitdone); |
216 | if (g->ops.pmu.lspmuwprinitdone && g->ops.pmu.fecsbootstrapdone) { | 216 | if (g->ops.pmu.lspmuwprinitdone) { |
217 | /* send message to load FECS falcon */ | 217 | /* send message to load FECS falcon */ |
218 | memset(&cmd, 0, sizeof(struct pmu_cmd)); | 218 | memset(&cmd, 0, sizeof(struct pmu_cmd)); |
219 | cmd.hdr.unit_id = PMU_UNIT_ACR; | 219 | cmd.hdr.unit_id = PMU_UNIT_ACR; |
@@ -224,8 +224,8 @@ void gm20b_pmu_load_lsf(struct gk20a *g, u8 falcon_id) | |||
224 | cmd.cmd.acr.bootstrap_falcon.flags = | 224 | cmd.cmd.acr.bootstrap_falcon.flags = |
225 | PMU_ACR_CMD_BOOTSTRAP_FALCON_FLAGS_RESET_YES; | 225 | PMU_ACR_CMD_BOOTSTRAP_FALCON_FLAGS_RESET_YES; |
226 | cmd.cmd.acr.bootstrap_falcon.falconid = falcon_id; | 226 | cmd.cmd.acr.bootstrap_falcon.falconid = falcon_id; |
227 | gm20b_dbg_pmu("cmd post PMU_ACR_CMD_ID_BOOTSTRAP_FALCON"); | 227 | gm20b_dbg_pmu("cmd post PMU_ACR_CMD_ID_BOOTSTRAP_FALCON: %x\n", |
228 | g->ops.pmu.fecsrecoveryinprogress = 1; | 228 | falcon_id); |
229 | gk20a_pmu_cmd_post(g, &cmd, NULL, NULL, PMU_COMMAND_QUEUE_HPQ, | 229 | gk20a_pmu_cmd_post(g, &cmd, NULL, NULL, PMU_COMMAND_QUEUE_HPQ, |
230 | pmu_handle_fecs_boot_acr_msg, pmu, &seq, ~0); | 230 | pmu_handle_fecs_boot_acr_msg, pmu, &seq, ~0); |
231 | } | 231 | } |
@@ -244,7 +244,6 @@ void gm20b_init_pmu_ops(struct gpu_ops *gops) | |||
244 | gops->pmu.init_wpr_region = NULL; | 244 | gops->pmu.init_wpr_region = NULL; |
245 | } | 245 | } |
246 | gops->pmu.pmu_setup_elpg = gm20b_pmu_setup_elpg; | 246 | gops->pmu.pmu_setup_elpg = gm20b_pmu_setup_elpg; |
247 | gops->pmu.lspmuwprinitdone = false; | 247 | gops->pmu.lspmuwprinitdone = 0; |
248 | gops->pmu.fecsbootstrapdone = false; | 248 | gops->pmu.fecsbootstrapdone = false; |
249 | gops->pmu.fecsrecoveryinprogress = 0; | ||
250 | } | 249 | } |