【已评审】redfish新增资源支持查询和设置网卡的预加载端口数量

背景

182x网卡需要支持网卡网口数量的动态配置和切换,实现网卡从2网口模式到4网口模式的灵活切换,满足不同业务场景需求,需要提供相应的redfish接口查询和设置;

关联ISSUE

[需求]: 支持新的182x网卡待生效网口数量的配置导入导出 - openUBMC/network_adapter - AtomGit | GitCode

整体方案

1、新增资源树协作对象和接口承载预加载端口数量(已评审),可由web和redfish接口查询和设置;
2、配置两个不同的网卡CSR文件分别对应2网口和4网口,自发现根据预加载端口数量选择加载不同的网卡CSR文件;

    "NetworkAdapterPreload_1": {
      "PortCount": 2,
      "PortCountAllowableValues": [2, 4]
    },
    "Connector_PCIE_2Port": {
      "Bom": "14140130",
      "Slot": 3,
      "Presence": "<=/NetworkAdapterPreload_1.PortCount |> expr($1 == 2 ? 1 : 0)",
      "Id": "111",
      "AuxId": "222"
    },
    "Connector_PCIE_4Port": {
      "Bom": "14140130",
      "Slot": 3,
      "Presence": "<=/NetworkAdapterPreload_1.PortCount |> expr($1 == 4 ? 1 : 0)",
      "Id": "aaa",
      "AuxId": "bbb"
    }

评审点

redfish/v1/Chassis/:chassisid/NetworkAdapters/:networkadapterid 接口的Oem/openUBMC资源下新增属性:
1.PreloadPortCount:支持查询和设置网卡的预加载端口数量;
2.PreloadPortCountAllowableValues:支持查询网卡的预加载端口数量范围;

详细描述

评审点1: redfish新增资源支持查询和设置网卡的预加载端口数量

资源URI:redfish/v1/Chassis/:chassisid/NetworkAdapters/:networkadaptersid
资源版本:#NetworkAdapter.v1_12_1.NetworkAdapter
变化类型:Oem/openUBMC资源下新增属性
属性说明:

属性名 取值类型 示例/取值约束 readonly 易变属性 实现PATCH 操作权限 描述
PreloadPortCount integer/null 2:预加载2个端口
4:预加载4个端口
false BasicSetting 预加载端口数量
PreloadPortCountAllowableValues array(元素类型:integer)/null [2, 4] true ReadOnly 预加载端口数量支持配置的取值

Schema:

"PreloadPortCount": {
    "type": [
        "integer",
        "null"
    ],
    "readonly": false,
    "description": "The number of ports to preload on this network adapter during initialization.",
    "longDescription": "This property specifies the number of ports that will be preloaded when the adapter is initialized. The value must be one of the integers listed in the PreloadPortCountAllowableValues array."
},
"PreloadPortCountAllowableValues": {
    "type": [
        "array",
        "null"
    ],
    "items": {
        "type": "integer"
    },
    "readonly": true,
    "description": "List of supported preload port count values for this network adapter.",
    "longDescription": "This array contains the list of integer values that are valid for the PreloadPortCount property. This property is intended for use by management tools to validate user input or display valid options."
}

评审结论

同意新增如下redfish资源属性用于支持动态设置网卡网口数量
资源URI:redfish/v1/Chassis/:chassisid/NetworkAdapters/:networkadaptersid
资源版本:#NetworkAdapter.v1_12_1.NetworkAdapter
变化类型:Oem/openUBMC资源下新增属性

  • PreloadPortCount:表示网卡预加载端口数量,权限:BasicSetting,类型:integer;
  • PreloadPortCountAllowableValues:表示网卡的预加载端口数量允许的取值范围,权限:ReadOnly ,类型:array,数组元素类型:integer。

遗留问题

1.确认PreloadPortCountAllowableValues的Schema数组结构是否正确
已确认正确

2.方案与网管确认对齐。
已与网管同事确认