iMX8QXP I2C RPBUS configuration

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

iMX8QXP I2C RPBUS configuration

跳至解决方案
2,041 次查看
ranjithkumar_kv
Contributor II

Hi NXP Team,

We are using iMX8QXP as our SoC with our custom design. In the EVK when we disable the i2c_rpbus_5, i2c_rpbus_15 nodes in the imx8x-mek-rpmsg.dtsi file we are facing failure in booting of A35. We are using the default power mode application in the M4 side.

Hence please let us know on what basis we need to allocate the i2c_rpbus nodes and whether is it mandatory to allocate i2c_rpbus nodes if we wish to use M4 along with A35?.


Regards,

Ranjith Kumar.

标记 (2)
0 项奖励
回复
1 解答
1,885 次查看
Zhiming_Liu
NXP TechSupport
NXP TechSupport

Hi @ranjithkumar_kv 

If you have disabled the i2c_rpbus_5 node, please also disabled it's slave devices or comment the whole i2c_rpbus_5 node in rpmsg.dtsi

在原帖中查看解决方案

0 项奖励
回复
17 回复数
1,559 次查看
ranjithkumar_kv
Contributor II

Hi Zhiming,

We have received our target board and when I boot the board with M4 having only one i2c bus (mapped to i2c1 in the mek.dtsi file) in the rpmsg.dtsi file, we're facing kernel panic from imx-rproc driver and when I boot the board without M4 there is no issue in booting. Attaching the logs of the kernel panic below.

Please look into it and let me know what is the RCA of this issue.


Regards,

Ranjith Kumar.

0 项奖励
回复
1,551 次查看
Zhiming_Liu
NXP TechSupport
NXP TechSupport

Hi @ranjithkumar_kv 

Can you share your device tree file?

Thanks

0 项奖励
回复
1,547 次查看
ranjithkumar_kv
Contributor II

Hi Zhiming,

Please find the dtsi files in the attachment (dtsi.zip).

Regards,

Ranjith Kumar.

0 项奖励
回复
1,545 次查看
Zhiming_Liu
NXP TechSupport
NXP TechSupport

Hi @ranjithkumar_kv 

Have you load the m4_0.bin in uboot?

Zhiming_Liu_1-1715241457697.png

 

 

0 项奖励
回复
1,527 次查看
ranjithkumar_kv
Contributor II
Hi Zhiming,

We haven't modified the U-boot source code other than the dts, defconfig and board file changes. We have used "flash_linux_m4" flag for booting with M4 and "flash" flag for booting without M4 in the imx-mkimage compilation.

Regards,
Ranjith Kumar.
0 项奖励
回复
1,505 次查看
Zhiming_Liu
NXP TechSupport
NXP TechSupport

Hi @ranjithkumar_kv 

Here are vdevbuffer and vring definitions in mek dtsi, are you using same DRAM size? If not, you need adjust these address.

 

 

reserved-memory {
		#address-cells = <2>;
		#size-cells = <2>;
		ranges;

		vdev0vring0: vdev0vring0@90000000 {
			reg = <0 0x90000000 0 0x8000>;
			no-map;
		};

		vdev0vring1: vdev0vring1@90008000 {
			reg = <0 0x90008000 0 0x8000>;
			no-map;
		};

		vdev1vring0: vdev1vring0@90010000 {
			reg = <0 0x90010000 0 0x8000>;
			no-map;
		};

		vdev1vring1: vdev1vring1@90018000 {
			reg = <0 0x90018000 0 0x8000>;
			no-map;
		};

		rsc_table: rsc_table@900ff000 {
			reg = <0 0x900ff000 0 0x1000>;
			no-map;
		};

		vdevbuffer: vdevbuffer {
                        compatible = "shared-dma-pool";
			reg = <0 0x90400000 0 0x100000>;
			no-map;
		};
	};

 

 

0 项奖励
回复
1,496 次查看
ranjithkumar_kv
Contributor II
Hi Zhiming,
We are using 2GiB of DRAM in our design. Can you please let me know if any guide is available for changing the address?

Regards,
Ranjith Kumar.
0 项奖励
回复
1,491 次查看
Zhiming_Liu
NXP TechSupport
NXP TechSupport

Hi @ranjithkumar_kv 

From the error log, it seems relate to vring and vdev address, but i just calculate the vdev and vring address, there are in range of 2GB.

Maybe this issue is caused by incorrect DRAM definition in Uboot. The Linux still use 3GB DRAM size to map address , this could be the reason about address NULL issue.

You can try to modify  include/configs/imx8qxp_mek.h in Uboot like this.

Zhiming_Liu_0-1715322892017.png

Best Regards

Zhiming 

 

 

0 项奖励
回复
1,481 次查看
ranjithkumar_kv
Contributor II
Hi Zhiming,

We think the issue is sorted out once we change as per your suggestion in the mek.h file. Thanks for your support.
Will check with you if any other issue arises.

Regards,
Ranjith Kumar.
0 项奖励
回复
2,026 次查看
Zhiming_Liu
NXP TechSupport
NXP TechSupport

Hello @ranjithkumar_kv 

Can you provide kernel boot log?

 

Best Regards

Zhiming

0 项奖励
回复
2,021 次查看
ranjithkumar_kv
Contributor II

Hi Zhiming,

Please find the kernel boot logs in the attachment (kernel_error_logs.txt).

 

Regards,

Ranjith Kumar

0 项奖励
回复
1,886 次查看
Zhiming_Liu
NXP TechSupport
NXP TechSupport

Hi @ranjithkumar_kv 

If you have disabled the i2c_rpbus_5 node, please also disabled it's slave devices or comment the whole i2c_rpbus_5 node in rpmsg.dtsi

0 项奖励
回复
1,866 次查看
ranjithkumar_kv
Contributor II

Hi Zhiming,

Thanks for the information. By disabling the slaves present in the i2c_rpbus_5 we're able to boot the board.

One additional query, is it mandatory to have i2c_rpbus nodes or else can we disable all the i2c_rpbus nodes along with it's associated slaves?

Regards,

Ranjith Kumar.

0 项奖励
回复
1,864 次查看
Zhiming_Liu
NXP TechSupport
NXP TechSupport

Hi @ranjithkumar_kv 

It depends on which i2c_rpbus node, for example, if you need use typec port ,you can't disable or comment i2c_rpbus_1. For pca9557_a and pca9557_b in i2c_rpbus_15 node, they could be used for gpio control in other devices, so please handle these devices with care. But for other sensor devices, you can disable them.

Best Regards

Zhiming

0 项奖励
回复
1,862 次查看
ranjithkumar_kv
Contributor II
Hi Zhiming,
Thanks for the detailed clarification.
My query is like in our target device we won't be having any of the slaves mentioned in the rpmsg.dtsi file, so in this case can we disable all the i2c_rpbus nodes?

Regards,
Ranjith Kumar
0 项奖励
回复
1,826 次查看
Zhiming_Liu
NXP TechSupport
NXP TechSupport

Hi @ranjithkumar_kv 

Yes, of course

0 项奖励
回复
1,817 次查看
ranjithkumar_kv
Contributor II
Hi Zhiming,
Thanks for the support.
Regards,
Ranjith Kumar
0 项奖励
回复