lixing865

lixing865

0个粉丝

2

问答

0

专栏

1

资料

lixing865  发布于  2016-04-20 11:39:24
采纳率 0%
2个问答
7552

SPI NOR FLASH 内核不能启动

 
大家好,我用 HI3516A 做开发。SPI NOR FLASH:MX25L25635EMI 32MB, SPI NOR FLASH启动地址模式:3Byte模式 。 但是 , 烧录之后, uboot 里面的 env 无法更改, 内核无法引导。 感觉是 在UBOOT 使用命令读写都有问题, 想请教一下, UBOOT 是怎么配置编译的? 从FLASH 读入到内存的数据感觉不对。
我的UBOOT 启动信息:

U-Boot 2010.06 (Oct 22 2015 - 14:46:56)

Check spi flash controller v350... Found
Spi(cs1) ID: 0xC2 0x20 0x19 0xC2 0x20 0x19
Spi(cs1): Block:64KB Chip:32MB Name:"MX25L(256/257)35(E/F)"
Check Nand Flash Controller v610 ... found
Special NAND id table Version 1.36
Nand ID: 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
No NAND device found!!!
*** Warning - bad CRC, using default environment

In:    serial
Out:   serial
Err:   serial
Hit any key to stop autoboot:  0
Wrong Image Format for bootm command
ERROR: can't get kernel image!
hisilicon #
我来回答
回答8个
时间排序
认可量排序

zhuangweiye

8个粉丝

0

问答

0

专栏

0

资料

zhuangweiye 2016-04-20 13:57:50
认可0
从楼主的log来看, 很像u-boot环境变量的地方被覆盖了

U-boot的环境变量保存的地方(flash的起始地址,和长度)是在编译u-boot的时候设定的
比如海思缺省起始地址为0x80000,长度为0x2000

如果楼主没有修改过这些地址长度, 那么意思就是在flash上
0x00000  --  0x7FFFF  放u-boot
0x80000  --  0x81FFF  放u-boot env
0x82000  --                放其他东西

这时如果划分flash没注意这点,比如烧写时把uImage烧到了0x80000的地方,就会出现楼主的现象

可以简单试一下,楼主在flash上只烧u-boot和uImage,把uImage烧的位置移到后面点的地方,看看能不能saveenv, 能不能引导

如果觉得缺省的地址长度太大,那就要重编重烧u-boot了

kelly447801322

0个粉丝

4

问答

0

专栏

0

资料

kelly447801322 2016-04-20 15:56:00
认可0
本帖最后由 kelly447801322 于 2016-4-20 16:04 编辑

楼主,你的板子是否一开机就自己进入了u-boot模式?

blacktulip7

0个粉丝

3

问答

0

专栏

0

资料

blacktulip7 2016-04-20 22:25:34
认可0
1.在uboot下面用pr打印一下uboot 的环境变量,看下你的bootcmd,bootargs等环境变量;
2.看下你uImage在flash中的位置与bootcmd里面的是否一致。
看你这个情况应该不是spi flash的问题,uboot都能跑起来,内核肯定可以的,自己找下应该很快可以解决的

love_lin

1个粉丝

22

问答

0

专栏

1

资料

love_lin 2016-05-10 09:39:52
认可0
请问楼主,此问题解决了吗?能告诉下具体的修改方法吗?

lcy

0个粉丝

0

问答

0

专栏

0

资料

lcy 2016-07-28 15:28:08
认可0
我的板子之前一直都在用,后来无缘无故就出现了楼主的这个问题,不知哪位仁兄可以出来解释一下。

dwt_guard

0个粉丝

9

问答

0

专栏

0

资料

dwt_guard 2016-07-29 09:21:48
认可0
l楼主快出来,大家等着看你呢!

qn1540860483

0个粉丝

5

问答

0

专栏

0

资料

qn1540860483 2019-01-25 14:59:34
认可0
Hi3516DV300:setenv bootargs 'mem=64M console=ttyAMA0,115200 root=/dev/mtdblock2 rw rootfstype=jffs2 mtdparts=hi_sfr:1M(boot),4M(kernel),11M(rootfs)'  
setenv bootcmd 'sf probe 0;sf read 0x81000000 100000 400000;bootm 0x81000000'

可以进内核,但是进不了根文件系统,求大神???
ps.有些文件说用0x82000000,但是我看HiBurn的命令是用0x81000000,经过测试,两个都可以进内核,但是都进不了根文件系统。。

sdlqzql

5个粉丝

12

问答

0

专栏

0

资料

sdlqzql 2023-09-21 15:42:28
认可0

mark

或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
+ 添加网盘链接/附件

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

易百纳技术社区