鸿蒙移植i.mx6ull(八) 添加一个单板(下)

简介: 鸿蒙移植i.mx6ull(八) 添加一个单板

1671000910813.jpg

1671000921241.jpg

1671000939670.jpg

shell/full/src/base/show.c
shell/full/src/cmds/dmesg.c
shell/full/src/base/shcmd.c
shell/full/src/base/shmsg.c


1.5 解决链接错误


tools/build/mk/los_config.mk
mv vendor/st/stm32mp157/stm32mp157.mk vendor/st/stm32mp157/demochip.mk
vendor/democom/hdf/hdf_vendor.mk
drivers/hdf/lite/hdf_lite.mk


1.6 内核启动流程


内核启动流程可以分为4步骤(非官方):


启动


使用汇编代码编写,涉及非常底层的设置,比如CPU设置、代码重定位等等

地址映射也在这里实现

它最终会调用main函数

main函数


以后的代码,基本都是使用C语言编写了

主要工作是:调用OsMain进行各类初始化、最终会启动用户程序

OsMain函数


进行操作系统层面的初始化,比如异常初始化、任务初始化、IPC初始化

调用SystemInit

SystemInit


偏向于应用程序的初始化

挂载根文件系统

启动第一个用户进程


1.6.1 启动文件分析


从kernel\liteos_a\arch\arm\arm\src\startup\reset_vector_up.S开始阅读代码,

流程如下:

1671001256251.png

1671001285324.png


1.6.2 main函数分析


main函数在这个文件里kernel\liteos_a\platform\main.c,

流程如下:

image.png

image.png


1.6.3 OsMain函数分析


OsMain函数在这个文件里kernel\liteos_a\kernel\common\los_config.c,

流程如下:

1671001339503.png

image.png


1.6.4 SystemInit函数分析


SystemInit函数在这个文件里vendor\st\stm32mp157\board\board.c,

流程如下:

image.png


相关文章
|
Linux 芯片
鸿蒙移植i.mx6ull(十) 系统时钟
鸿蒙移植i.mx6ull(十) 系统时钟
228 0
鸿蒙移植i.mx6ull(十) 系统时钟
|
Shell Python
鸿蒙移植i.mx6ull(十二) 根文件系统
鸿蒙移植i.mx6ull(十二) 根文件系统
128 0
鸿蒙移植i.mx6ull(十二) 根文件系统
|
存储 Linux 内存技术
鸿蒙移植i.mx6ull(十一) 存储设备驱动程序(基于IMX6ULL)
鸿蒙移植i.mx6ull(十一) 存储设备驱动程序(基于IMX6ULL)
246 0
鸿蒙移植i.mx6ull(十一) 存储设备驱动程序(基于IMX6ULL)
|
Shell
鸿蒙移植i.mx6ull(九) 串口移植(基于IMX6ULL)
鸿蒙移植i.mx6ull(九) 串口移植(基于IMX6ULL)
356 0
鸿蒙移植i.mx6ull(九) 串口移植(基于IMX6ULL)
|
芯片
鸿蒙移植i.mx6ull(八) 添加一个单板(上)
鸿蒙移植i.mx6ull(八) 添加一个单板
251 0
鸿蒙移植i.mx6ull(八) 添加一个单板(上)
|
9月前
|
IDE JavaScript API
HarmonyOS开发第一步,熟知开发工具DevEco Studio
本文主要以常见的功能点作为概述希望可以帮助到学习HarmonyOS的开发者。
220 0
|
9月前
|
开发框架 API 开发者
HarmonyOS学习路之方舟开发框架—学习ArkTS语言(基本语法 二)
在ArkUI中,UI显示的内容均为组件,由框架直接提供的称为系统组件,由开发者定义的称为自定义组件。在进行 UI 界面开发时,通常不是简单的将系统组件进行组合使用,而是需要考虑代码可复用性、业务逻辑与UI分离,后续版本演进等因素。因此,将UI和部分业务逻辑封装成自定义组件是不可或缺的能力。
|
4月前
|
数据管理 API 调度
【华为鸿蒙系统学习】- HarmonyOS4.0开发|自学篇
【华为鸿蒙系统学习】- HarmonyOS4.0开发|自学篇
211 0
|
4月前
|
前端开发 JavaScript 开发者
鸿蒙2.0!用 JavaScript 开发鸿蒙应用
鸿蒙2.0!用 JavaScript 开发鸿蒙应用
|
4月前
|
开发者 索引 容器
【鸿蒙软件开发】Stage模型开发概述应用/组件级配置
【鸿蒙软件开发】Stage模型开发概述应用/组件级配置
115 0
【鸿蒙软件开发】Stage模型开发概述应用/组件级配置