s905x5m:BM201 / Amlogic S905X5M(S7D)
s905x5m 是一块硬件板。它的镜像和其他板一样被构建与验证,但安装或启动它的任何
一步都没有在实机上留下记录:本页每一条关于实机的陈述都未经验证。
这块板有两种存储布局。s905x5m.basic 与 s905x5m.emmc-full 把系统放在 eMMC 上,连同
加载器一起,以 USB 烧录包的形式整体安装。s905x5m.sd-full 把系统放在 SD 卡上,并要求
板子的 eMMC boot0 里有匹配的 Mica OS U-Boot,它的发布把这个 U-Boot 作为第二个包一并带上。
状态以状态表为准。
| 项 | 值 |
|---|---|
| 硬件 | X88 Pro X5M / BM201 开发板 |
| SoC | Amlogic S905X5M(S7D) |
| 架构 | arm64 |
| 启动链 | eMMC boot0 里的 Mica OS Amlogic 固件 → 必需的签名 FIT,其公钥嵌在加载器的控制 DTB 里 → 签名内核与认证的 native init → SYSTEM → 签名的 verity root/support → systemd |
| 固件形态 | U-Boot 在 eMMC boot0 里,从不在磁盘镜像里 |
| 分区 | FIRMWARE / SYSTEM / DATA,在 SD 上或 eMMC 用户区上 |
| 内核与 U-Boot | 厂商树,连同补丁固定在 mica-build:boards/s905x5m/bsp.env |
| 支持层级 | bring-up |
| 启动保证等级 | I1;不作硬件信任根声明 |
U-Boot 之前有不透明的 Amlogic 阶段。自动启动在消耗一次尝试之前先启动 60 秒的 Meson 看门狗,不导入任何 U-Boot 环境或启动脚本。
硬件与功能状态
Section titled “硬件与功能状态”BOARD_FEATURES="wifi bluetooth display audio containers"。每一个实机行都未测试。
| 功能 | 状态 | 说明 |
|---|---|---|
| 容器(Podman) | 随 sd-full 与 emmc-full 发布 |
— |
| Wi-Fi | 已声明,未在实机测试 | Seekwave 固件,经 SDIO |
| 蓝牙 | 已声明,未在实机测试 | 配对密钥与派生的控制器地址保存在 DATA 上 |
| 出厂接入点 | 随 sd-full 与 emmc-full 发布,未在实机测试 |
开箱即开、station 关闭;名称和密钥由设备码与产品密钥得出,印在标签上,认领前有效(mica-core:docs/factory-ap-key.md) |
| 设备码 | 发布 | 来源 emmc-cid,即 eMMC 芯片标识;重新烧录后不变 |
| BLE 配网 | 随 sd-full 与 emmc-full 发布,未在实机测试 |
手机设置 WiFi 网络并认领未认领的设备(首次启动第 5 节) |
| 射频独立选择 | 夹具已验证 | 不选 Wi-Fi 时,若蓝牙仍需要,共享的 SDIO 传输会保留 |
| 音频 | 已声明,未在实机测试 | 硬件初始化时设置 ALSA 路由 |
| HDMI 显示 | 已声明,未在实机测试 | 依赖厂商的显示初始化 |
| 以太网、USB | 在内核与设备树里 | 未认证 |
| BM201 前面板 | 随镜像发布 | 时钟与链路状态服务 |
| RTC | 保持能力未测试 | — |
| 状态灯 | 无 | 这块板没有声明 |
| 物理恢复动作 | 无 | 凭据恢复与恢复出厂被拒绝 |
status: board-dependent — evidence:
mica-build:boards/s905x5m/board.env,mica-build:boards/s905x5m/evidence.json,mica-build:boards/s905x5m/README.md
在 SD 上(sd-full):
| 分区 | 范围 | 说明 |
|---|---|---|
FIRMWARE |
扇区 64 到 128 MiB | 不含引导加载器:两份 64 KiB 的启动记录在 120 与 124 MiB 处,其余为填充 |
SYSTEM |
128–1152 MiB | ext4 + verity |
DATA |
自 1152 MiB 起,出厂 256 MiB | 唯一会扩展的分区 |
在 eMMC 上(basic、emmc-full),与厂商自己的分区并存,厂商分区保留不动:
| 分区 | 范围 | 说明 |
|---|---|---|
firmware |
128–136 MiB | 两份启动记录 |
system |
136–1160 MiB | ext4 + verity |
data |
自 1160 MiB 起,出厂 256 MiB | 唯一会扩展的分区 |
权威几何在 mica-build:boards/s905x5m/layout.tsv 与
mica-build:boards/s905x5m/layout-emmc.tsv。普通更新从不写 boot0 里的固件。
串口 ttyS0,921600 波特,earlycon=aml_uart,0xfe07a000。接线之前,先对照具体
板子的硬件记录确认接口与电压。
产品如下,各自以 s905x5m.<variant>.<YYYYMMDD-HHMM> 发布:
| 产品 | 存储 | 容器 | 发布里带什么 |
|---|---|---|---|
s905x5m.basic(默认) |
eMMC | 无 | USB 烧录包 .burn.img.gz |
s905x5m.emmc-full |
eMMC | 有 | USB 烧录包 .burn.img.gz |
s905x5m.sd-full |
SD | 有 | 磁盘镜像 .img.gz,以及引导加载器包 .sd-boot.img.gz |
每个发布还带有它的更新归档。校验见下载。
写入 eMMC(basic、emmc-full),未验证。 USB 烧录包是给厂商 USB Burning Tool 用的 Amlogic
v2 烧录镜像。它写入分区表、两个 bootloader 目标、厂商设备树和 Mica OS 的三个分区,不动
厂商的其他分区。上电时按住恢复键,板子进入 USB 烧录模式。构建会解包自己生成的每一个
烧录包,并证明每个载荷都与其来源一致;还没有人把它烧到实机上。
写入 SD(sd-full),未验证。 把解压后的磁盘镜像写到整张卡上。写入它并不会安装
引导加载器:镜像只覆盖 FIRMWARE、SYSTEM 与 DATA,只有 eMMC boot0 里已经有匹配的
Mica OS U-Boot 时,板子才会从这张卡启动。它就是同一个发布里镜像旁边的引导加载器包,
一个 USB 烧录包,经同一种 USB 烧录模式安装
(mica-build:boards/s905x5m/loader/README.md)。
细节见刷写第 6 节。
status: unsupported
先是一秒的控制台倒计时,不消耗尝试次数;然后启动看门狗、选择一条启动记录、把这次尝试 落盘并回读,再验证 FIT。DATA 在首次启动时扩展。这些都没有在实机上跑过。
发布 full、root 与 kernel 归档。普通更新从不触碰 eMMC boot0
里的固件,通用的固件维护也有意拒绝这块板的启动目标。见
更新与回滚。
这些仓库里没有任何东西启动这块板的镜像,所以更新路径在这里没有端到端的记录。
- 能启动的设备上可用:只读诊断、手动回滚、配置重置、应用数据重置。
- 不可用:凭据恢复与恢复出厂,因为没有声明物理恢复动作。
- 兜底是 Amlogic USB 烧录模式,上电时按恢复键进入。任何能接触到设备的人都能进入, 这也是这块板记录在案的物理访问边界。代价是所有分区和设备身份。
- 没有安全擦除。
见恢复。
- SD 启动要求 eMMC boot0 里有匹配的 Mica OS 固件;原厂固件不实现签名文件策略。
- 不透明的 Amlogic 阶段与射频固件保留其可审计性与分发许可上的限制。
- 加载器无法逐字节重现构建,因为厂商的签名步骤不是确定性的。
- 没有任何实机行在案,与受控对端的蓝牙配对未测试。
绑定:BM201 开发板;不涵盖其他 PCB、内存、存储或射频变体。
归属:Mica OS 项目拥有该移植及其认证;没有在案的集成商,也没有在实机上跑过的 矩阵。
来自非实机门禁的行只说明它们自己的范围,从不算作实机通过。
| 行 | 结果 | 日期 | 证据 / 原因 |
|---|---|---|---|
| 内核、带必需密钥的固件与恢复包构建 | pass | 2026-09-10 | 最终配置、在解压后的加载器里核对密钥、烧录包往返 |
| 启动记录策略与事务故障恢复 | pass | 2026-09-10 | 板卡的 C 测试与共享的 IO 故障门禁 |
| 射频独立选择 | pass | 2026-09-10 | 四个 Wi-Fi/蓝牙选择夹具 |
| 必需的 FIT 签名与密钥轮换 | pass | 2026-09-10 | 被修改、缺失与未知密钥的拒绝;重叠与移除 |
| 完整 SD 镜像与受保护的 DATA 扩展 | pass | 2026-09-10 | 离线镜像检查;只扩展 DATA,FIRMWARE 与 SYSTEM 的每个字节不变 |
| 安装与首次启动 | not tested | — | 需要实体 BM201 |
| 冷启动与热启动 | not tested | — | 需要实体 BM201 |
| A/B 切换与更新 | not tested | — | 需要实体 BM201 |
| 更新中断电 | not tested | — | 需要实体 BM201 与断电装置 |
| 看门狗 / 复位原因 | not tested | — | 需要实体 BM201 |
| 网络 / 射频、音频、显示、USB | not tested | — | 需要实体 BM201 |
| 恢复 | not tested | — | USB 烧录模式只有描述,没有实际操作过 |
status: board-dependent — evidence:
mica-build:boards/s905x5m/evidence.json,mica-build:boards/s905x5m/images.tsv,mica-build:tests/suites/lifecycle-uboot-fit