谷动谷力

 找回密码
 立即注册
查看: 1802|回复: 0
打印 上一主题 下一主题
收起左侧

JTAG MT7688 MT7628烧录flash (救砖/调试)

[复制链接]
跳转到指定楼层
楼主
发表于 2023-9-18 17:57:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
JTAG MT7688 MT7628烧录flash (救砖/调试)


MT7688 正常情况下可以通过uboot来升级固件,也能升级uboot,但是难免有些情况下会升级失败或者BootLoader出错,或者是裸的flash,需要下载程序,

有几种常用的方法:
第一种最简单粗暴的方法就是拆flash然后用flash烧录器烧录程序到flash中;
第二种方法就是使用调试器运行ramrun然后进行固件更新,而在MT7688上就是使用JTAG。

安装openocd
Using-a-Raspberry-Pi-as-a-JTAG-Dongle
树莓派作为MCU的调试器(无线远程调试)
sudo apt-get update
sudo apt-get install -y autoconf libtool libftdi-dev libusb-1.0-0 libusb-1.0-0-dev
git clone --recursive git://git.code.sf.net/p/openocd/code openocd-git
cd openocd-git
./bootstrap
./configure --enable-sysfsgpio\
     --enable-maintainer-mode \
     --disable-werror \
     --enable-ft2232_libftdi \
     --enable-ep93xx \
     --enable-at91rm9200 \
     --enable-usbprog \
     --enable-presto_libftdi \
     --enable-jlink \
     --enable-vsllink \
     --enable-rlink \
     --enable-arm-jtag-ew \
     --enable-dummy \
     --enable-buspirate \
     --enable-ulink \
     --enable-presto_libftdi \
     --enable-usb_blaster_libftdi \
     --enable-ft2232_libftdi\
     --prefix=/usr
make
sudo make install
配置MT7688 openocd相关,并连接引脚
这里使用angelic47写的配置文件

git clone https://github.com/Neutree/MT7688-OpenOCD
如果是使用linux开发板用gpio模拟jlink,则根据实际情况修改jlink-gpio.cfg中的GPIO模拟JTAG的引脚,比如将

# tck tms tdi tdo
sysfsgpio_jtag_nums 12 11 6 1
sysfsgpio_trst_num 0
sysfsgpio_srst_num 3
修改成

# tck tms tdi tdo
sysfsgpio_jtag_nums 11 25 10 9
sysfsgpio_trst_num 7
sysfsgpio_srst_num 24
如果是有JTAG-SEEGER硬件就直接使用jlink_seeger.cfg文件
一下配置文件均用jlink.cfg表示

然后连接好JTAG相关的这几个引脚,
以及给mt7688的串口连接到PC方便当uboot启动时看到启动信息,从而来判断我们是否成功做到了

运行openocd
sudo openocd -f jlink.cfg
运行成功后会检测到mt7688并且启动telnet服务,使用本机或者另一台PC连接到telnet

sudo apt install telnet
telnet 127.0.0.1 4444
#(注意如果要在本机执行,可以用命令`sudo openocd -f jlink.cfg &`让命令在后台执行)
>
加载uboot在ram中运行
用minicom打开mt7688的串口(在PC上),波特率为57600(这里的ramboot.bin是这样的,根据实际情况决定)

reset halt
ddrinit
load_image ramboot.bin 0x80200000
resume 0x80200000
需要注意的是ramboot.bin需要填绝对路径才能找到文件

让执行了resume指令后应该就能在mt7688的串口看到uboot信息输出了,这时及时选择选项就可以进入uboot的正常升级程序了

如果反应慢了没来得及按按键,没关系,使用

reset halt
resume 0x80200000
再来一次即可

参考文章

http://www.pawelwozniak.info/ind ... ng-u-boot-with-jtag

https://www.right.com.cn/forum/f ... &authorid=53009

https://github.com/synthetos/PiO ... Pi-as-a-JTAG-Dongle


版权声明:本文为 neucrack 的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://neucrack.com/p/142


+137

最近谁赞过

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|深圳市光明谷科技有限公司|光明谷商城|Sunshine Silicon Corpporation ( 粤ICP备14060730号|Sitemap

GMT+8, 2024-12-27 09:10 , Processed in 0.164299 second(s), 43 queries .

Powered by Discuz! X3.2 Licensed

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表