On 3/12/26 14:36, Peng Fan (OSS) wrote: > From: Peng Fan <[email protected]> > > Add basic remoteproc support for the i.MX94 M-core processors, including > address translation tables and device configuration data for the CM70, > CM71, and CM33S cores. > > Signed-off-by: Peng Fan <[email protected]>
Can you please mention in the commit message what is 'dev addr' and 'sys addr'. This is a thing that I always spent some time to figure it out. Thus adding this information to the commit message will help for future users. With that, Reviewed-by: Daniel Baluta <[email protected]> > --- > drivers/remoteproc/imx_rproc.c | 68 > ++++++++++++++++++++++++++++++++++++++++++ > 1 file changed, 68 insertions(+) > > diff --git a/drivers/remoteproc/imx_rproc.c b/drivers/remoteproc/imx_rproc.c > index > 9b07103857b13018bdf62431cbfeffa3e3c1a15c..8278643eeb390518981e8beae086b73be265f50b > 100644 > --- a/drivers/remoteproc/imx_rproc.c > +++ b/drivers/remoteproc/imx_rproc.c > @@ -146,6 +146,47 @@ static const struct imx_rproc_att > imx_rproc_att_imx95_m7[] = { > { 0x80000000, 0x80000000, 0x50000000, 0 }, > }; > > +static const struct imx_rproc_att imx_rproc_att_imx94_m70[] = { > + /* dev addr , sys addr , size , flags */ > + /* TCM CODE NON-SECURE */ > + { 0x00000000, 0x203C0000, 0x00040000, ATT_OWN | ATT_IOMEM }, > + /* TCM SYS NON-SECURE*/ > + { 0x20000000, 0x20400000, 0x00040000, ATT_OWN | ATT_IOMEM }, > + > + /* DDR */ > + { 0x80000000, 0x80000000, 0x50000000, 0 }, > +}; > + > +static const struct imx_rproc_att imx_rproc_att_imx94_m71[] = { > + /* dev addr , sys addr , size , flags */ > + /* TCM CODE NON-SECURE */ > + { 0x00000000, 0x202C0000, 0x00040000, ATT_OWN | ATT_IOMEM }, > + /* TCM SYS NON-SECURE*/ > + { 0x20000000, 0x20300000, 0x00040000, ATT_OWN | ATT_IOMEM }, > + > + /* DDR */ > + { 0x80000000, 0x80000000, 0x50000000, 0 }, > +}; > + > +static const struct imx_rproc_att imx_rproc_att_imx94_m33s[] = { > + /* dev addr , sys addr , size , flags */ > + /* TCM CODE NON-SECURE */ > + { 0x0FFC0000, 0x209C0000, 0x00040000, ATT_OWN | ATT_IOMEM }, > + /* TCM CODE SECURE */ > + { 0x1FFC0000, 0x209C0000, 0x00040000, ATT_OWN | ATT_IOMEM }, > + > + /* TCM SYS NON-SECURE */ > + { 0x20000000, 0x20A00000, 0x00040000, ATT_OWN | ATT_IOMEM }, > + /* TCM SYS NON-SECURE */ > + { 0x30000000, 0x20A00000, 0x00040000, ATT_OWN | ATT_IOMEM }, > + > + /* M33S OCRAM */ > + { 0x20800000, 0x20800000, 0x180000, ATT_OWN | ATT_IOMEM }, > + > + /* DDR */ > + { 0x80000000, 0x80000000, 0x50000000, 0 }, > +}; > + > static const struct imx_rproc_att imx_rproc_att_imx93[] = { > /* dev addr , sys addr , size , flags */ > /* TCM CODE NON-SECURE */ > @@ -1466,6 +1507,30 @@ static const struct imx_rproc_dcfg imx_rproc_cfg_imx93 > = { > .flags = IMX_RPROC_NEED_CLKS, > }; > > +static const struct imx_rproc_dcfg imx_rproc_cfg_imx94_m70 = { > + .att = imx_rproc_att_imx94_m70, > + .att_size = ARRAY_SIZE(imx_rproc_att_imx94_m70), > + .ops = &imx_rproc_ops_sm_lmm, > + .cpuid = 1, > + .lmid = 2, > +}; > + > +static const struct imx_rproc_dcfg imx_rproc_cfg_imx94_m71 = { > + .att = imx_rproc_att_imx94_m71, > + .att_size = ARRAY_SIZE(imx_rproc_att_imx94_m71), > + .ops = &imx_rproc_ops_sm_lmm, > + .cpuid = 7, > + .lmid = 3, > +}; > + > +static const struct imx_rproc_dcfg imx_rproc_cfg_imx94_m33s = { > + .att = imx_rproc_att_imx94_m33s, > + .att_size = ARRAY_SIZE(imx_rproc_att_imx94_m33s), > + .ops = &imx_rproc_ops_sm_lmm, > + .cpuid = 8, > + .lmid = 1, > +}; > + > static const struct imx_rproc_dcfg imx_rproc_cfg_imx95_m7 = { > .att = imx_rproc_att_imx95_m7, > .att_size = ARRAY_SIZE(imx_rproc_att_imx95_m7), > @@ -1489,6 +1554,9 @@ static const struct of_device_id imx_rproc_of_match[] = > { > { .compatible = "fsl,imx8qm-cm4", .data = &imx_rproc_cfg_imx8qm }, > { .compatible = "fsl,imx8ulp-cm33", .data = &imx_rproc_cfg_imx8ulp }, > { .compatible = "fsl,imx93-cm33", .data = &imx_rproc_cfg_imx93 }, > + { .compatible = "fsl,imx94-cm70", .data = &imx_rproc_cfg_imx94_m70 }, > + { .compatible = "fsl,imx94-cm71", .data = &imx_rproc_cfg_imx94_m71 }, > + { .compatible = "fsl,imx94-cm33s", .data = &imx_rproc_cfg_imx94_m33s }, > { .compatible = "fsl,imx95-cm7", .data = &imx_rproc_cfg_imx95_m7 }, > {}, > }; >

