查看: 34|回复: 0

[晒图] 【硬件研究】H3C RC/RT/RW/NX30并非同一硬件:RT3000实物+RC3000 R009对照

[复制链接]
发表于 9 小时前 |法国| 显示全部楼层 |阅读模式
先从本站的一台 RC3000 R009 说起

本站之前有坛友发过一台中国电信 RC3000 R009:

IPQ5018
RTL8367S
QCN6102
KCT8539SD
W632GU6NB-11
Winbond W25N01GW

并报告强制 SSH 刷 NX30 后变砖,后续称“全砖,无输出”。

原帖:
https://www.chinadsl.net/thread-181780-1-1.html

这条记录我最近重新翻出来以后,发现它和我自己手里一台 RT3000 的硬件组合非常有意思。

因为我手里三台都叫 H3C Magic RT3000 的实体机,重新逐台拆机核对以后,也已经确认存在三套明显不同的硬件组合。


[P0] A:
IPQ5018 + 独立 Winbond RAM + QCA8337-AL3C + W25N01GWZEIG

[P0] B:
IPQ5000 + 集成 256 MiB DDR3L + QCA8337-AL3C + GD5F1GQ5REYIG

[P0] C:
IPQ5018 + 独立 GigaDevice RAM + RTL8367S + W25N01GWZEIG + 2×8539SD 5G FEM

这里的 A / B / C 是我为了绑定照片、日志和测试结果而使用的内部样机编号,不是 H3C 官方版本号。




图 1 我手里三台 H3C Magic RT3000 PCB 正面对照



所以这篇想讨论的核心其实很简单:

RC / RT / RW / NX30 这一批机器,不能再仅凭商品型号判断里面是哪套硬件,更不能因为“以前有人通刷成功”就默认所有批次都相同。


一、最关键的一次更正:我的 B 机实际是 IPQ5000

项目早期资料里,我一直把三台 RT3000 都概括成 IPQ5018。

这次重新拍 B 机以后,实体顶标已经很清楚:

A:IPQ5018  B:IPQ5000  C:IPQ5018




图 2 B 机实体顶标为 IPQ5000,不是早期资料里的 IPQ5018



B 机同时还是:

QCA8337-AL3C
GD5F1GQ5REYIG
QCN6102

并且是我当前 Product R1 r5 的发布基线。

这次更正以后,一个很直接的结论就是:

软件里出现 ipq5018 平台名、DTS 名称或者 compatible,不能代替实体芯片顶标。


二、连原厂后台的 VER.A 都不足以区分 B 和 C

更有意思的是:

B、C 两台原厂后台都显示:

H3C Magic RT3000
Bootrom 100
硬件版本 VER.A

但是软件版本分别是:

B:RT3000V100R005




图 3 B:R005 / Bootrom 100 / VER.A



C:RT3000V100R007




图 4 C:R007 / Bootrom 100 / VER.A



而实体拆机确认:

B:
IPQ5000 + QCA8337-AL3C + GigaDevice NAND

C:
IPQ5018 + RTL8367S + Winbond NAND + 2×8539SD FEM


至少在目前这两个实体样本上:

RT3000 + VER.A + Bootrom 100

仍不足以唯一确定实际硬件。

至于 R005 / R007 是否固定对应某一种硬件,目前没有足够样本,我不做这种映射。


三、QCA8337 与 RTL8367S 已经是两条不同的 Ethernet 路线

A、B 使用:

QCA8337-AL3C

C 使用:

RTL8367S




图 5 B 机 QCA8337-AL3C 与 C 机 RTL8367S



这至少意味着:

交换机驱动
初始化
端口映射
VLAN
Bridge / LAN-WAN 配置

不能继续假定只有一种硬件。

至于更底层的 CPU ↔ Switch 接口模式、SerDes / GMAC,以及 NSS 数据路径,我现在会按具体 PCB、DTS 和运行证据单独确认,不从芯片料号直接推出。


目前 C 机在 RAM 环境下已经完成过:

三口数据通信
LAN Bridge
自动 LAN/WAN
DHCP / DNS / NAT
Internet 出口
阶段性的 2.4G / 5G 测试

但仍然只标记为:

RAM-stage / PARTIAL

这里解释一下:

Product R1 r5
= 当前只在 B 实体样机完成阶段发布验收的 QSDK 固件基线。

RAM-stage / PARTIAL
= 只在 RAM 启动环境里完成部分能力验证,还没有完成 NAND 持久化、完整长稳和正式发布验收。


四、为什么本站那台 RC3000 R009 很重要

本站那台 R009 报告:

IPQ5018
RTL8367S
QCN6102
KCT8539SD
W632GU6NB-11
W25N01GW

而我的 C:

IPQ5018
RTL8367S
QCN6102
2×8539SD
Winbond NAND

两者有很多相似字段。

但我现在只把它理解成:

RTL8367S 已经跨 RT3000 / RC3000 两个商品型号出现。

而不是:

“C = RC3000 R009”

因为目前并没有证据证明:

PCB 相同
CPU-Switch interface 相同
GPIO 相同
分区相同
BDF 相同
ART / calibration 相同

更不能据此直接互刷。


五、经典 NX30 为什么不能再当万能“公版模板”

经典 NX30 公开拆机样本大致是:

