背景
当前沙箱业务组件通过配置特权的方式直接使用gpio,serdes等设备文件,不符合沙箱权限要求。需要支持对沙箱组件调用root权限设备的能力。
关联ISSUE
整体方案
1、soctrl增加gpio,眼图驱动相关接口,沙箱组件通过soctrl接口访问root权限设备
评审点
1、soctrl增加资源协作路径:/bmc/kepler/Managers/:Id/SOC/GPIO,新增资源协作接口:bmc.kepler.Managers.SOC.GPIO,新增方法Read,新增信号ACLost
2、 soctrl在原有眼图接口bmc.kepler.Managers.SOC.SerdesEyeDiagram下新增方法GetFourEyeDiagram
详细描述
评审点1:新增资源协作接口 bmc.kepler.Managers.SOC.GPIO
资源协作Path:/bmc/kepler/Managers/:Id/SOC/GPIO
接口描述:支持业务组件配置GPIO管脚状态,以及获取带内下电中断信号等,gpio不涉及多系统区分,归属于soctrl组件/bmc/kepler/Managers/:Id/SOC/GPIO路径下
方法评审点
| 方法名称 | 请求签名 | 请求参数描述 | 响应签名 | 响应参数描述 | 方法描述 | 访问权限 |
|---|---|---|---|---|---|---|
| Read | uy | ID: 表示gpio管脚编号,用于指定配置的GPIO管脚 Direction:表示获取方式,0: 获取GPIO管脚的电平状态,1:获取输出模式时的管脚状态 |
y | 电平高低状态,0:表示低电平;1:表示高电平 | 设置对应gpio管脚复用为gpio关系,并读取指定的GPIO管脚电平状态 | BasicSetting |
信号评审点
| 信号名称 | 签名 | 参数描述 | 信号描述 |
|---|---|---|---|
| ACLost | u | 掉电信号事件值 | 掉电信号,当前仅在发生二级闪断时触发信号 |
接口新增影响
| 路径 | 接口新增影响 | CSR配置影响 | 持久化影响 | 其他影响 |
|---|---|---|---|---|
| /bmc/kepler/Managers/:Id/SOC/GPIO | 对外提供GPIO管脚状态读取,GPIO中断配置/获取 | 不涉及CSR配置 | 不涉及持久化,无兼容性问题 | 需实现新增方法 |
评审点2:变更资源协作接口bmc.kepler.Managers.SOC.Serdes.EyeDiagram
接口描述:接口不涉及多系统区分,归属于soctrl组件/bmc/kepler/Managers/:Id/SOC/BmcDfx 路径下
方法评审点
| 变更类型 | 方法名称 | 请求签名 | 请求参数描述 | 响应签名 | 响应参数描述 | 方法描述 | 访问权限 | 变更影响 |
|---|---|---|---|---|---|---|---|---|
| 新增 | GetFourEyeDiagram | (qqqyyyyyuiu) | ChipID: 表示芯片标识符,用于区分不同物理芯片 MacroID: 表示宏模块ID,用于标识当前操作的 SerDes 宏单元(如 lane0、lane1 等) LaneID: 表示起始 SerDes 通道(Lane)ID,用于指定从某一路开始扫描(如从 lane3 开始测试) ScanMode: 表示 扫描模式,用于指定扫描模式 0:固定点扫描,1:ISI(符号间干扰)扫描,2:仅测量眼图宽度,3:仅测量眼图高度 PreTap: 表示前置码型,评估信号在不同前导模式下的眼图开放度 0:无效值,用于初始化或校验,表示未设置预加重模式,1:前 1 bit 为 0 的码型, 2:前 1 bit 为 1 的码型,3:组合扫描模式 PatternType : 表示测试码型,用于测试信号在不同状态下的稳定性,眼图开放度,0:全零码型,1:全一码型 EyeDiagramType : 表示眼图类型,用于指定眼图分析的模式,0:基本眼图,1:TAP1响应眼图,2:TAP2响应眼图 PathType: 表示信号路径选择,用于区分不同信号通道(I/Q、同相/反相、合成路径)0x1:Q路信号,0x2:I路信号,0x4:Q反相路径,0x5:Q与QB组合路径,0x8:I与IB组合路径,0xF:复合路径(I+IB与Q+QB的组合) WindowSize: 眼图窗口大小,用于控制扫描范围 Threshold: 眼图判决门限,用于判断“高”/“低”电平的分界点 AvgSamplingCount : 表示眼图平均采样次数,用于提高信噪比 |
(iiii) | Bottom: 眼图底部边界的采样点位置 Top: 眼图顶部边界的采样点位置 Left:眼图左侧边界的采样点位置 Right:眼图右侧边界的采样点位置 |
查询四点眼图采样点位置 | BasicSetting | 新增方法,无影响 |
接口变更影响
| 路径 | 接口变更影响 | CSR配置影响 | 持久化影响 | 其他影响 |
|---|---|---|---|---|
| /bmc/kepler/Managers/:Id/SOC/BmcDfx | 新增GetFourEyeDiagram方法,提供查询四点眼图结果 | 不涉及CSR配置,无影响 | 不涉及持久化,无兼容性问题 | 需实现新增方法 |