電子工程網
標題: 如何實現異構處理器間相互通訊——米爾帶您玩轉i.MX 8M Plus開發板 [打印本頁]
作者: swiftman 時間: 2022-7-22 14:56
標題: 如何實現異構處理器間相互通訊——米爾帶您玩轉i.MX 8M Plus開發板
本篇測評由電子工程世界的優秀測評者“bloong”提供。
此次測試的項目,是異構處理器間相互通訊項目。
MYD-JX8MPQ配備了一顆異構的Cortex-M7協處理器,可以同時運行Linux和RTOS。本文主要介紹協處理器M7使用方法。M7在運行時可能會涉及到和A53核共用資源,這里列舉出會沖突資源如下:
ECSPI0/ECSPI2,FLEXCAN,GPIO1/GPIO5,GPT1,I2C3,I2S3,UART4,PWM4,SDMA1/SDMA2,所以在一起使用時,需要將A53的這些資源關閉,這里就需要用到myd-jx8mp-rpmsg.dtb設備樹。這里的M7使用uart4 作為串口。
下文介紹如何使用M7,以及編譯M7程序的方法:
M7使用方法
接兩個串口:1個是開發板的Debug串口,另一個是M7的UART4串口。
1、Debug口為J4及TYPE-C Debug;
2、UART4口為J6,下圖中紅色箭頭指示位置為pin1即UART4_TXD,據此pin2即UART4_RXD,pin3為GND。接這3根線就可以。
查看分區信息
啟動開發板按任意鍵進入uboot模式,查看vfat分區中存在的文件。
u-boot=> fatls mmc 2
29209088 Image
8208 imx8mp_m7_TCM_hello_world.bin
19040 imx8mp_m7_TCM_rpmsg_lite_pingpong_rtos_linux_remote.bin
18528 imx8mp_m7_TCM_rpmsg_lite_str_echo_rtos.bin
40948 imx8mp_m7_TCM_sai_low_power_audio.bin
62815 myd-jx8mp-atk-10.dtb
61702 myd-jx8mp-base.dtb
62815 myd-jx8mp-hontron-7.dtb
62846 myd-jx8mp-lt8912.dtb
62555 myd-jx8mp-m190etn01-19.dtb
62619 myd-jx8mp-rpmsg.dtb
2113024 tee.bin
12 file(s), 0 dir(s)
設置M7設備樹
kernel加載的設備樹由fdt_file變量決定,這里設置成M7專用設備樹。
u-boot=> printenv fdt_file
fdt_file=myd-jx8mp-base.dtb
u-boot=> setenv fdt_file myd-jx8mp-rpmsg.dtb
u-boot=> save
Saving Environment to MMC... Writing to MMC(2)... OK
u-boot=> printenv fdt_file
fdt_file=myd-jx8mp-rpmsg.dtb
u-boot=>
設置M7啟動參數
M7啟動流程也是加載M7程序到內存,用bootaux命令啟動, 正常kernel啟動也一樣,只是最后用bootm啟動。
u-boot=> printenv fdt_file
fdt_file=myd-jx8mp-base.dtb
u-boot=> setenv fdt_file myd-jx8mp-rpmsg.dtb
u-boot=> save
Saving Environment to MMC... Writing to MMC(2)... OK
u-boot=> printenv fdt_file
fdt_file=myd-jx8mp-rpmsg.dtb
u-boot=> setenv m7_image imx8mp_m7_TCM_rpmsg_lite_str_echo_rtos.bin
u-boot=> setenv m7_boot_temp_addr 0x48000000
u-boot=> setenv m7_boot_addr 0x7E0000
u-boot=> setenv m7_run 'fatload mmc ${mmcdev}
{mmcpart} ${m7_boot_tem
> p_addr} ${m7_image};cp.b ${m7_boot_temp_addr} ${m7_boot_addr} 0x20000; bo
> otaux ${m7_boot_addr}'
u-boot=> setenv m7_run 'fatload mmc ${mmcdev}
{mmcpart} ${m7_boot_tem p_addr} ${m7_image};cp.b ${m7_boot_temp_addr} ${m7_boot_addr} 0x20000; bootaux ${m7_boot_addr}'
u-boot=> setenv mmcboot "run m7_run;${mmcboot}"
u-boot=> save
Saving Environment to MMC... Writing to MMC(2)... OK
u-boot=>
測試M7程序
此時已經設置好了M7啟動,只需要重啟開發板,那么在A53啟動kernel同時,也會啟動M7中的程序。啟動之后A53的串口執行如下2句,既可以看到M7中串口出現對應的打印。
myd-jx8mp login: root
root@myd-jx8mp:~# modprobe imx_rpmsg_tty
root@myd-jx8mp:~# [ 33.759911] can1-stby: disabling
[ 33.763151] can2-stby: disabling
[ 33.766408] VSD_3V3: disabling
[ 33.769489] m2_keyb_pwr: disabling
echo "hi m7!" > /dev/ttyRPMSG30
root@myd-jx8mp:~# cat /dev/ttyRPMSG30
hi m7!
想要了解優秀測評者“bloong”關于MYD-JX8MPQ開發板測評原文的可以復制下方鏈接查看:
http://bbs.eeworld.com.cn/thread-1198858-1-1.html
歡迎光臨 電子工程網 (http://m.qingdxww.cn/) |
Powered by Discuz! X3.4 |
主站蜘蛛池模板:
日本人69xxx|
国产三级精品三级男人的天堂|
国产精品18久久久久网站|
蜜桃日本MV免费观看|
亚洲haose在线观看|
午夜影院免费视频|
中国特级黄色大片|
婷婷久久综合|
啪啪欧美|
亚洲欧美日韩在线线精品|
亚洲va久久久噜噜噜久久天堂
|
中文在线免费视频|
国产亚洲精品福利视频|
无码观看AAAAAAAA片|
日韩有码在线视频|
欧美性性|
亚州国产|
亚洲区精品|
成视频高清|
让人爽到湿的小黄书|
一本久久精品一区二区|
网站黄色在线观看|
天天干天天狠|
天天做天天爱夜夜爽|
综合六月|
久久亚洲AV成人无码动态图|
亚洲精品久久久无码一区二区
|
日韩一级欧美一级一级国产|
色婷婷在线|
在线视频亚洲|
久久精品99国产精品日本|
亚洲a视频在线观看|
热re久久精品国产99热|
午夜精品福利视频|
亚洲草逼视频|
99在线观看|
欧美精品熟妇乱|
欧美无遮挡国产欧美另类|
日本美女视频韩国视频网站免费
|
清纯唯美亚洲综合五月天|
日日天干夜夜人人添|