变更声明
LPO光模块脏污检测方案发生变更,Redfish接口需要做相应变更。更多详细内容请见评审材料:
受影响的版本
- openUBMC 25.12
变更描述
规格变化
不涉及
外观变化
不涉及
外部接口变化
(1)启动脏污检测请求体变更,具体变更点如下:
URI: /redfish/v1/Managers/{ManagerId}/DiagnosticService/ContaminationDetection/Actions/ContaminationDetection.Start
变更前
| 参数 | 参数说明 | 取值 |
|---|---|---|
| Detectors | 脏污检测的对象 | 检测对象序列号列表 |
{
"Detectors": [
"300001"
]
}
变更后
新增以下请求参数
| 属性名 | 类型 | 示例/默认值/取值约束 | readonly | 易变属性 | 实现PATCH | 操作权限 | 描述 |
|---|---|---|---|---|---|---|---|
| Operation | string(enum) | 取值 InitiationPhase1 DetectionPhase1 InitiationPhase2 DetectionPhase2 |
/ | / | / | DiagnoseMgmt | 要启动的检测操作 |
{
"Detectors": [
"300001"
],
"Operation": "InitiationPhase1"
}
(2)查询脏污检测信息响应体变更,具体变更点如下:
URI: /redfish/v1/Managers/{ManagerId}/DiagnosticService/ContaminationDetection/Actions/ContaminationDetection.GetResult
变更前
| 字段 | 类型 | 说明 |
|---|---|---|
| Detections | 数组 | 脏污检测对象信息列表 |
| DetectionStatus | 字符串 | 脏污检测对象的状态 取值范围 Pending:检测完成 Running:检测中结果未确定 Abnormal:检测运行异常 Unknown:状态无法确定 |
| DetectorId | 字符串 | 脏污检测对象序列号 |
| Result | 脏污检测结果 | |
| ContaminationDetected | 字符串 | 检测结论 取值范围 Detected:脏污 NotDetected:没有脏污 Unknown:未知 |
| ContaminationDistance | 数字 | 脏污点与本端模块之间的距离,浮点类型,表示脏污点与本光模块的距离,单位米 |
{
"error": {
"code": "Base.1.0.GeneralError",
"message": "A general error has occurred. See ExtendedInfo for more information.",
"@Message.ExtendedInfo": [
{
"@odata.type": "#Message.v1_0_0.Message",
"MessageId": "Base.1.0.Success",
"RelatedProperties": [],
"Message": "Successfully Completed Request",
"MessageArgs": [],
"Severity": "OK",
"Resolution": "None",
"Oem": {
"openUBMC": {
"Detections": [
{
"DetectorId": "300001",
"DetectionStatus": "Pending",
"Result": {
"ContaminationDetected": "Detected",
"ContaminationDistance": 4.2
}
}
]
}
}
}
]
}
}
变更后
删除以下响应参数:
| 字段 | 类型 | 说明 |
|---|---|---|
| ContaminationDistance | 数字 | 脏污点与本端模块之间的距离,浮点类型,表示脏污点与本光模块的距离,单位米 |
新增以下响应参数:
| 属性名 | 类型 | 示例/默认值/取值约束 | readonly | 易变属性 | 实现PATCH | 操作权限 | 描述 |
|---|---|---|---|---|---|---|---|
| DetectionPhase | string(enum) | 取值 None Phase1 Phase2 |
true | 否 | 否 | ReadOnly | 脏污检测所处阶段 |
| LocalContaminationDetected | string(enum) | 取值 Detected NotDetected Unknown |
true | 否 | 否 | ReadOnly | 本端Rx光口脏污检测结果 |
| RemoteContaminationDetected | string(enum) | 取值 Detected NotDetected Unknown |
true | 否 | 否 | ReadOnly | 对端Tx光口脏污检测结果 |
| FirstContaminationDistance | array(number) | 数字类型数组,单位米,负值表示该通道未检测到脏污 | true | 否 | 否 | ReadOnly | 各通道最大脏污点与本端光模块之间的距离 |
| SecondContaminationDistance | array(number) | 数字类型数组,单位米,负值表示该通道未检测到脏污 | true | 否 | 否 | ReadOnly | 各通道第二大脏污点与本端光模块之间的距离 |
{
"error": {
"code": "Base.1.0.GeneralError",
"message": "A general error has occurred. See ExtendedInfo for more information.",
"@Message.ExtendedInfo": [
{
"@odata.type": "#Message.v1_0_0.Message",
"MessageId": "Base.1.0.Success",
"RelatedProperties": [],
"Message": "Successfully Completed Request",
"MessageArgs": [],
"Severity": "OK",
"Resolution": "None",
"Oem": {
"openUBMC": {
"Detections": [
{
"DetectorId": "300001",
"DetectionPhase": "None"
"DetectionStatus": "Pending",
"Result": {
"ContaminationDetected": "Detected",
"LocalContaminationDetected": "NotDetected",
"RemoteContaminationDetected": "NotDetected",
"FirstContaminationDistance": [
5.11,
4.19,
-1,
-1,
-1,
-1,
-1,
-1
],
"SecondContaminationDistance": [
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1
]
}
}
]
}
}
}
]
}
}
安装方式变化
不涉及
兼容性说明
- BMC固件兼容性:当前变更仅涉及BMC的固件软件版本,不涉及兼容性
- openUBMC 和 BMC SDK 兼容性:此接口不依赖SDK,不涉及兼容性
- BMC与上层网管的兼容性:如果上层网管调用ContaminationDetection资源的Start方法或者GetResult方法,则可能出现请求发送失败或结果解析失败,需要修改网管软件进行适配
文档影响
不涉及
建议动作
- 确认上层网管是否会调用/redfish/v1/Managers/{ManagerId}/DiagnosticService/ContaminationDetection/Actions/ContaminationDetection.Start或/redfish/v1/Managers/{ManagerId}/DiagnosticService/ContaminationDetection/Actions/ContaminationDetection.GetResult,如果会调用这两个接口,需要修改网管软件进行适配,并确保兼容openUBMC旧版本的接口