IPQ5000
集成 256 MiB DDR3L
QCA8337-AL3C
GD5F1GQ5REYIG
QCN6102
2×KCT8539S

它与我的 B 在很多主要器件上接近。

但 B 的整板照片没有看到类似的独立 5G FEM。

而 C 虽然也有两颗外置 FEM,却是:

8539SD




图 6 C 机 U32 / U33 两颗 8539SD



所以:

QCN6102 相同

并不能自动推出:

FEM 相同
BDF 相同
PAEN / C1 / C2 相同
GPIO 相同
校准数据相同

目前也不把 KCT8539S 与 8539SD / KCT8539SD 当成同一个 exact part。


六、NAND 也不能只看“128M”




图 7 A / B / C NAND 顶标对照



A:
W25N01GWZEIG
历史记录 2048 + 64 OOB

B:
GD5F1GQ5REYIG
历史记录 2048 + 128 OOB

C:
W25N01GWZEIG
历史记录 2048 + 64 OOB


论坛恢复帖子里常见:

128+4 / 132 MB
128+8 / 136 MB

对于 128 MiB、2048 Byte/page 的 NAND:

65536 pages × 64 Byte OOB = 4 MiB

所以:

128 + 4 = 132 MiB

65536 pages × 128 Byte OOB = 8 MiB

所以:

128 + 8 = 136 MiB

因此目前最有证据支持的解释是:

这些数字与 raw NAND data + OOB dump 体积高度吻合。

但具体编程器是不是完整保留 OOB、ECC / bad-block 信息怎样排列,还取决于编程器和 dump 模式。

所以 132 / 136 MiB 本身既不能唯一说明 dump 格式,也不能直接证明 MTD 分区布局不同。


另外提醒:

目前研究里核对到的 Winbond、GigaDevice、ESMT 相关 SPI NAND 都属于 1.8V-class 器件。

编程器不要因为“都是 WSON8”就默认 3.3V 供电。


七、我现在不会再把“刷成功”直接写成“完整支持”

论坛里常见:

能开机
能进后台
有 Wi-Fi
刷成功
变砖

这些现象都很有价值。

但我现在会分别记录:

BOOT
SHELL / WEB
LAN
WAN
Wi-Fi 广播
Wi-Fi 关联
DHCP
Internet
Mesh
Reboot
Stability

没有测试就保留 UNKNOWN / NOT_EXECUTED。

比如:

“系统启动并出现 SSID”

最多直接说明:

BOOT = PASS
WIFI_BCAST = PASS

不能自动说明 WAN、DHCP、Internet、稳定性都通过。

反过来“砖了”也不能自动把 LAN / WAN / Wi-Fi 全部写成 FAIL。


本轮我按这个规则重新审查了 19 条公开跨刷 / 运行记录,汇总是:

VALIDATED_SUPPORT:0
PARTIAL:7
FAIL:3
CLAIMED_ONLY:5
UNKNOWN:4


其中 3 条 FAIL 都只在 BOOT 层有直接证据。

这 19 条的逐条来源和 capability 判定矩阵我还在整理成 GitHub 独立附录,所以这里先把它称作:

本轮审计汇总

等附录公开后,每一项都应该可以追到原始来源和判定依据。


八、我现在更倾向:先识别板子,再谈跨刷

以前容易做成:

RT3000 → RT3000 固件
RC3000 → RC3000 固件
NX30 → NX30 固件

现在我的工具和适配路线准备改成:

读取真实硬件
→ SoC / RAM
→ Switch
→ NAND
→ Partition / Boot
→ RF / FEM
→ BDF / calibration
→ 匹配已验证 Hardware Profile
→ 再决定是否允许持久化写入

遇到未知组合:

不猜。

停止写入,先收集资料。



特别提醒:我当前公开的 Product R1 r5 仍然只对已经完成实机验收的 B 机 Profile 负责。其它 RC / RT / RW / NX30 批次不要因为“看起来相似”直接套刷。


九、希望本站老玩家帮忙补样本

chinadsl 这边运营商机器玩家比较多,所以我也很希望能收集更多真实批次。

如果手里有:

RC3000
RT3000
RW3000
RW3010
NX30

尤其是和上面不一样的版本,欢迎提供:

PCB 正反面
PCB REV / VER
SoC 顶标
Switch 顶标
NAND 顶标
QCN6102 / FEM 区域
原厂软件版本

请遮掉完整 SN、MAC、账号和其它个人信息。

如果出现第四种 RT3000,或者另一种 RC3000,就记录新的样本。

目标不是证明现有分类永远正确,而是把真实硬件地图一点点补完整。


完整研究与项目地址

Hardware Research v1.0:

https://github.com/FlyFish-go/H3C-RT3000-Product-R1/blob/main/docs/H3C-IPQ50xx-Hardware-Research-v1.0.md

项目主页:

https://github.com/FlyFish-go/H3C-RT3000-Product-R1

公开 GitHub 文档里已经放入我自己的 A / B / C 实体照片、公开衍生图处理说明和 SHA-256。

外部作者图片目前不重新上传,只保留原帖链接和文字归纳。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

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

本版积分规则

关闭

站长推荐上一条 /1 下一条

相关侵权、举报、投诉及建议等,请发 E-mail:yesdong@qq.com

Powered by Discuz! X5.0 Licensed © 2001-2026 Discuz! Team.44152102000001

在本版发帖QQ客服返回顶部