Skip to main content
在 RT 系统上进行 OTA 更新和手动内核升级,需要在标准内核升级流程之外执行额外步骤。RT 调优配置不会自动保留,且在将设备重新投入生产之前,必须重新验证升级后的延迟基线。

升级工作流

Qualcomm® Linux 上的 OTA 更新会替换 ESP 上的 UKI 镜像,以及(如适用)dtb_a 分区中的 DTB。标准内核和 RT 内核的刷写流程完全相同。

1. 记录当前 RT 内核版本

升级前,记录正在运行的内核版本和最坏情况延迟作为基线:
运行一次简短的 cyclictest 以建立升级前的延迟基线:
记录输出中的 Max 延迟值。

2. 刷写新的 RT 镜像

通过 Yocto 构建:
通过独立的 ESP 更新:

3. 重启并验证更新后的内核

4. 重新应用 RT 调优并运行升级后验证

RT 调优设置在重启后不会保留。请在运行验证之前手动或通过调优服务(见下文)重新应用它们:
将 Max 延迟与升级前的基线进行比较。若出现回退,则表明存在配置或内核问题。请参阅 RT 验证与已知限制。

使 RT 调优在重启后保持生效

RT 调优命令是一次性的,仅作用于当前运行的系统,重启后即失效。要在每次启动后自动重新应用调优,请将调优命令封装在一个 systemd 服务中: 1. 创建调优脚本:
2. 创建 systemd 单元文件:
3. 启用该服务:
对于 IQ-8275,请调整工作队列掩码和 IRQ 亲和性 CPU 列表以匹配该平台的拓扑(CPU 0-2、4-7;掩码 F7)。有关 IQ-8275 专用的调优命令,请参阅 RT 验证与已知限制。

已知升级约束

内核与 DTB 版本对齐 始终同时刷写 dtb.bin 和 efi.bin。内核与 DTB 版本不匹配可能导致设备树绑定失败和启动错误。 Initramfs 如果 initramfs 针对 RT 构建进行了定制(例如在早期启动阶段运行调优脚本),升级内核版本时请重新构建它。针对旧内核构建的过时 initramfs 可能无法加载所需模块。 PREEMPT_RT 配置片段 添加到 linux-qcom-rt_6.18.bb 的自定义 .cfg Kconfig 片段必须在每次内核版本升级后进行审查。选项可能被重命名、移除或依赖关系发生变化。不匹配的片段会导致 Yocto 构建警告(Fragment ... references unknown config)或静默失效。 安全启动 如果设备配置了安全启动,新的 UKI 在刷写之前必须使用正确的密钥签名。未签名或签名错误的 UKI 会在启动时被 UEFI 固件拒绝。请参阅 UEFI 与 systemd-boot。