- 博客(3)
- 收藏
- 关注
原创 bl和ldr用作跳转指令的区别
bl指令经过汇编编译器编译后形成的指令码表示:新的pc值为,从当前pc值开始(即pc+8),跳过offset* 4个字节位置。下面看反汇编: 当前pc值为:bldisable_watch_dog经过编译后机器码为0xeb000005,即offset为5条指令,偏移字节数为5*4=20=0x14。当前pc值为0x30000000+8=0x30000008。则指令执行后的pc值为:0x300
2013-12-01 20:55:12 2255
原创 u-boot向kernel传递参数
u-boot版本:u-boot-1.1.6 源代码位置:lib_arm/armlinux.c 以bootargs为例: 通过getenv("bootargs")从环境变量中拿到bootargs启动参数。 通过setup_commandline_tag将commandline(即bootargs)写入tag(即param)中, 通过theKernel跳转到内核入口点。
2013-11-25 17:31:05 407
原创 Nand OP Tips
nand erase不能擦除已经被标记为bad的坏块,使用nand scrub可以将块中所有内容擦除,包括出厂时设置的和后面使用中生成的坏块标记(即所有的逻辑坏块),但是对于物理坏块没有效果。 烧录过程结束后重启如果发现坏块打印过多,可以使用nand scrub擦除所有的逻辑坏块后重新烧录试试。
2013-11-24 13:22:25 340
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人