【已评审】IPMI命令支持BIOS上报CCA版本给BMC

背景

CCA全称为Confidential Compute Architecture,即机密计算架构,是ARMv9-A架构的关键组件。

ARM的CCA引入了Realm Management Extension(RME),Realm管理扩展,提供了一种新的软硬件隔离环境。该环境建立在Normal域和Secure域之外,与两者相互独立,称为Realm域,并由一个Realm管理组件RMM(Realm Management Monitor)来管理其上运行的机密计算虚拟机。

BIOS需要上报CCA Version给BMC。

关联ISSUE

整体方案

原有IPMI命令扩展参数取值范围,支持BIOS上报CCA Version给BMC。

评审点

原有IPMI命令扩展请求参数的取值范围

详细描述

IPMI命令字:NetFn:0x30 Cmd:0x92
名称:Set Tee Version
变化类型:参数取值范围变更
应用场景:设置系统参数
操作权限:BasicSetting
可执行角色等级:Operator

字节顺序 域内容
NetFn 30h
Cmd 92h
1:3 Manufacturer ID,LS Byte first。长度固定3个字节,例如,某厂家ID是2011,对应十六进制为0x0007DB,则字节序为第1个字节为DBh、第2个字节为07h、第3个字节为00h。
4 Sub command,子命令=4Ah
5 可信执行环境版本信息标识,0-安全OS版本号,1-CCA版本号,其它-保留
6 Length,发送数据长度
7:N Version,版本号,目前最长不能超过128字节

响应说明:

字节顺序 域内容
1 Completion Code
2:4 Manufacturer ID,LS Byte first。长度固定3个字节,例如,某厂家ID是2011,对应十六进制为0x0007DB,则字节序为第1个字节为DBh、第2个字节为07h、第3个字节为00h。

评审结论

遗留问题闭环后,同意BIOS通过ipmi命令上报CCA Version给BMC,原有ipmi上新增一个type取值,支持CCA Version上报。

遗留问题

1、参数扩展之后,IPMI命令名称不能局限在TEEOS版本
结论:因为TeeOS和CCA都归属于TEE(可信执行环境,Trusted Execution enviroment),ipmi命令名称改为Set Tee Version

如果只涉及固件版本号,考虑通过bmc.kepler.UpdateService.FirmwareInfo是否就能实现