背景
触发原因:新的需求
需求背景:通过复用BMC当前已有的SVF脚本执行能力,提供cpld固件的安全自检的SVF基础校验接口,用于支持通用硬件APP处理固件管理下发的固件安全自检信号。
应用场景:BMC平稳运行后进行CPLD固件的安全自检
关联ISSUE
https://gitcode.com/openUBMC/mdb_interface/issues/322
整体方案
1、由CPU硬件侧打包CPLD固件的时候,同步打包一个verify的SVF文件,BMC侧接收该SVF文件,解析里面的(SIR、SDR、TDI等字段),文件格式与CPLD升级所使用的SVF格式一致,BMC侧通过jtagOverlocalbus或jtagOverhisport的链路发送TDI、TMS、TCK信号给CPLD,将CPLD侧返回的TDO数据与SVF文件中的TDO数据进行校验,校验失败则自检失败。
2、预期在bmc.kepler.Chip.JtagTarget接口下新增方法:
Verify: 通过执行CPLD svf文件提供固件安全自检功能
详细描述
评审点:1、资源协作接口bmc.kepler.Chip.JtagTarget新增Verify方法
方法评审点
| 方法名称 | 请求签名 | 请求参数描述 | 响应签名 | 响应参数 | 方法描述 | 访问权限 | 约束 |
|---|---|---|---|---|---|---|---|
| Verify | sy | FilePath:安全自检文件的路径 FileType:安全自检文件的类型,枚举类型,仅支持0和1,0代表VME, 1代表SVF |
NA | NA | 安全自检,通过指定格式文件完成安全自检 | BasicSetting | 文件路径必须包含文件名,路径需要在/dev/shm目录及子目录下 |
资源协作接口bmc.kepler.Chip.JtagTarget新增方法影响
| 路径 | 接口 | 方法新增影响 | CSR配置影响 | 持久化影响 | 其他影响 |
|---|---|---|---|---|---|
| /bmc/kepler/Chip/Cpld/:id | bmc.kepler.Chip.JtagTarget | 对外提供通过执行CPLD svf文件进行固件安全自检的能力 | 无影响 | 不涉及 | 无 |