回复:求助:刷新 redboot 选项

18 views
Skip to first unread message

horsley

unread,
Oct 20, 2009, 10:34:20 PM10/20/09
to mi424_openwrt
一筹莫展
 
目前进展情况
1、usb-ttl 线没有问题,接在另外一台路由上可以正常输入输出
2、128m内存是卖家添加,具体如何操作,我不清楚。但到手时官方固件,以及第一次刷新 32m redboot 时,都是正常使用的。
3、现在无论刷新 32m redboot 还是 128m redboot ,串口都没有输出。lan,wan 口 ping 192.168.1.1 都不通。
按住 reset 键,是有一盏红灯亮;但led 显示感觉没有规律,有时不用按 reset 也是红灯。
4、openocd 启动监听,telnet localhost 444 进入,poll 可以看到 cpu 是 halt 状态,使用 resume 可以置为 running 状态,感觉cpu 没有问题。
 
现在我分析无非以下情况:
第一种情况:
redboot 已经正常启动,但由于某种原因(或许包括硬件损坏),串口无输出。此时nep 未正常驱动,由于尚未装 openwrt 等系统,网络、串口都无法访问。
对此,如果有一个 8m flash 完整 copy (包含一个可用的 openwrt ),刷新flash,系统启动后网络应该可用,可以通过  telnet 登录使用。
 
第二种情况:
串口正常,但由于某种原因 cpu hang 住,未能正常引导 redboot 。此种情况已经超出我的能力,或许需要嵌入式系统跟踪调试。
 
以上分析,请大家帮忙,想想办法,多谢了!



看陆川杨幂新片《琴棋书画》,品网易3D国韵网游《天下贰》

养鱼的猫

unread,
Oct 21, 2009, 12:52:53 AM10/21/09
to mi424_openwrt
 
哦。红灯是不是固定是开机后几秒后点亮?如果是的话,基本可以确定是你的cpu的ttl口被击穿了。正常状态下红灯量代表redboot的初始化已经完成。这时应该可以从wan口telnet进入到redboot的控制界面。 你可以尝试一下telnet 9000端口。(wan口)
 
如果这样也不行的话,那就肯定是硬件问题了。可以考虑换一下内存。(90%是内存坏了)
 
 
 
 
------------------ 原始邮件 ------------------
发件人: "horsley"<hor...@163.com>;
发送时间: 2009年10月21日(星期三) 上午10:34
收件人: "mi424_openwrt"<mi424_...@googlegroups.com>;
主题: 回复:求助:刷新 redboot 选项

HongPeng Tian

unread,
Oct 21, 2009, 12:54:33 AM10/21/09
to mi424_...@googlegroups.com
我可以略微帮助你。我没时间查redboot,你查redboot dump 8M flash的命令,我dump 我的flash给你。
另外,我还可以给你424原厂的8M flash.

horsley 写道:

horsley

unread,
Oct 21, 2009, 10:23:24 PM10/21/09
to mi424_openwrt

感谢网友 HongPeng Tian 鼎力支持。我查询了一下redboot命令,在没有 jtag 的情况下要备份flash 还真是麻烦。
 
我想到了两个办法:
一、利用 redboot 的dump 命令,命令格式如下
dump -b <内存地址> [-l <长度>] [-s]   # -s 可以忽略,用于调整输出格式,参数可以为: 1,2,4
dump -b 0x50000000 -l 0x800000
 
但此条命令并非是 dump flash,存成一个文件,而是在屏幕上显示16进制输出。
 
二、使用 linux 下的 dd 指令。
启动 mi424 ,进入 openwrt ,使用 dd 指令进行备份
dd if=/dev/mtd of=flash.bin bs=1 count=8388608  # count=8388608 (8M)可以忽略,这里指定取出 8M
此条命令可行,但是有个致命缺陷。因为 flash 总共只有8M,openwrt 也在其上运行,flash.bin 往哪里保存。
除非外接硬盘,或者使用 sshfs 之类的网络存储。
 
折衷的办法,备份 mtd 上的每个单独分区,比如:
1、用 cat /proc/mtd 查看分区情况
2、用 dd if=/dev/mtdxxxx of=mtdxxx.bin bs=1 进行备份。
 
但此方法也有问题, mtd 的分区信息写在哪里,没有这个信息,单独备份是没用的。
 
考虑以上办法,只有《方法一》可行,可以保存完整 flash 信息。我考虑最终方法如下,利用 telnet 的记录功能,保存dump出的文件,然后编写个小程序,将该文件保存成 bin文件。具体指令如下。
1、telnet -f dump.txt 192.168.1.1 9000   # 登录至 192.168.1.1 9000端口,并将命令交互记录至 dump.txt 文件
2、运行 dump -b 0x50000000 -l 0x800000 命令 #执行时间较长
3、退出, dump.txt 文件既为 flash 完整备份,当然格式需要转换,这个我可以进行处理。
 
以上办法,麻烦 HongPeng Tian 老兄了,我的邮箱: hor...@163.com 感激不尽
另外对于 mi424 原厂的 flash 如何去除,因为机器到手我就刷了,就不是太清楚了,还请各位朋友指教。
 
-----------------------------------------------------------------------
我可以略微帮助你。我没时间查redboot,你查redboot dump 8M flash的命令,我
dump 我的flash给你。
另外,我还可以给你424原厂的8M flash.



"雪见"杨幂邀你共品3D国韵网游《天下贰》,海报免费领

linux_pro

unread,
Oct 21, 2009, 10:30:20 PM10/21/09
to mi424_...@googlegroups.com
兄弟,我倒是有JTAG,可以帮你备份出来。
你提供命令,3天的时间给你搞出来。

我同意猫大的说法,请不要太怀疑自己的问题,应该怀疑硬件。比如TTL被击穿等。

2009/10/22 horsley <hor...@163.com>

horsley

unread,
Oct 21, 2009, 10:41:17 PM10/21/09
to mi424_openwrt
感谢 linux_pro 老大,使用 openocd dump flash 就很简单了。
openocd.cfg 跟 ixp42x.actions 文件同论坛上完全一致。
 
只需要将ixp42x.actions 中的
“flash write_image erase rb-mi424wr-ROM_joe4.bin 0x50000000 bin”
 
这一句修改为:
dump_image flash.bin 0x50000000 0x800000
 
即可,运行完毕,就会生成 flash.bin 文件。
同样 mi424 的原厂 flash 也可以轻易 dump处理。
多谢哈,看到你在 right 论坛出 mi424 了,不玩这个了,呵呵。
 
 
-------------------------------------

兄弟,我倒是有JTAG,可以帮你备份出来。你提供命令,3天的时间给你搞出来。

我同意猫大的说法,请不要太怀疑自己的问题,应该怀疑硬件。比如TTL被击穿等。

2009/10/22 horsley <hors...@163.com>




网易历六年耗亿资打造,3D国韵网游《天下贰》,免费领光盘

linux_pro

unread,
Oct 21, 2009, 11:09:45 PM10/21/09
to mi424_...@googlegroups.com
不是不玩了,是没空闲时间玩了。
公司的项目有在openwrt上运行的,我正在搞开发一个arm,使openwrt复合设备运行。

不用客气。抽空给你搞出来。

2009/10/22 horsley <hor...@163.com>

linux_pro

unread,
Oct 21, 2009, 11:48:28 PM10/21/09
to mi424_...@googlegroups.com
完整8M
有openwrt系统。
备份前测试系统正常。GOOG LUCK。

7z压缩,分段.


2009/10/22 linux_pro <snip...@gmail.com>
MI424_8M_ALL_IN_ONE.7z.001
MI424_8M_ALL_IN_ONE.7z.002
MI424_8M_ALL_IN_ONE.7z.004
MI424_8M_ALL_IN_ONE.7z.003

HongPeng Tian

unread,
Oct 22, 2009, 7:41:24 AM10/22/09
to mi424_...@googlegroups.com
看来我没必要发了,linux_pro已发了。

horsley 写道:

horsley

unread,
Oct 23, 2009, 12:24:29 AM10/23/09
to mi424_openwrt
感谢大家支持。刷了linux_pro 的完整版本,故障依旧。
看来是我的 mi424 板子硬件出问题了,状况不明,估计flash 坏了。
昨天检测 flash 内容同 文件不符,还没有进一步检测,回头多刷几次看看。
 
有兄弟问到 wiggler 的问题,我的经验是 wiggler + urjtag 绝对可以刷 mi424。
前提是需要自己修改下接线,增加 nTRST 和 nSRST。这个方案比 openjtag 要便宜的多。




09年新晋3D主流网游《天下贰》,网易六年亿资打造
Reply all
Reply to author
Forward
0 new messages