我司IAC-IMX8MP-Kit開發(fā)板搭載NXP i.MX8MPlus SOC,該芯片采用4顆Arm Cortex-A53核心以及1顆Arm Cortex-M7核心。很多客戶需求在M核心運行實時操作系統(tǒng),而在A核心上運行Linux,實現(xiàn)雙核心通信,那么今天就給大家分享一下相關(guān)技巧。
首先,我們需要在A核心,也就是Linux系統(tǒng)上把M核心打開,并且為M核心提供一定的硬件資源,如運行空間等。同時,如果需要核心間通訊,也需要增加一個節(jié)點,讓兩顆核心在節(jié)點間進行信息交互,具體修改如下圖所示:
?
將編譯好的設(shè)備樹重新燒寫到開發(fā)板中,這樣M核心就正常啟動了。
接下來需向NXP官方獲取一份關(guān)于M核心的測試代碼,以及相對應(yīng)的編譯器。編譯器網(wǎng)址如下:https://developer.arm.com/downloads/-/arm-gnu-toolchain-downloads。測試代碼的網(wǎng)址如下:https://mcuxpresso.nxp.com/zh,選擇對應(yīng)教育評估版,就可以下載對應(yīng)SOC的測試代碼了,如下圖所示:
?
?
這里我們獲取的源碼包名為:SDK_24_12_00_EVK-MIMX8MP.zip。在PC Ubuntu環(huán)境中將源碼包解壓,內(nèi)容如下:
?
進入到
boards/evkmimx8mp/multicore_examples/rpmsg_lite_str_echo_rtos/remote/armgcc/下,并且聲明上面提到的編譯器,直接運行./build_all.sh即可生成三個bin文件,分別在debug/release、ddr_debug/ddr_release、flash_debug/flash_release文件下。它們對應(yīng)著不同的加載位置,我們需要的是ddr_release下的bin文件。
最后,我們將bin文件更名為m7.bin,在uboot階段將其加載到指定位置,具體命令如下(注意路徑):
setenv loadimage 'fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${image}; ext4load mmc 2:2 0x80000000 /home/root/m7.bin; dcache flush; bootaux 0x80000000',接下來啟動完成后就可以在M核心調(diào)試串口上查看到啟動信息,如下圖所示:
?
同時在Linux端需要加載rpmsg的驅(qū)動,insmod imx_rpmsg_tty.ko,加載成功后會默認(rèn)向M核心發(fā)送一條消息,如下圖所示:
?
并且生成用于交互的設(shè)備節(jié)點/dev/ttyRPMSG30。如果需要與M核心通訊,只需要向節(jié)點發(fā)送信息,就可以在M核心收到所發(fā)來的串口信息了,如下圖所示:
至此,i.MX8MPlus的rpmsg就調(diào)試成功了。
-
ARM
+關(guān)注
關(guān)注
134文章
9307瀏覽量
375007 -
開發(fā)板
+關(guān)注
關(guān)注
25文章
5515瀏覽量
102270
發(fā)布評論請先 登錄
使用i.MX8MPlus運行Windows 10 IoT系統(tǒng),遇到了三星eMMC的兼容性問題如何解決?
i.MX8MM-BSP 5.15.52 linux-imx構(gòu)建因從imx8mm.dtsi中刪除rpmsg節(jié)而失敗?
請問I.MX8MPlus板在網(wǎng)絡(luò)中是否可以作為節(jié)點或路由器或兩者兼而有之?
使用pingpong示例調(diào)試rpmsg時遇到的問題求解
是否有不使用FreeRTOS的RPMSG示例?
如何構(gòu)建OpenVG程序并在i.MX8MPlus上運行它們?
使用DS-MDK來調(diào)試i.MX7

通過i.MX8MPlus開發(fā)板實現(xiàn)異構(gòu)處理器間的相互通訊

一文讀懂NXP i.MX 8M Plus有多優(yōu)秀

啟揚i.MX8M Plus核心板、開發(fā)板編解碼性能測試

技術(shù)分享 | 啟揚i.MX8M Plus開發(fā)板適配LVDS屏幕

i.MX 8M Plus加持的AI領(lǐng)域的里程碑開發(fā)板長什么樣?

技術(shù)分享 | i.MX8M Plus開發(fā)板支持ov5640

技術(shù)分享 | i.MX8M Plus開發(fā)板交叉編譯qt5.15.2

技術(shù)分享 | i.MX8MPlus Journal日志管理系統(tǒng)

評論