已开启
[任务]优化qemu代码仓dtb文件管理逻辑 #85
xuhaijun创建于 28 天前
28 天前 添加了label:sig/sig-CICD
openUBMC-robot
28 天前 评论:
28 天前 评论:
欢迎来到 openUBMC 社区
Hey @xuhaijun , 感谢你对社区的贡献.
机器人使用手册
有关指令的使用,可以点击 说明文档 或 论坛 查看详情。开发人员可以在每个PR或Issue下方评论特定指令来触发机器人任务。您可以自助配置此仓库的 PR 合并规则,更多详情,请参阅机器人自助配置使用手册。
联系指引
有疑问可以联系 SIG: sig-CICD ,
维护者是: @DataSculptor, @xuhaijun, @zybwh ,
优秀贡献者是: @Larry_Li_006, @Polaris404 .


openUBMC-robot
28 天前 评论:
28 天前 评论:
Issue 工作流介绍
社区的需求和缺陷的工作流状态处于纳管中。
| 类型 | 上个状态 | 下个状态 | 评论命令 | 谁可以操作 |
|---|---|---|---|---|
| 需求 | 待办的 | 已接纳 | /todo2accepted | SIG组: sig-release-management (maintainer) |
| 需求 | 已接纳 | 开发中 | /accepted2developing | 仓库成员角色: Maintainer, Committer, Contributor, Owner |
| 需求 | 开发中 | 待验收 | /developing2UAT | 仓库成员角色: Maintainer, Committer, Contributor, Owner |
| 需求 | 待验收 | 已完成 | /UAT2done | SIG组: sig-QA (maintainer,committer) |
| 需求 | 待办的 | 已挂起 | /todo2suspended | SIG组: sig-release-management (maintainer) |
| 需求 | 已挂起 | 已接纳 | /suspended2accepted | SIG组: sig-release-management (maintainer) |
| 需求 | 待办的 | 已拒绝 | /todo2rejected | SIG组: sig-release-management (maintainer) |
| 需求 | 已拒绝 | 已接纳 | /rejected2accepted | SIG组: sig-release-management (maintainer) |


28 天前 修改了issue 的描述
14 天前 issue类型由 需求 改变为 任务
14 天前 修改标题为 “[任务]优化qemu代码仓dtb文件管理逻辑”,原标题为“优化qemu代码仓dtb文件管理逻辑”
背景
qemu_mockup 仓中的
src/lualib/mock/data/dtb/hi1711_9p8c.dtb归档的是一个二进制文件。在 ../manifest 仓构建时,会从 rtos 基础 OS 中继承 dtb 文件boot/hi1711_asic.dtb。hi1711_9p8c.dtb的内容是在boot/hi1711_asic.dtb基础上增加了 3 个virtio_mmio配置(参见src/lualib/mock/data/dtb/hi1711_9p8c.dts)。现状问题
qemu 启动时指定了 qemu_mockup 的 dtb 文件,该文件无法自适应
hi1711_asic.dtb的变化。在社区版本 openUBMC 26.06 发布过程中,
hi1711_asic.dtb的设备树gmac@cd000000节点新增了memory_region_rx和memory_region_tx属性,而hi1711_9p8c.dtb没有配套变更,导致 qemu 镜像启动后网络故障。实测差异(hi1711_asic.dtb vs hi1711_9p8c.dts)
将 rtos 基础 OS 的
/boot/hi1711_asic.dtb反编译后与hi1711_9p8c.dts逐节点比对,共有 4 处差异——不只是 virtio_mmio:memory@800000000x40000000)0x80000000)cpusinterrupt-controller@24000000redistributor0x800000x100000soc/下新增 3 个节点0x5e681000~0x5e683000,中断 SPI 0x66/0x67/0x68其中差异 1~3 是参数联动关系(内存/CPU 数/GIC 空间三者相关),virtio_mmio 才是 mockup 特有的设备。若
hi1711_asic.dtb未来也改成 8 核,差异 2、3 会自然消失。任务目标
优化 dtb 文件管理逻辑,使
hi1711_9p8c.dtb能够自动跟随基础 OS 的hi1711_asic.dtb变化,避免手工维护二进制 dtb 文件导致的漂移问题。基本思路
在
customization/customization.py中注入产品化定制逻辑:boot/hi1711_asic.dtb复制出基础 dtb 文件0x80000000)0x100000)virtio_mmio配置/data/dtb/hi1711_9p8c.dtb实现时建议将 CPU 数、内存大小、virtio 设备数等定制项做成 customization.py 中的显式配置,而不是硬编码的 sed/diff 修补,保证逻辑清晰且可自适应。
验收标准