配置启动小核
配置启动小核的流程如下,这里只讨论使用 linux 启动小核的情况,不讨论快启相关。
- 加载固件
- 调用
firmware
接口获取文件系统中的固件 - 解析固件的
resource_table
段,该段有如下内容- 声明需要的内存(
Linux
为其分配,设备树配置) - 声明使用的
vdev
(固定为一个) - 声明使用的
vring
(固定为两个)
- 声明需要的内存(
- 将固件加载到指定地址
- 调用
- 注册
rpmsg virtio
设备- 提供
vdev->ops
(基于virtio
接口实现的) - 与
rpmsg_bus
驱动匹配,完成rpmsg
初始化
- 提供
- 启动小核
- 调用
rproc->ops->start
- 调用