新增GetPCIeRootBDFbyBus方法和GetPCIeRootByMMIO方法

背景

为了使pcie_device的功能更加内聚,将sdk中提供获取带内上报的pcie_addr_info的功能向pcie_device中迁移,由pcie_device保留相关PCIe拓扑信息。

关联ISSUE

(可选)此议题关联的代码仓的issue链接。(提交议题时删除此引导说明)

整体方案

(可选)简要描述此议题关联的整体方案,包括但不限于逻辑架构、组件依赖关系、交互上下文。(提交议题时删除此引导说明)

评审点

在pcie_device组件中新增GetPCIeRootBDFByBDF和GetPCIeRootBDFByMMIO方法

详细描述

评审点1

方案一:新增资源协作接口 bmc.kepler.Systems.PCIeMMIO

接口描述:用于承载对操作系统视角PCIe拓扑数据的查询功能

方法评审点

方法名称 请求签名 请求参数描述 响应签名 响应参数描述 方法描述 访问权限
GetPCIeRootBDFByBDF a{ss}yyy Param1: 表示请求上下文
Param2: 表示GlobalSystemId
Param3: 表示LocalSystemId
Param4: 表示Bus号
yyy Param1: 表示RootBus
Param2:表示RootDevice
Param3: 表示RootFunction
三个值均为0xff表示未获取到
通过给定设备Bus号获取对应父设备的RootBDF ReadOnly
GetPCIeRootBDFByMMIO a{ss}yyt Param1: 表示请求上下文
Param2: 表示设备MMIO地址
yyy Param1: 表示RootBus
Param2:表示RootDevice
Param3: 表示RootFunction
三个值均为0xff表示未获取到
通过给定设备MMIO获取对应父设备的RootBDF ReadOnly

方案二:变更资源协作接口 bmc.kepler.Systems.PCIeDevices

方法名称 请求签名 请求参数描述 响应签名 响应参数描述 方法描述 访问权限 变更影响
GetPCIeRootBDFByBDF a{ss}yyy Param1: 表示请求上下文
Param2: 表示GlobalSystemId
Param3: 表示LocalSystemId
Param4: 表示Bus号
yyy Param1: 表示RootBus
Param2:表示RootDevice
Param3: 表示RootFunction
三个值均为0xff表示未获取到
通过给定设备Bus号获取对应父设备的RootBDF ReadOnly 新增方法,无影响
GetPCIeRootBDFByMMIO a{ss}yyt Param1: 表示请求上下文
Param2: 表示设备MMIO地址
yyy Param1: 表示RootBus
Param2:表示RootDevice
Param3: 表示RootFunction
三个值均为0xff表示未获取到
通过给定设备MMIO获取对应父设备的RootBDF ReadOnly 新增方法,无影响

评审结论

(必选)针对决策点,详细描述最终结论,不能是简单的同意或不同意,通过或不通过。(提交议题时删除此引导说明)

正面示例:

同意redfish接口/redfish/v1/XXXXX的GET操作响应体增加如下属性

(详细描述属性名称、属性取值类型、取值范围、约束等)

不同意新增资源协作接口XXXXX

不同意资源协作接口XXX新增XX属性/方法

反面示例:

通过,同意新增接口

遗留问题

(可选)列出评审会议现场无法直接给出明确结论的事务,会后确认清楚之后要在此处录入明确的结论,如不涉及,则可以写无或删除此部分。参考格式如下:(提交议题时删除此引导说明)

1、需要确认XXX

结论: