👁 2807
和刷其他京东云的区别差不多,两种方式可选。
原厂 GPT 分区表
IPQ5018 平台,eMMC 64GiB,26 个分区。刷机前参考此表确认分区号,特别是 APPSBL(P11)、BOOTCONFIG(P2/P3)。
| # | 分区名 | Start (sector) | End (sector) | Size | Code | 类型 |
|---|---|---|---|---|---|---|
| 1 | 0:SBL1 | 34 | 545 | 256.0 KiB | A012 | BOOT |
| 2 | 0:BOOTCONFIG | 546 | 801 | 128.0 KiB | FFFF | CONFIG |
| 3 | 0:BOOTCONFIG1 | 802 | 1057 | 128.0 KiB | FFFF | CONFIG |
| 4 | 0:QSEE | 1058 | 2337 | 640.0 KiB | A016 | BOOT |
| 5 | 0:QSEE_1 | 2338 | 3617 | 640.0 KiB | FFFF | BOOT |
| 6 | 0:DEVCFG | 3618 | 3873 | 128.0 KiB | FFFF | BOOT |
| 7 | 0:DEVCFG_1 | 3874 | 4129 | 128.0 KiB | FFFF | BOOT |
| 8 | 0:CDT | 4130 | 4385 | 128.0 KiB | A01B | BOOT |
| 9 | 0:CDT_1 | 4386 | 4641 | 128.0 KiB | FFFF | BOOT |
| 10 | 0:APPSBLENV | 4642 | 5153 | 256.0 KiB | FFFF | BOOT |
| 11 | 0:APPSBL | 5154 | 6433 | 640.0 KiB | A015 | UBOOT |
| 12 | 0:APPSBL_1 | 6434 | 7713 | 640.0 KiB | FFFF | UBOOT |
| 13 | 0:ART | 7714 | 8737 | 512.0 KiB | FFFF | FW |
| 14 | 0:WIFIFW | 8738 | 21025 | 6.0 MiB | FFFF | FW |
| 15 | 0:WIFIFW_1 | 21026 | 33313 | 6.0 MiB | FFFF | FW |
| 16 | 0:BTFW | 33314 | 33825 | 256.0 KiB | FFFF | FW |
| 17 | 0:BTFW_1 | 33826 | 34337 | 256.0 KiB | FFFF | FW |
| 18 | 0:HLOS | 34338 | 46625 | 6.0 MiB | FFFF | KERNEL |
| 19 | 0:HLOS_1 | 46626 | 58913 | 6.0 MiB | FFFF | KERNEL |
| 20 | rootfs | 58914 | 181793 | 60.0 MiB | FFFF | ROOTFS |
| 21 | rootfs_1 | 181794 | 304673 | 60.0 MiB | FFFF | ROOTFS |
| 22 | rootfs_data | 304674 | 566817 | 128.0 MiB | FFFF | DATA |
| 23 | plugin | 566818 | 2663969 | 1024.0 MiB | FFFF | DATA |
| 24 | log | 2663970 | 2926113 | 128.0 MiB | FFFF | DATA |
| 25 | swap | 2926114 | 3974689 | 512.0 MiB | FFFF | SWAP |
| 26 | store | 3974690 | 4964702 | 483.4 MiB | FFFF | STORE |
GPT GUID: 98101B32-BBE2-4BF2-A06E-2BB33D000C20 | 总扇区 4964702 | 对齐 2-sector | 高亮:引导/UBOOT BOOTCONFIG 内核/根文件系统 用户数据/存储
方法一:拆机接 TTL 刷
接线:RX→TX、TX→RX、GND→GND,3.3V 电平。看不懂的放弃,看得懂的继续。
打断 U-Boot
开机后马上粘贴这行打断 TTL(只能复制粘贴整行),密码是 jdqca。密码不对多试几次,或者看 这篇 TTL 刷 U-Boot 详解 里的视频。
TFTP 刷入 U-Boot
⚠️ 先备份原厂系统及分区再操作!打开 tftp64,选到 U-Boot 文件夹。
setenv serverip 192.168.1.123 && setenv ipaddr 192.168.1.1
tftpboot uboot.mbn
flash 0:APPSBL && flash 0:APPSBL_1
看到进度 ## 显示刷写完成。报错的话检查防火墙和网卡设置。
刷入 GPT 分区表
刷完 U-Boot 后顺便刷 GPT,决定以后系统分区大小:
tftpboot 0x44000000 gpt.bin
mmc dev 0 && mmc erase 0x0 0x22 && mmc write 0x44000000 0x0 0x22
flasherase 0:BOOTCONFIG && flasherase 0:BOOTCONFIG1
进 U-Boot Web 刷固件
断电,插电同时按住 JOY 按钮进入 U-Boot。网线接 WAN 口,电脑 IP 设为 192.168.1.123,浏览器打开192.168.1.1 U-Boot Web 页面,上传固件即可。
方法二:开启 Telnet 刷
通上网直接在线刷写 U-Boot 和 GPT,不需要 TTL 工具,但每步必须对比校验是否正确完成,否则变砖!
开启 Telnet
用恩山大神的方法开启 Telnet(最新固件可能不行,大多数还行),详见 BE6500 文章的 Telnet 开启助手。
下载并校验文件
curl -o uboot.bin "https://godsun.pro/wp-content/uploads/halo/jdcax3000uboot.bin" && md5sum uboot.bin
# MD5 应为: ce26eed3983e6e96173fceef75ac4045
MD5 对不上就别继续,重新下载。GPT 文件同理,MD5 应为 0896dba8958684376a3c16868e490902。
刷写 U-Boot(P11 + P12)
dd if=/uboot.bin of=/dev/mmcblk0p11 bs=512 count=1280 && dd if=/dev/mmcblk0p11 bs=512 count=1280 | md5sum
dd if=/uboot.bin of=/dev/mmcblk0p12 bs=512 count=1280 && dd if=/dev/mmcblk0p12 bs=512 count=1280 | md5sum
写后 MD5 与文件一致才继续。
刷入 GPT 分区表
dd if=/gpt.bin of=/dev/mmcblk0 bs=512 count=34
sync
写入后重启进 U-Boot,新分区表生效,某些分区大小会改变(如 rootfs 扩大)。之后按住 JOY 进 U-Boot Web 刷固件。
清空 BOOTCONFIG
dd if=/dev/zero of=/dev/mmcblk0p2 bs=512 count=256 && dd if=/dev/zero of=/dev/mmcblk0p3 bs=512 count=256
清完后重启,按住 JOY 进 U-Boot Web 刷固件。
断电,插电同时按住 JOY 按钮进入 U-Boot。网线接 WAN 口,电脑 IP 设为 192.168.1.123,浏览器打开192.168.1.1 U-Boot Web 页面,上传固件即可。
PS:目前在线刷的是最新的uboot已经支持DHCP 不需要设置固定的ip。。。
💖 打赏支持
如果这篇文章帮到了你,欢迎打赏支持
微信扫一扫,赞赏支持
发表回复