【已评审】新增私有对象,新增ComponentType,支持升级Krun固件

背景

需要支持krun固件的升级功能。

关联ISSUE

issue:支持krun固件管理

整体方案

1、新增私有对象KrunFirmware,属性包含:Id、UId、Name、RefChip、FlashChip、Version、RelatedSystems
2、新增Krun固件的ComponentType

评审点

1、是否新增私有对象KrunFirmware
2、是否新增Krun固件的ComponentType

详细描述

1、新增私有对象KrunFirmware

示例:

"KrunFirmware_1": {
    "UId": "00000001020302044488",
    "Name": "Krun",
    "RefChip": "#/SPIFlash_1",
    "FlashChip": "#/SPIFlash_1",
    "RelatedSystems": [1, 2]
},

变化类型:新增私有对象

应用场景:用于保存krun固件的升级及版本号显示

持久化类型: 掉电持久化

操作权限:ReadOnly

详细描述:

属性名称 变化类型 签名 读写&权限 持久化 变化通知 接口说明 接口约束
Id 新增属性 y 只读 R:ReadOnly 掉电持久化 false krun固件id 用作持久化主键
UId 新增属性 s 只读 R:ReadOnly 不持久化 false krun固件Uid Krun固件对应的uid
Name 新增属性 s 只读 R:ReadOnly 不持久化 false krun固件名称 NA
RefChip 新增属性 ay 只读 R:ReadOnly 不持久化 false 升级Krun固件的Chip(包含读写方法) NA
FlashChip 新增属性 ay 只读 R:ReadOnly 不持久化 false 升级Krun固件的Chip(包含擦除方法) NA
Version 新增属性 s 只读 R:ReadOnly 掉电持久化 false krun固件版本号 NA
RelatedSystems 新增属性 ay 只读 R:ReadOnly 不持久化 false krun固件关联的系统 一个Krun可能对应多个System

评审结论

1、同意在bios组件新增私有对象KrunFirmware(具体结构见详细描述)
2、不同意新增ComponentType
新增ComponentType会新增涉及一些不必要的功能(告警、fru等),当前没有新增的必要

遗留问题

1、新增ComponentType需要对齐
经讨论决定不新增ComponentType
2、需要新增两个Chip对象,一个用于读写,一个用于擦除