RK3568-OpenAMP应用示例

电子说

1.3w人已加入

描述

期望效果
在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控制台

控制器

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分