跳转到内容

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 环境或启动脚本。

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