On 7.05.2023 19:20, Dmitry Baryshkov wrote: > On MSM8974 and APQ8074 the MSS requires loading raw MBA image instead of > the ELF file. Skip the ELF headers if mba.mbn was specified as the > firmware image. > > Fixes: 051fb70fd4ea ("remoteproc: qcom: Driver for the self-authenticating Hexagon v5") > Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx> > --- > drivers/remoteproc/qcom_q6v5_mss.c | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-) > > diff --git a/drivers/remoteproc/qcom_q6v5_mss.c b/drivers/remoteproc/qcom_q6v5_mss.c > index ab053084f7a2..1603c5be44c8 100644 > --- a/drivers/remoteproc/qcom_q6v5_mss.c > +++ b/drivers/remoteproc/qcom_q6v5_mss.c > @@ -477,7 +477,11 @@ static int q6v5_load(struct rproc *rproc, const struct firmware *fw) > return -EBUSY; > } > > - memcpy(mba_region, fw->data, fw->size); > + if (qproc->version == MSS_MSM8974 && > + !memcmp(fw->data, ELFMAG, SELFMAG)) > + memcpy(mba_region, fw->data + 0x1000, fw->size - 0x1000); I think this deserves some kind of a define instead of just a magic no Konrad > + else > + memcpy(mba_region, fw->data, fw->size); > q6v5_debug_policy_load(qproc, mba_region); > memunmap(mba_region); >