bruce_helen 发表于 2014-8-7 19:30:44

【网友经验分享】自己整理了一份i.MX6启动流程

本帖最后由 FSL_TICS_ZJJ 于 2014-8-8 09:38 编辑

最近一直在研究i.MX6的linux启动流程
大致分为四个阶段:
1)i.MX6内部ROM启动流程
2)u-boot启动流程
3)linux内核启动流程
4)根文件系统,服务程序启动流程


bruce_helen 发表于 2014-8-7 19:32:58

如果有问题欢迎讨论

swap2013 发表于 2014-8-7 21:07:42

好像是从mmc启动的。i.MX6 有NAND管理吧,如有用NAND启动要注意些什么。

bruce_helen 发表于 2014-8-8 06:09:09

swap2013 发表于 2014-8-7 21:07
好像是从mmc启动的。i.MX6 有NAND管理吧,如有用NAND启动要注意些什么。

我的是从SPI FLASH启动的。NAND也可以启动,和从SPI FLASH启动流程差不多。

jordonwu 发表于 2014-8-8 06:55:42

下载学习,谢谢

Ai_evan 发表于 2014-8-8 07:05:57

感谢楼主正在关注这方面的东西

zhuyeling 发表于 2014-8-8 08:40:35

感谢楼主的资料

Jimmyxu 发表于 2014-8-8 09:12:05

感谢~~~~~~~~~~~

FSL_TICS_ZJJ 发表于 2014-8-8 09:38:15

非常支持像楼主这样自己研究的经验贴。

FSL_TICS_ZJJ 发表于 2014-8-8 09:39:28

楼主以后如果是自己写的经验分享帖,可以直接在前面加上【网友经验分享】,到时候多了,我会帮你们都罗列出来,做个总链接。

boycn 发表于 2014-8-8 09:41:11

谢谢分享

cn_x 发表于 2014-8-8 10:23:49

感谢楼主的资料

bruce_helen 发表于 2014-8-8 12:41:46

FSL_TICS_ZJJ 发表于 2014-8-8 09:39
楼主以后如果是自己写的经验分享帖,可以直接在前面加上【网友经验分享】,到时候多了,我会帮你们都罗列出 ...

好的,谢谢提醒

lileistone 发表于 2014-8-8 12:57:16

这个PPT相当不错。

提个问题,IMX6Q有4个核心,我们常说的内存映射(或者内存地址空间)是指哪一个核心看到的呢?是4个都一样吗?

bruce_helen 发表于 2014-8-8 13:32:05

lileistone 发表于 2014-8-8 12:57
这个PPT相当不错。

提个问题,IMX6Q有4个核心,我们常说的内存映射(或者内存地址空间)是指哪一个核心看 ...

是的,都能看到,不管哪个CPU想读什么地址,都是直接交给MMU,让MMU去决定到底读哪个物理地址

gnocy 发表于 2014-8-8 13:35:25

bruce_helen 发表于 2014-8-8 13:32
是的,都能看到,不管哪个CPU想读什么地址,都是直接交给MMU,让MMU去决定到底读哪个物理地址 ...

4核的好像启动引导的是CPU0对吗,再有CPU0去分配其他另外3个核启动工作吧

lileistone 发表于 2014-8-8 13:37:04

bruce_helen 发表于 2014-8-8 13:32
是的,都能看到,不管哪个CPU想读什么地址,都是直接交给MMU,让MMU去决定到底读哪个物理地址 ...

MMU是内核的吧,也就是应该有4个MMU……

地主阿山 发表于 2014-8-8 14:02:32

谢谢论坛大牛分享

bruce_helen 发表于 2014-8-8 14:14:27

lileistone 发表于 2014-8-8 13:37
MMU是内核的吧,也就是应该有4个MMU……

不好意思,我理解错了。
下面这个图是我刚才从泡泡网上一篇文章里截取下来的,应该是每个CPU核心都有一个MMU,从图中左下角也可以看出每个CPU都有一个uTLB。
既然每个CPU都有自己MMU和TLB,假如CPU读一个变量,MMU首先从uTLB中查找页表,经过二级页面、三级页面。。。最后找到正确的物理地址,这个过程说明每个核心的内存映射都是不相干的。也就是说他们都有各自的内存映射关系。
我的理解是这样的,如果错误请指出。

bruce_helen 发表于 2014-8-8 14:19:00

本帖最后由 bruce_helen 于 2014-8-8 14:22 编辑

gnocy 发表于 2014-8-8 13:35
4核的好像启动引导的是CPU0对吗,再有CPU0去分配其他另外3个核启动工作吧

对的,应该是这样的。
看看网友整理多核启动流程
http://stackoverflow.com/questions/23241343/smp-boot-of-arm-cortex-a9-sequence-with-mmu-cache-enabled




编辑原因:漏掉一张图片

franki 发表于 2014-8-11 15:38:27

跟ARM9 的启动流程好像啊。。。。。。。

ffbiao 发表于 2014-8-11 15:55:51

非常好,谢谢!

FSL_TICS_Rita 发表于 2014-8-12 14:32:48

非常感谢楼主分享~~

rockyyangyang 发表于 2014-9-5 08:58:19

谢谢分享!      

bruce_helen 发表于 2014-9-5 11:30:08

franki 发表于 2014-8-11 15:38
跟ARM9 的启动流程好像啊。。。。。。。

是的呢,都是ARM架构,不会有多大的变化。

laotui 发表于 2014-9-5 11:36:20

先收藏了,用到再说。
页: [1]
查看完整版本: 【网友经验分享】自己整理了一份i.MX6启动流程