期望效果
在rk3568 cpu0 / 3上各自跑rtthread,并通過openamp跑demo
1.AMP 主機配置
拉取最新代碼,打開rk3568 BSP
打開 menuconfig -> RT-Thread Kernel
使能AMP,選擇 amp role MASTER
Number of CPUs 設置為 4
使能軟件包 RT-Thread online packages → system packages → RT-OpenAMP
AMP slave role cpu no 設置為 3
Version 選擇為 v1.0.0
2.AMP 從機配置
在主機工程中使用scons --dist生成從機工程
打開從機工程 menuconfig -> RT-Thread Kernel
使能AMP,選擇 amp role SLAVE
Number of CPUs 設置為 4
設置RT-Thread Kernel → Kernel Device Object控制臺為 uart4
進入Hardware Drivers Config → Using UART 取消使能uart2、使能uart4
打開從機工程的link.lds, 修改啟動地址0x20000000 為 0x7A000000
打開從機工程driverboard.c
修改:
{PLATFORM_MEM_TALBE(0x20000000, 0x10000000), 0x20000000, NORMAL_MEM},為
{PLATFORM_MEM_TALBE(0x7A000000, 0x10000000), 0x7A000000, NORMAL_MEM},
rt_hw_mmu_map_init(&rt_kernel_space, (void *) 0x20000000, 0xE0000000 - 1, MMUTable, 0);為
rt_hw_mmu_map_init(&rt_kernel_space, (void *) 0x7a000000, 0xE0000000 - 1, MMUTable, 0);
工程配置完成,各自編譯兩個工程
3.工程下載
開啟tftp服務器,路徑設置為主機工程所在路徑
在uboot中使用 tftp 0x20000000 rtthread.bin 下載主機固件
tftp 0x7A000000 ./dist/project/rtthread.bin 下載從機固件
go 0x20000000 從主機啟動
4.demo運行
進入主機后使用 start_cpu 啟動從機
使用 cpuid 命令獲取cpuid
app_echo_send 命令發送數據并回顯
app_matrix_multiply_test 命令 CPU0發送數據至CPU3, CPU3將矩陣計算結果返回給CPU0,并打印
app_pty 命令在cpu0上進入cpu3的控制臺,輸入cpuid可以看到打印出的cpuid是3, Ctrl+c 退出cpu3控制臺,返回cpu0控制臺
-
控制器
+關注
關注
112文章
16332瀏覽量
177812 -
UART接口
+關注
關注
0文章
124瀏覽量
15288 -
TFTP協議
+關注
關注
0文章
5瀏覽量
5493 -
RTThread
+關注
關注
8文章
132瀏覽量
40861 -
RK3568
+關注
關注
4文章
514瀏覽量
5034
發布評論請先 登錄
相關推薦
評論