Loading drivers/soc/qcom/pil_bg_intf.h +1 −0 Original line number Diff line number Diff line Loading @@ -22,6 +22,7 @@ enum bg_tz_commands { BGPIL_RAMDUMP, BGPIL_IMAGE_LOAD, BGPIL_AUTH_MDT, BGPIL_DLOAD_CONT, }; /* tzapp bg request.*/ Loading drivers/soc/qcom/subsys-pil-bg.c +8 −0 Original line number Diff line number Diff line Loading @@ -36,6 +36,7 @@ #define desc_to_data(d) container_of(d, struct pil_bg_data, desc) #define subsys_to_data(d) container_of(d, struct pil_bg_data, subsys_desc) #define BG_RAMDUMP_SZ 0x00102000 #define BG_CRASH_IN_TWM 2 /** * struct pil_bg_data * @qseecom_handle: handle of TZ app Loading Loading @@ -264,6 +265,7 @@ static int bg_powerup(const struct subsys_desc *subsys) return ret; } enable_irq(bg_data->status_irq); enable_irq(bg_data->errfatal_irq); ret = wait_for_err_ready(bg_data); if (ret) { dev_err(bg_data->desc.dev, Loading Loading @@ -376,6 +378,12 @@ static int bg_auth_and_xfer(struct pil_desc *pil) bg_tz_req.size_fw = bg_data->size_fw; ret = bgpil_tzapp_comm(bg_data, &bg_tz_req); if (bg_data->cmd_status == BG_CRASH_IN_TWM) { /* Do ramdump and resend boot cmd */ bg_data->subsys_desc.ramdump(true, &bg_data->subsys_desc); bg_tz_req.tzapp_bg_cmd = BGPIL_DLOAD_CONT; ret = bgpil_tzapp_comm(bg_data, &bg_tz_req); } if (ret || bg_data->cmd_status) { dev_err(pil->dev, "%s: BGPIL_IMAGE_LOAD qseecom call failed\n", Loading Loading
drivers/soc/qcom/pil_bg_intf.h +1 −0 Original line number Diff line number Diff line Loading @@ -22,6 +22,7 @@ enum bg_tz_commands { BGPIL_RAMDUMP, BGPIL_IMAGE_LOAD, BGPIL_AUTH_MDT, BGPIL_DLOAD_CONT, }; /* tzapp bg request.*/ Loading
drivers/soc/qcom/subsys-pil-bg.c +8 −0 Original line number Diff line number Diff line Loading @@ -36,6 +36,7 @@ #define desc_to_data(d) container_of(d, struct pil_bg_data, desc) #define subsys_to_data(d) container_of(d, struct pil_bg_data, subsys_desc) #define BG_RAMDUMP_SZ 0x00102000 #define BG_CRASH_IN_TWM 2 /** * struct pil_bg_data * @qseecom_handle: handle of TZ app Loading Loading @@ -264,6 +265,7 @@ static int bg_powerup(const struct subsys_desc *subsys) return ret; } enable_irq(bg_data->status_irq); enable_irq(bg_data->errfatal_irq); ret = wait_for_err_ready(bg_data); if (ret) { dev_err(bg_data->desc.dev, Loading Loading @@ -376,6 +378,12 @@ static int bg_auth_and_xfer(struct pil_desc *pil) bg_tz_req.size_fw = bg_data->size_fw; ret = bgpil_tzapp_comm(bg_data, &bg_tz_req); if (bg_data->cmd_status == BG_CRASH_IN_TWM) { /* Do ramdump and resend boot cmd */ bg_data->subsys_desc.ramdump(true, &bg_data->subsys_desc); bg_tz_req.tzapp_bg_cmd = BGPIL_DLOAD_CONT; ret = bgpil_tzapp_comm(bg_data, &bg_tz_req); } if (ret || bg_data->cmd_status) { dev_err(pil->dev, "%s: BGPIL_IMAGE_LOAD qseecom call failed\n", Loading