[PATCH V2 0/2] remoteproc: imx_rproc: support i.MX8ULP

STALE1867d

Revision v2 of 3 in this series.

4 messages, 2 authors, 2021-06-22 · open the first message on its own page

[PATCH V2 0/2] remoteproc: imx_rproc: support i.MX8ULP

From: Peng Fan (OSS) <hidden>
Date: 2021-06-22 03:40:53

From: Peng Fan <peng.fan@nxp.com>

V2:
 Add R-b from Mathieu
 Add Rob in Cc for dt-bindings

i.MX8ULP features a M33 core + dual A35 core, M33 is kicked by ROM,
so like 7ULP, A35 only communicate with M33.

Based linux-next/master 6-22

Peng Fan (2):
  dt-bindings: remoteproc: imx_rproc: support i.MX8ULP
  remoteproc: imx_rproc: support i.MX8ULP

 .../bindings/remoteproc/fsl,imx-rproc.yaml          |  1 +
 drivers/remoteproc/imx_rproc.c                      | 13 +++++++++++++
 2 files changed, 14 insertions(+)

-- 
2.30.0

[PATCH V2 1/2] dt-bindings: remoteproc: imx_rproc: support i.MX8ULP

From: Peng Fan (OSS) <hidden>
Date: 2021-06-22 03:40:59

From: Peng Fan <peng.fan@nxp.com>

Add i.MX8ULP remote processor(Cortex-M33) compatible string

Signed-off-by: Peng Fan <peng.fan@nxp.com>
---
 Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml | 1 +
 1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml b/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml
index 1dc34cf5a4ea..c28b767d246f 100644
--- a/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml
+++ b/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml
@@ -15,6 +15,7 @@ maintainers:
 properties:
   compatible:
     enum:
+      - fsl,imx8ulp-cm33
       - fsl,imx8mq-cm4
       - fsl,imx8mm-cm4
       - fsl,imx8mn-cm7
-- 
2.30.0

Re: [PATCH V2 1/2] dt-bindings: remoteproc: imx_rproc: support i.MX8ULP

From: Fabio Estevam <festevam@gmail.com>
Date: 2021-06-22 03:43:03

Hi Peng,

On Tue, Jun 22, 2021 at 12:40 AM Peng Fan (OSS) [off-list ref] wrote:
quoted hunk
From: Peng Fan <peng.fan@nxp.com>

Add i.MX8ULP remote processor(Cortex-M33) compatible string

Signed-off-by: Peng Fan <peng.fan@nxp.com>
---
 Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml | 1 +
 1 file changed, 1 insertion(+)
diff --git a/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml b/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml
index 1dc34cf5a4ea..c28b767d246f 100644
--- a/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml
+++ b/Documentation/devicetree/bindings/remoteproc/fsl,imx-rproc.yaml
@@ -15,6 +15,7 @@ maintainers:
 properties:
   compatible:
     enum:
+      - fsl,imx8ulp-cm33
       - fsl,imx8mq-cm4
Please keep the entries in alphabetical order.

[PATCH V2 2/2] remoteproc: imx_rproc: support i.MX8ULP

From: Peng Fan (OSS) <hidden>
Date: 2021-06-22 03:41:06

From: Peng Fan <peng.fan@nxp.com>

i.MX8ULP is a new SoC with Ultra low power support, it has a Cortex-M33
core and two Cortex-A35 cores. We need to add new configuration because
it could not reuse the previous i.MX7/8 configuration.

i.MX8ULP M33 core is kicked by ROM, it is not under control of A35 core.
So need to mark the method is IMX_RPROC_NONE.

Signed-off-by: Peng Fan <peng.fan@nxp.com>
Reviewed-by: Mathieu Poirier <mathieu.poirier@linaro.org>
---
 drivers/remoteproc/imx_rproc.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)
diff --git a/drivers/remoteproc/imx_rproc.c b/drivers/remoteproc/imx_rproc.c
index 7cc0cadea1cc..d88f76f5305e 100644
--- a/drivers/remoteproc/imx_rproc.c
+++ b/drivers/remoteproc/imx_rproc.c
@@ -172,6 +172,12 @@ static const struct imx_rproc_att imx_rproc_att_imx8mq[] = {
 	{ 0x40000000, 0x40000000, 0x80000000, 0 },
 };
 
+static const struct imx_rproc_att imx_rproc_att_imx8ulp[] = {
+	{0x1FFC0000, 0x1FFC0000, 0xC0000, ATT_OWN},
+	{0x21000000, 0x21000000, 0x10000, ATT_OWN},
+	{0x80000000, 0x80000000, 0x60000000, 0}
+};
+
 static const struct imx_rproc_att imx_rproc_att_imx7ulp[] = {
 	{0x1FFD0000, 0x1FFD0000, 0x30000, ATT_OWN},
 	{0x20000000, 0x20000000, 0x10000, ATT_OWN},
@@ -246,6 +252,12 @@ static const struct imx_rproc_dcfg imx_rproc_cfg_imx8mq = {
 	.method		= IMX_RPROC_MMIO,
 };
 
+static const struct imx_rproc_dcfg imx_rproc_cfg_imx8ulp = {
+	.att		= imx_rproc_att_imx8ulp,
+	.att_size	= ARRAY_SIZE(imx_rproc_att_imx8ulp),
+	.method		= IMX_RPROC_NONE,
+};
+
 static const struct imx_rproc_dcfg imx_rproc_cfg_imx7ulp = {
 	.att		= imx_rproc_att_imx7ulp,
 	.att_size	= ARRAY_SIZE(imx_rproc_att_imx7ulp),
@@ -824,6 +836,7 @@ static const struct of_device_id imx_rproc_of_match[] = {
 	{ .compatible = "fsl,imx8mm-cm4", .data = &imx_rproc_cfg_imx8mq },
 	{ .compatible = "fsl,imx8mn-cm7", .data = &imx_rproc_cfg_imx8mn },
 	{ .compatible = "fsl,imx8mp-cm7", .data = &imx_rproc_cfg_imx8mn },
+	{ .compatible = "fsl,imx8ulp-cm33", .data = &imx_rproc_cfg_imx8ulp },
 	{},
 };
 MODULE_DEVICE_TABLE(of, imx_rproc_of_match);
-- 
2.30.0
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help