OK6410 Starting kernel ... undefined instruction pc : [<50008004>]

uboot 源码包:u-boot1.1.6.tar

编译器:arm-linux-gcc-4.3.2

源码路径下配置 # make forlinx_nand_ram128_config

编译 # make

得到uboot.bin之后考到sd卡中,通过sd卡中的mmc.bin将uboot、kernel、filesystem烧到nandflash

启动出现一直重启的错误:

CPU:     S3C6410 @532MHz

Fclk = 532MHz, Hclk = 133MHz, Pclk = 66MHz, Serial = CLKUART (SYNC Mode)

Board:   SMDK6410

DRAM:    128 MB

Flash:   0 kB

NAND:    2048 MB

In:      serial

Out:     serial

Err:     serial

Hit any key to stop autoboot:  0

NAND read: device 0 offset 0x100000, size 0x500000

5242880 bytes read: OK

## Booting image at c0008000 ...

Boot with Image

Starting kernel ...

undefined instruction

pc : [<50008004>]          lr : [<c7e216bc>]

sp : c7fffddc  ip : c7e7ffb8     fp : 00000000

r10: c7f02618  r9 : 00000002     r8 : c7e7ffdc

r7 : 00000000  r6 : 00000000     r5 : 50000124  r4 : 00000000

r3 : 50008000  r2 : 50000100     r1 : 0000065a  r0 : 00000000

Flags: nZCv  IRQs off  FIQs off  Mode SVC_32

Resetting CPU ...

reset...

提示信息中 NAND read: device 0 offset 0x100000, size 0x500000

uboot 在0x100000到0x500000中读取内核,但是启动失败,可能是内核读取错误。

由于飞凌的烧写是通过sd卡中的 uboot 完成的,因此切换到SD卡启动,printenv查看变量

果然有问题:

bootcmd=nand led-start;nand erase  ;fatload mmc 0:1 0x50008000 u-boot.bin;nand write.uboot 0x50008000 0 0x200000;fatload mmc 0:1 0x50008000 zImage;nand write.e    0x50008000
0x200000 0x500000; fatload mmc 0:1 0x50008000 rootfs.yaffs2; nand write.yaffs2 0x50008000 0x00700000

内核是从0x200000开始写的。

修改:

设置成nandflash启动修改环境变量:

SMDK6410 # setenv bootcmd ‘nand read 0xc0008000 0x200000 0x500000;bootm 0xc0008000‘

SMDK6410 # saveenv

重启,可以顺利启动linux。

OK6410 Starting kernel ... undefined instruction pc : [<50008004>],布布扣,bubuko.com

时间: 2024-08-03 09:23:11

OK6410 Starting kernel ... undefined instruction pc : [<50008004>]的相关文章

内核启动卡在 Starting kernel ...

一.有时log是这样的 Card did not respond to voltage select! 9889800 bytes read in 237 ms (39.8 MiB/s) 70155 bytes read in 5 ms (13.4 MiB/s) ## Flattened Device Tree blob at 48000000 Booting using the fdt blob at 0x48000000 Using Device Tree in place at 00000

错误: symbol lookup error: /usr/local/lib/libreadline.so.6: undefined symbol: PC

su - root mkdir temp mv /local/ldconfig  apt-get update

最近调的一个关于视频播放的小bug

上星期接到一个CQ,问题是这样的:下载官方的爱奇艺或者搜狐视频apk在板子上安装之后,无法正常播放在线视频,点击视频播放之后总是弹出对话框“XXX has stopped”,或者整个视频APP闪退. 于是我首先下载了一个爱奇艺的apk开始复现这个问题,然后从log进行分析,在kernel log发现线索: [ 392.674685] android: (01-02 01:17:32) process pid: 3352, tid: 4326 crash![ 392.682842] c0 4326

我调过的最难调的Bug

每个程序员都有些不畏死亡决战猛兽的英雄事迹.以下这些是我的. 内存冲突 毕业不到半年,拿着刚到手的文凭,我在Lexmark公司的一个嵌入式Linux固件开发团队中负责追踪一个内存冲突的问题.因为内存冲突的原因和问题表象总是相差非常大,所以这类问题很难调.有可能是因为缓存溢出,也有可能是指针未初始化,或是指针被多次free,亦或是某处的DMA错误,但是你所见的却是一堆神秘的问题:挂起.指令未定义.打印错误,以及未处理的内核错误.这些都非常频繁,内存冲突看上去似乎是随机出现又很难重现. 要调试这种问

Linux3.6.7在OK6410下的移植

这是在本学期期末整项目时习得的,不知道以后会不会有用. 一个天天整js+css+html的,突然弄Linux C,学到的确实不少. 遗憾的是,虽然努力了,导师还是觉得我进度慢把这部分砍掉了,唉. 前言 对于我这个新手而言,第一次学习linux,面对庞大的代码,复杂的程序结构和自身对linux知识的严重缺乏,一下子还真不知道该做什么.想想开发板厂家提供的演示程序,其过程是这样:先运行bootloader,bootloade引导linux内核启动,启动后再运行UI程序.对应的程序也有三个分别为u-b

OK6410开发板启动过程(详细信息)

硬件平台:OK6410开发板 KK U-Boot 1.1.6 (Sep 19 2014 - 10:00:03) for SMDK6410 **************************************** ** u-boot 1.1.6 ** ** Updated for OK6410 TE6410 Board ** ** Version (2012-09-23) ** ** OEM: Forlinx Embedded ** ** Web: http://www.witech.co

(转)linux kernel 从入口到start_kernel

linux kernel 从入口到start_kernel 的代码分析 本文的很多内容是参考了网上某位大侠的文章写的<<>>,有些东西是直接从他那copy过来的. 最近分析了一下u-boot的源码,并写了分文档, 为了能够衔接那篇文章,这次又把arm linux的启动代码大致分析了一下,特此写下了这篇文档.一来是大家可以看看u-boot到底是如何具体跳转到linux下跑的,二来也为自己更深入的学习linux kernel打下基础. 本文以arm 版的linux为例, 从kernel

深入 kernel panic 流程【转】

一.前言 我们在项目开发过程中,很多时候会出现由于某种原因经常会导致手机系统死机重启的情况(重启分Android重启跟kernel重启,而我们这里只讨论kernel重启也就是 kernel panic 的情况),死机重启基本算是影响最严重的系统问题了,有稳定复现的,也有概率出现的,解题难度也千差万别,出现问题后,通常我们会拿到类似这样的kernel log信息(下面log仅以调用BUG()为例,其它异常所致的死机log信息会有一些不同之处): [ 2.052157] <2>-(2)[1:swa

Linux下USB烧写uImage kernel

1.启动开发板,进入u-boot:(如果开发板中没有系统,可以通过用SD卡方式启动开发板进入) U-Boot 2011.06 (Mar 19 2012 - 08:45:34) for MINI6410 CPU: [email protected] Fclk = 667MHz, Hclk = 133MHz, Pclk = 66MHz (ASYNC Mode) Board: MINI6410 DRAM: 256 MiB NAND: 512 MiB MMC: SAMSUNG SD/MMC: Host