i.MX8MM - BSP 5.15.52 linux-imx build fails due to removal of rpmsg stanza from imx8mm.dtsi ?

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

i.MX8MM - BSP 5.15.52 linux-imx build fails due to removal of rpmsg stanza from imx8mm.dtsi ?

跳至解决方案
664 次查看
paulw2
Contributor II

Hi,

We're successfully using RPMSG for communication between M4 and A53 cores as well as M4 waking A53 from suspend on i.MX8mm with BSP 5.10.35_2.0.0

While updating to imx-yocto-bsp-5.15.52-2.1.0, the linux-imx build fails. The error relates to parsing our DTS file which contains RPMSG stanza's and includes imx8mm.dtsi for the following :-

 

+       rpmsg: rpmsg{
+               compatible = "fsl,imx8mq-rpmsg";
+               /* up to now, the following channels are used in imx rpmsg
+                * - tx1/rx1: messages channel.
+                * - general interrupt1: remote proc finish re-init rpmsg stack
+                *   when A core is partition reset.
+                */
+               mbox-names = "tx", "rx", "rxdb";
+               mboxes = <&mu 0 1
+                         &mu 1 1
+                         &mu 3 1>;
+               status = "disabled";
+       };

 

The linux-imx git history shows that the rpmsg stanza was removed from imx8mm.dtsi (and others) in BSP 5.15 :-

 

commit 9bfd8f73de67f2bd36026a093d24d3dcbb2b6c6b
Author: Richard Zhu <hongxing.zhu@nxp.com>
Date: Mon Jul 12 16:49:42 2021 +0800

LF-4134-2 arm64: dts: imx8m: remove the local rpmsg support

Since the i.MX8 RPMSG support had been switched to remote proc.
To clean up the codes, remove the local i.MX RPMSG supports.

 

 

 What is meant by the commit comment, "i.MX8 RPMSG support had been switched to remote proc" ?

Has something changed in the RPMSG implementation and configuration in BSP 5.15, if so, how do we perform the configuration we previously did in the DTS file ?

If not, can  we simply add the missing rpmsg stanza to our platform DTS file ??

Thanks in advance.

标签 (1)
0 项奖励
1 解答
642 次查看
Zhiming_Liu
NXP TechSupport
NXP TechSupport

Please refer arch/arm64/boot/dts/freescale/imx8mm-evk-rpmsg.dts:

imx8mm-cm4 {
		compatible = "fsl,imx8mm-cm4";
		rsc-da = <0xb8000000>;
		clocks = <&clk IMX8MM_CLK_M4_DIV>;
		mbox-names = "tx", "rx", "rxdb";
		mboxes = <&mu 0 1
			  &mu 1 1
			  &mu 3 1>;
		memory-region = <&vdevbuffer>, <&vdev0vring0>, <&vdev0vring1>, <&rsc_table>;
		syscon = <&src>;
		fsl,startup-delay-ms = <500>;
	};

The driver is located in  /drivers/remoteproc/imx_rproc.c

 

 

在原帖中查看解决方案

2 回复数
643 次查看
Zhiming_Liu
NXP TechSupport
NXP TechSupport

Please refer arch/arm64/boot/dts/freescale/imx8mm-evk-rpmsg.dts:

imx8mm-cm4 {
		compatible = "fsl,imx8mm-cm4";
		rsc-da = <0xb8000000>;
		clocks = <&clk IMX8MM_CLK_M4_DIV>;
		mbox-names = "tx", "rx", "rxdb";
		mboxes = <&mu 0 1
			  &mu 1 1
			  &mu 3 1>;
		memory-region = <&vdevbuffer>, <&vdev0vring0>, <&vdev0vring1>, <&rsc_table>;
		syscon = <&src>;
		fsl,startup-delay-ms = <500>;
	};

The driver is located in  /drivers/remoteproc/imx_rproc.c

 

 

627 次查看
paulw2
Contributor II

Hi Qmiller,

Thanks very much for your reply to my question and for providing the DTS and driver references.

Best regards,

Paul. 

0 项奖励