Linux Kernel入门到精通系列讲解(OpenSBI 篇) 3.2 OpenSBI 源码分析之初始化

慈云数据 2024-05-11 技术支持 37 0

1.概述

上一章节我们讲到了OpenSBI汇编将所有为初始化做准备的条件都准备好了,正式进入初始化步骤,本小节就继续讲解初始化过程。

Linux Kernel入门到精通系列讲解(OpenSBI 篇) 3.2 OpenSBI 源码分析之初始化
(图片来源网络,侵删)

2.用户注册平台

OpenSBI采用平台的方式去配置初始化的一些外设,以Naruto为例,我们需要将我们需要的配置传递给OpenSBI,这样在初始化的时候它会调用相对应的回调函数,然后去初始化我们的配置。以下就是Naruto目前为止的配置,初始化了timer,pmu,interrupt和提供了hart的初始化接口,后面会重点分析hart初始化,其它的外设初始化不是OpenSBI重点。这里要注意,OpenSBI是以platform目录下的平台文件夹名字去索引编译的,比如我Naruto Pi的文件夹就是naruto,编译的时候就是make naruto

const struct 
Linux Kernel入门到精通系列讲解(OpenSBI 篇) 3.2 OpenSBI 源码分析之初始化
(图片来源网络,侵删)
微信扫一扫加客服

微信扫一扫加客服

点击启动AI问答
Draggable Icon