1\在调试ok6410 nandflash启动uboot时,需要添加调试信息,导致uboot大于256k

2\需要修改下面几个地方

参考资料

在uboot中可以添加文字菜单,但是不够美观。

利用photoshop制作一张jpg菜单图片,在ubuntu中使用jpeg2bmp.sh将jpg图片转换成bmp格式

uboot/tools/bmp_logo.c编译生成的工具bmp_logo可以根据bmp格式图片生成bmp_logo.h,图片的信息存储在数组当中。当图片的分配率越大,转换成的数组越大,导致最后编译的uboot.bin越大。当uboot.bin超过242K时,下载uboot到flash后不可启动。

解决办法:

在uboot/cpu/s3c64xx/start.S中,有这样一段话,可以知道以下代码是将uboot拷贝到ram中执行,并且只拷贝了2个block

copy_from_nand:

mov r10, lr

mov r9, r0

ldr    sp, _TEXT_PHY_BASE

sub   sp, sp, #12

mov fp, #0

mov r9, #0x1000

bl      copy_uboot_to_ram  //开始调用C函数

1、copy_uboot_to_ram函数在uboot/cpu/s3c64xx/Nand_cp.c中,定义如下

int copy_uboot_to_ram (void)

{

..............

..............

..............

return nandll_read_blocks(CFG_PHY_UBOOT_BASE, 0x3c000, large_block);

}

注意0x3c000(240K)就是实际拷贝的大小,修改此数值即可。

2、修改uboot/cpu/s3c64xx/Nand_cp.c中nandll_read_blocks()函数与0x3c000有关的所有数值,并改成相应大小。

ok6410 nandflash 启动uboot 超过256k怎么办的更多相关文章

  1. 记录Ok6410 sd 启动uboot

    1\参考资料https://github.com/SeanXP/ARM-Tiny6410/tree/master/no-os/sd-no-os/u-boot 2\参考资料https://blog.cs ...

  2. 二、先在SD卡上启动U-boot,再烧写新的U-boot进Nandflash

    1. 制作SD卡 先准备一张2G的SD卡(不能用8G的,2G的卡和8G的卡协议不一样),和烧写SD卡的工具write_sd以及需要烧写到SD卡中的u-boot-movi.bin.将SD卡格式化后连接到 ...

  3. qemu 模拟-arm-mini2440开发板-启动u-boot,kernel和nfs文件系统

    qemu 本文介绍了如何编译u-boot.linux kernel,然后用qemu启动u-boot和linux kernel,达到与开发板上一样的学习效果! 虽然已经买了2440开发板,但是在实际学习 ...

  4. qemu 模拟-arm-mini2440开发板-启动u-boot,kernel和nfs文件系统【转】

    转自:http://www.cnblogs.com/riskyer/p/3366001.html qemu 本文介绍了如何编译u-boot.linux kernel,然后用qemu启动u-boot和l ...

  5. norflash启动和nandflash启动

    S3C2440的启动时读取的第一条指令是在0x00上,分为成nand flash和nor flash上启动. 1)nand flash:适合大容量数据存储,类似硬盘: 2)nor flash:适合小容 ...

  6. 关于6410的sd卡和nandflash启动的区别

    今天在公司我们队长问我个问题,关于cortex的sd启动流程和nandflash的启动流程,一下想不起来了,中午闲来无事就整理了整理当初6410的两种启动方式的区别.在这里写一下.有不对的请指点,我对 ...

  7. 记录在tiny6410平台上采用4GSD卡来启动uboot和烧写nand flash uboot

    下面这种方法是从网上转的 没有验证 环境:ubuntu 13.04一.首先制作sd启动盘: 插入SD卡    sudo dd iflag=dsync oflag=dsync if=tiny210v2- ...

  8. I.MX6 eMMC 中启动U-boot存放的首地址

    /************************************************************************************ * I.MX6 eMMC 中 ...

  9. ok6410如何从sdram中启动uboot 调试 这是一个猜想还没有验证

    1\在smdk6410.h中定义宏 //#define CONFIG_SKIP_LOWLEVEL_INIT 1 //#define CONFIG_SKIP_RELOCATE_UBOOT 12\将编译的 ...

随机推荐

  1. Python的numpy库中rand(),randn(),randint(),random_integers()的使用

    1.numpy.random.rand() 用法是:numpy.random.rand(d0,d1,…dn) 以给定的形状创建一个数组,并在数组中加入在[0,1]之间均匀分布的随机样本. 用法及实现: ...

  2. vue-cli 脚手架 Command Line Interface

    mac sudo npm install -g nrm sudo npm config -g set unsafe-perm sudo npm install webpack@3.0.0 -g sud ...

  3. [LeetCode] Short Encoding of Words 单词集的短编码

    Given a list of words, we may encode it by writing a reference string S and a list of indexes A. For ...

  4. 19.3.20 cmd操作:1.dir查看当前文件夹内的文件;2.alt+space+c关闭cmd窗口

    cmd操作记录: 1.dir:查看当前文件夹内的所有文件: 2.alt+space+c:关闭打开的cmd窗口:

  5. 防止enter提交表单

    如何防止回车(enter)键提交表单,其实很简单,就一句话.onkeydown="if(event.keyCode==13)return false;"把这句写在from标签里面就 ...

  6. linux_grub resue模式恢复

    //20190417 今天中午装linux的电脑崩了…… 一开始还以为是什么硬件问题,搞了半天,是更新的时候吧grub启动项弄坏了 行吧,没人教咱就上网搜,搞一下午搞出来了 ============= ...

  7. gitIgnore说明

    有些内容不需要提交到git服务器上,这时我们可以配置.gitIgnore文件.可参考:https://www.cnblogs.com/kevingrace/p/5690241.html 可能有时候你会 ...

  8. js获取HTML DOM节点元素方法总结

    1. 通过顶层document节点获取:    (1)document.getElementById(elementId) :通过ID获得节点,如果页面上含有多个相同id的节点,那么只返回第一个节点. ...

  9. Caused by: java.lang.ClassNotFoundException: org.springframework.integration.handler.support.HandlerMethodArgumentResolversHolder

    <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring ...

  10. CST2017 安装问题

    1.需要修改破解文件license 中的电脑名称 2.若lincense 中有时间限制  需要把时间都修改   比如  到期为  1-jan-2018   则修改为1-jan-2019   所有的都需 ...