linuxer
Published on 2024-07-04 / 232 Visits
0
0

阿里云 Aliyun AP8220 刷Openwrt uboot分区表信息

分区表

序号

shengji分区名称

类型

起始地址

大小

说明

0

0:SBL1

SPI

0x00000000

0x00050000

启动引导加载程序

1

0:MIBIB

SPI

0x00050000

0x00010000

MIBIB 配置

2

0:QSEE

SPI

0x00060000

0x00180000

QSEE(安全引导)

3

0:DEVCFG

SPI

0x001E0000

0x00010000

设备配置

4

0:APDP

SPI

0x001F0000

0x00010000

APDP 数据分区

5

0:RPM

SPI

0x00200000

0x00040000

电源管理配置

6

0:CDT

SPI

0x00240000

0x00010000

校准数据表(CDT)

7

0:APPSBLENV

SPI

0x00250000

0x00010000

应用引导环境

8

0:APPSBL

SPI

0x00260000

0x000A0000

应用引导加载程序

9

0:ART

SPI

0x00300000

0x00040000

校准/射频数据

10

0:ETHPHYFW

SPI

0x00340000

0x00080000

以太网 PHY 固件

11

product_info

SPI

0x003C0000

0x00010000

产品信息

12

mtdoops

SPI

0x003D0000

0x00020000

内核日志崩溃存储

13

priv_data1

SPI

0x003F0000

0x00010000

私有数据分区

14

rootfs1

NAND

0x00000000

0x03000000

主 Root 文件系统

15

rootfs2

NAND

0x03000000

0x03000000

备用 Root 文件系统

16

usrdata

NAND

0x06000000

0x02000000

用户数据分区


说明

  1. SPI 分区: 前 13 个分区位于 SPI 闪存(4MB),用于启动加载器、配置文件和设备校准数据等。 8脚的小芯片中储存!!!

  2. NAND 分区: rootfs1rootfs2 是主文件系统和备用文件系统分区,位于 NAND 闪存,usrdata 用于存储用户数据。bga63 128M

刷机前奏

准备工作

  1. 设备和工具

    • 阿里云 AP8220 机器一台。 这里以win系统刷机,其他系统也可以 linux mac 都可以... 其他如果有需要到时候在写一下. 主要还是以win为主 虽然我是在mac下用的win刷..

    • DC 12V 2A 电源

    • USB 转 Console 线(用于连接设备串口)难得带有console调试接口一般都是ttl要拆机.。

    • 网线(连接设备 LAN 口和电脑)。

    • OpenWrt 固件文件(以 factory.bin 结尾)。

    • Mibib 文件(mibib.bin)。

    • TFTP 工具:tftp32.exe

    • 串口工具:MobaXterm。

  2. 电脑配置

    • 设置静态 IP 地址:192.168.10.1。(默认uboot是192.168.10.10,服务端是1 如果刷了其他什么uboot的可能改变)

    • 确保 tftp32.exe 和相关文件(mibib.bin、固件文件)放在同一目录中。

    • 打开 tftp32.exe,并确认服务器地址为 192.168.10.1


进入 U-Boot

  1. 使用 USB 转 Console 线连接设备 Console 口。

  2. 打开MobaXterm ,配置如下:

    • 连接方式:Serial

    • 串口号:查看设备管理器中分配的 COM 口,例如 COM4

    • 波特率:115200。 (win下有些端口选上会报错,可以先试试用9600打开然后关闭在切换到11520试试)

  3. 通电启动设备,同时快速按键盘 Shift+@ (视具体键位,可能需要多次尝试),进入 U-Boot。


步骤一:刷入大分区(Mibib 文件)

  1. 在设备 LAN 口和电脑网口之间连接网线。

  2. 在 MobaXterm 中执行以下命令:

    tftpboot mibib.bin

  3. nand device 1

  4. nand erase 0x50000 0x10000

  5. nand write $fileaddr 0x50000 $filesize

  6. 刷写完成后,断电。


步骤二:刷入固件

  1. 确保设备重新上电并进入 U-Boot。

  2. 将固件文件(以 factory.bin 结尾)重命名为 fw.bin 并放入 TFTP 服务器目录。

  3. 在MobaXterm中执行以下命令:

    tftpboot fw.bin flash rootfs

步骤三:设置启动环境

继续在MobaXterm 中执行以下命令:

set boot3 "set mtdparts mtdparts=nand0:0x8000000@0x0(fs)" 
set boot4 "ubi part fs && ubi read 42000000 kernel" 
set setup1 "partname=1 && setenv bootargs ubi.mtd=rootfs ${args_common}" 
set setup2 "partname=2 && setenv bootargs ubi.mtd=rootfs ${args_common}" 
saveenv
reset      (直接断电接上也行)

固件下载,发教程前已经挺多了. github也有好多项目

这里也搜集一些 需要用的上就下吧!

https://p.godsun.pro/路由器/aliyunAP8220

由于现在好多网盘限流 挂的alist也省着点 确实需要可以到里面获取账号密码下载

注意事项

  1. 固件文件命名和路径

    • 请确保 fw.binmibib.bin 均位于 TFTP 服务器目录中。

    • 确保文件名与命令中保持一致。

  2. 网络和环境配置

    • 静态 IP 地址需正确设置为 192.168.10.1 子掩码255.255.255.0

    • 保证 TFTP 服务正常运行,文件可正常读取。

  3. 出错排查

    • 如果刷写过程出现错误,请检查网络连接、文件路径和设备是否正常启动。

    • 多次尝试进入 U-Boot。

    • 刷机视频 扩容内存


Comment