Message ID | 20230127092246.1470865-3-peng.fan@oss.nxp.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | remoteproc: imx_rproc: support firmware in DDR | expand |
On Fri, Jan 27, 2023 at 05:22:42PM +0800, Peng Fan (OSS) wrote: > From: Peng Fan <peng.fan@nxp.com> > > Add i.MX8M and i.MX93 devtype which will be used when parsing the > firmware. > > Signed-off-by: Peng Fan <peng.fan@nxp.com> > --- > drivers/remoteproc/imx_rproc.c | 3 +++ > drivers/remoteproc/imx_rproc.h | 6 ++++++ > 2 files changed, 9 insertions(+) > > diff --git a/drivers/remoteproc/imx_rproc.c b/drivers/remoteproc/imx_rproc.c > index 9fc978e0393c..8a282fb67a4d 100644 > --- a/drivers/remoteproc/imx_rproc.c > +++ b/drivers/remoteproc/imx_rproc.c > @@ -289,6 +289,7 @@ static const struct imx_rproc_dcfg imx_rproc_cfg_imx8mn = { > .att = imx_rproc_att_imx8mn, > .att_size = ARRAY_SIZE(imx_rproc_att_imx8mn), > .method = IMX_RPROC_SMC, > + .devtype = IMX_RPROC_IMX8M, > }; > > static const struct imx_rproc_dcfg imx_rproc_cfg_imx8mq = { > @@ -299,6 +300,7 @@ static const struct imx_rproc_dcfg imx_rproc_cfg_imx8mq = { > .att = imx_rproc_att_imx8mq, > .att_size = ARRAY_SIZE(imx_rproc_att_imx8mq), > .method = IMX_RPROC_MMIO, > + .devtype = IMX_RPROC_IMX8M, > }; > > static const struct imx_rproc_dcfg imx_rproc_cfg_imx8qm = { > @@ -349,6 +351,7 @@ static const struct imx_rproc_dcfg imx_rproc_cfg_imx93 = { > .att = imx_rproc_att_imx93, > .att_size = ARRAY_SIZE(imx_rproc_att_imx93), > .method = IMX_RPROC_SMC, > + .devtype = IMX_RPROC_IMX93, > }; > > static int imx_rproc_start(struct rproc *rproc) > diff --git a/drivers/remoteproc/imx_rproc.h b/drivers/remoteproc/imx_rproc.h > index 1c7e2127c758..43b105ff0175 100644 > --- a/drivers/remoteproc/imx_rproc.h > +++ b/drivers/remoteproc/imx_rproc.h > @@ -26,6 +26,11 @@ enum imx_rproc_method { > IMX_RPROC_SCU_API, > }; > > +enum imx_rproc_devtype { > + IMX_RPROC_IMX8M, > + IMX_RPROC_IMX93, > +}; > + enum imx_rproc_devtype { IMX_RPROC_ANY, IMX_RPROC_IMX8M, IMX_RPROC_IMX93, }; That way all the other boards entries where @devtype isn't specified don't default to IMX_RPROC_IMX8M. > struct imx_rproc_dcfg { > u32 src_reg; > u32 src_mask; > @@ -34,6 +39,7 @@ struct imx_rproc_dcfg { > const struct imx_rproc_att *att; > size_t att_size; > enum imx_rproc_method method; > + enum imx_rproc_devtype devtype; > }; > > #endif /* _IMX_RPROC_H */ > -- > 2.37.1 >
diff --git a/drivers/remoteproc/imx_rproc.c b/drivers/remoteproc/imx_rproc.c index 9fc978e0393c..8a282fb67a4d 100644 --- a/drivers/remoteproc/imx_rproc.c +++ b/drivers/remoteproc/imx_rproc.c @@ -289,6 +289,7 @@ static const struct imx_rproc_dcfg imx_rproc_cfg_imx8mn = { .att = imx_rproc_att_imx8mn, .att_size = ARRAY_SIZE(imx_rproc_att_imx8mn), .method = IMX_RPROC_SMC, + .devtype = IMX_RPROC_IMX8M, }; static const struct imx_rproc_dcfg imx_rproc_cfg_imx8mq = { @@ -299,6 +300,7 @@ static const struct imx_rproc_dcfg imx_rproc_cfg_imx8mq = { .att = imx_rproc_att_imx8mq, .att_size = ARRAY_SIZE(imx_rproc_att_imx8mq), .method = IMX_RPROC_MMIO, + .devtype = IMX_RPROC_IMX8M, }; static const struct imx_rproc_dcfg imx_rproc_cfg_imx8qm = { @@ -349,6 +351,7 @@ static const struct imx_rproc_dcfg imx_rproc_cfg_imx93 = { .att = imx_rproc_att_imx93, .att_size = ARRAY_SIZE(imx_rproc_att_imx93), .method = IMX_RPROC_SMC, + .devtype = IMX_RPROC_IMX93, }; static int imx_rproc_start(struct rproc *rproc) diff --git a/drivers/remoteproc/imx_rproc.h b/drivers/remoteproc/imx_rproc.h index 1c7e2127c758..43b105ff0175 100644 --- a/drivers/remoteproc/imx_rproc.h +++ b/drivers/remoteproc/imx_rproc.h @@ -26,6 +26,11 @@ enum imx_rproc_method { IMX_RPROC_SCU_API, }; +enum imx_rproc_devtype { + IMX_RPROC_IMX8M, + IMX_RPROC_IMX93, +}; + struct imx_rproc_dcfg { u32 src_reg; u32 src_mask; @@ -34,6 +39,7 @@ struct imx_rproc_dcfg { const struct imx_rproc_att *att; size_t att_size; enum imx_rproc_method method; + enum imx_rproc_devtype devtype; }; #endif /* _IMX_RPROC_H */