移植全新的linux-3.5.0到Super4412(2)
来源:互联网 发布:java cpu占用高 分析 编辑:程序博客网 时间:2024/06/05 16:50
将编译后的zImage烧写到开发板,串口打印done, booting the kernel.后没有其他反应了。
bl decompress_kernel
bl cache_clean_flush
bl cache_off
mov r0, #0@ must be zero
mov r1, r7@ restore architecture number
mov r2, r8@ restore atags pointer
ARM( mov pc, r4 ) @ call kernel
THUMB( bx r4 ) @ entry point is always ARM
根据查看汇编代码后发现在经过解压缩后,跳转到0x40008000地址去执行真正的linux代码。
从0x40008000读取0x100大小的数据通过串口打印输出后。
解压arch\arm\boot\compressed\piggy.gzip,获得piggy。对比串口输出的属于发现与piggy前0x100自己相同,可以判断解压成功。
在arch\arm\kernel\head.S的入口处ENTRY(stext)加入点灯的汇编代码后,发现LED亮,由此判断已经跳转到真正的linux镜像文件种执行了,接下来继续判断程序卡在哪里。
阅读全文
0 0
- 移植全新的linux-3.5.0到Super4412(2)
- 移植全新的linux-3.5.0到Super4412(1)
- proxool移植到linux上出现的错误(2)
- linux内核移植到tiny6410(2)
- 将Linux代码移植到Windows的简单方法(2)
- proxool移植到linux上出现的错误(1)
- 【转载】 linux-2.6.38到tiny6410的移植手册(连载2)__网卡&NFS
- 从 Solaris 到 Linux 的移植向导
- 移植Linux(ucLinux)到GBA的记录
- Windows 到 Linux 代码移植的常见问题
- 从 Solaris 到Linux应用的移植
- 移植MPlayer到linux 2.6的方法
- linux移植到window相关的函数
- 移植MPlayer到linux 2.6的方法
- 从 Solaris 到Linux应用的移植
- windows的c++源代码移植到linux
- QNX的应用移植迁移到Linux
- 从Linux移植到Android遇到的
- jQuery总结
- 四、TCP粘包与拆包
- UIView的bounds属性小记
- 欢迎使用CSDN-markdown编辑器
- Qt官方开发环境生成的exe发布方式
- 移植全新的linux-3.5.0到Super4412(2)
- 进程池线程池
- Java连接Oracle(标准方式)
- Centos 7.3 基于HTTP配置本地局域网YUM
- 当删除Servers后Java resources中出现错误
- date 格式化
- 读取Excel
- 玲珑杯 1124
- unity 通过使用 photon networking Pun 实现 HTC Vive VR的多人联网。进阶版 《一》