鸿蒙移植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(十) 系统时钟
303 0
鸿蒙移植i.mx6ull(十) 系统时钟
|
Shell Python
鸿蒙移植i.mx6ull(十二) 根文件系统
鸿蒙移植i.mx6ull(十二) 根文件系统
200 0
鸿蒙移植i.mx6ull(十二) 根文件系统
|
存储 Linux 内存技术
鸿蒙移植i.mx6ull(十一) 存储设备驱动程序(基于IMX6ULL)
鸿蒙移植i.mx6ull(十一) 存储设备驱动程序(基于IMX6ULL)
319 0
鸿蒙移植i.mx6ull(十一) 存储设备驱动程序(基于IMX6ULL)
|
Shell
鸿蒙移植i.mx6ull(九) 串口移植(基于IMX6ULL)
鸿蒙移植i.mx6ull(九) 串口移植(基于IMX6ULL)
468 0
鸿蒙移植i.mx6ull(九) 串口移植(基于IMX6ULL)
|
芯片
鸿蒙移植i.mx6ull(八) 添加一个单板(上)
鸿蒙移植i.mx6ull(八) 添加一个单板
306 0
鸿蒙移植i.mx6ull(八) 添加一个单板(上)
|
6天前
|
UED
鸿蒙next版开发:相机开发-适配不同折叠状态的摄像头变更(ArkTS)
在HarmonyOS 5.0中,ArkTS提供了强大的相机开发能力,特别是针对折叠屏设备的摄像头适配。本文详细介绍了如何在ArkTS中检测和适配不同折叠状态下的摄像头变更,确保相机应用在不同设备状态下的稳定性和用户体验。通过代码示例展示了具体的实现步骤。
29 8
|
6天前
|
API 内存技术
鸿蒙next版开发:相机开发-拍照(ArkTS)
在HarmonyOS 5.0中,ArkTS提供了一套完整的API来管理相机功能,特别是拍照功能。本文详细介绍如何在ArkTS中实现拍照功能,包括导入接口、创建会话、配置会话、触发拍照及监听拍照输出流状态,并提供代码示例进行详细解读。通过本文,你将掌握如何在HarmonyOS 5.0中使用ArkTS实现高效的拍照功能。
25 7
|
6天前
|
监控 开发者
鸿蒙next版开发:使用HiDebug获取调试信息(ArkTS)
在HarmonyOS 5.0中,HiDebug是一个强大的应用调试工具,可帮助开发者获取系统的CPU使用率、内存信息等关键性能数据。本文详细介绍了如何在ArkTS中使用HiDebug,并提供了示例代码,帮助开发者进行性能分析和问题诊断。
24 7
|
1天前
|
Android开发
鸿蒙开发:自定义一个简单的标题栏
本身就是一个很简单的标题栏组件,没有什么过多的技术含量,有一点需要注意,当使用沉浸式的时候,注意标题栏的位置,需要避让状态栏。
鸿蒙开发:自定义一个简单的标题栏
|
1天前
|
API
鸿蒙开发:切换至基于rcp的网络请求
本文的内容主要是把之前基于http封装的库,修改为当前的Remote Communication Kit(远场通信服务),无非就是通信的方式变了,其他都大差不差。
鸿蒙开发:切换至基于rcp的网络请求