CSR配置字典之LswPhyInfo类
更新时间: 2025/07/22
在Gitcode上查看源码📋 文档信息
| 项目 | 内容 |
|---|---|
| 文档标题 | LswPhyInfo类配置字典 |
| 版本 | v1.0 |
| 创建日期 | 2025-01-27 |
| 最后更新 | 2026-06-22 |
| 维护状态 | ✅ 活跃维护 |
📋 变更历史记录
文档变更记录
| 版本 | 发布日期 | 变更类型 | 变更内容 | 影响范围 | 维护人员 |
|---|---|---|---|---|---|
| v1.0 | 2026-06-22 | 初始版本 | 创建LswPhyInfo类配置字典 | 全新文档 | 系统管理员 |
🎯 类概览
LswPhyInfo 类
| 属性 | 值 |
|---|---|
| 类名称 | LswPhyInfo |
| 功能描述 | 交换板PHY芯片信息配置对象 |
| 所属SIG组 | network |
| 所属组件 | 交换板管理 |
| 责任人 | 系统架构组 |
| 最后更新 | 2026-06-22 |
| 状态 | 🟢 正常运行 |
📊 属性定义详表
必选属性
| 属性名 | 类型 | 默认值 | 取值范围 | 动态关联 | 描述 | 使用场景 | 举例 | 来源 | 分类 |
|---|---|---|---|---|---|---|---|---|---|
Unit | U32 | 无 | - | - | PHY芯片ID | 指定PHY芯片的编码 | 0 | CSR配置 | 软件 |
PhysicalId | U32 | 无 | - | - | PHY物理ID | PHY芯片物理标识显示 | 1 | CSR配置 | 软件 |
PhysicalAddr | U8 | 无 | - | - | PHY物理地址 | PHY芯片物理地址配置 | 1 | CSR配置 | 软件 |
ChipRst | U8 | 无 | - | - | PHY芯片复位状态 | PHY芯片复位控制 | 0 | CSR配置 | 软件 |
PowerState | U8 | 无 | - | - | PHY电源状态 | PHY芯片电源状态显示 | 1 | CSR配置 | 软件 |
HealthState | U8 | 无 | - | - | PHY健康状态 | PHY芯片健康状态告警配置 | 1 | CSR配置 | 软件 |
SlotNumber | U8 | 无 | - | - | PHY槽位号 | PHY芯片槽位号显示 | 1 | CSR配置 | 软件 |
可选属性
| 属性名 | 类型 | 默认值 | 取值范围 | 动态关联 | 描述 | 使用场景 | 举例 | 来源 | 分类 |
|---|---|---|---|---|---|---|---|---|---|
| 暂无 | - | - | - | - | - | - | - | - | - |
🔗 动态关联机制
语法规范
使用 #/xxx 和 <=/xxx 格式实现属性间的动态关联:
yaml
# 语法格式
属性名: "#/目标类.属性名" # 直接关联
属性名: "<=/目标类.属性名" # 条件关联
# LswPhyInfo类当前无动态关联配置关联说明
- 暂无动态关联: LswPhyInfo类当前所有属性均为静态配置,无需关联其他组件或扫描器
📂 分类标准
硬件属性
- 定义:直接从硬件获取或控制硬件的参数
- 特点:实时反映硬件状态,支持硬件控制操作
- 示例:
ChipRst,PowerState,HealthState,PhysicalAddr
软件属性
- 定义:用于软件层面的PHY芯片管理和配置
- 特点:包含标识、配置、状态管理等功能
- 示例:
Unit,PhysicalId,SlotNumber
📝 配置示例
标准单PHY芯片配置
json
{
"LswPhyInfo": {
"Unit": 0,
"PhysicalId": 1,
"PhysicalAddr": 1,
"ChipRst": 0,
"PowerState": 1,
"HealthState": 1,
"SlotNumber": 1
}
}多PHY芯片配置(PHY1)
json
{
"LswPhyInfo1": {
"Unit": 0,
"PhysicalId": 1,
"PhysicalAddr": 1,
"ChipRst": 0,
"PowerState": 1,
"HealthState": 1,
"SlotNumber": 1
}
}多PHY芯片配置(PHY2)
json
{
"LswPhyInfo2": {
"Unit": 1,
"PhysicalId": 2,
"PhysicalAddr": 2,
"ChipRst": 0,
"PowerState": 1,
"HealthState": 1,
"SlotNumber": 2
}
}🔧 使用指南
配置步骤
- 设置基本标识:配置Unit、PhysicalId指定PHY芯片标识信息
- 配置物理地址:设置PhysicalAddr指定PHY芯片物理地址
- 设置复位状态:配置ChipRst指定PHY芯片复位状态
- 配置电源与健康:设置PowerState、HealthState
- 设置槽位信息:配置SlotNumber指定PHY芯片槽位号
注意事项
- Unit唯一性:Unit在交换板内必须唯一,用于标识不同的PHY芯片
- 物理地址:PhysicalAddr用于MDIO总线寻址,需与硬件实际地址对应
- 芯片复位:ChipRst用于控制PHY芯片的复位操作,复位后芯片状态需重新初始化
- 健康状态:HealthState反映PHY芯片的整体健康状况,需与其他状态属性配合使用
- 槽位对应:SlotNumber应与物理槽位实际对应
- CfgType排除:CfgType属性无usage字段,不属于CSR配置,不应在配置字典中包含
性能建议
- PHY监控:合理设置HealthState的检查频率
- 复位操作:ChipRst复位操作需谨慎,避免频繁复位影响业务
- 地址配置:PhysicalAddr需确保MDIO总线地址不冲突
- 资源优化:根据实际需求配置PHY芯片参数
ID体系说明
- Unit (U32): PHY芯片全局唯一标识
- PhysicalId (U32): PHY物理ID,标识PHY芯片的物理位置
- PhysicalAddr (U8): PHY物理地址,用于MDIO总线寻址
- SlotNumber (U8): 物理槽位号,标识PHY芯片所在的物理位置
状态管理机制
- ChipRst: PHY芯片复位状态管理
- PowerState: PHY电源状态管理
- HealthState: PHY健康状态管理
常见问题
- Q: PhysicalId和PhysicalAddr有什么区别?
- A: PhysicalId是PHY芯片的逻辑物理标识,用于软件管理;PhysicalAddr是MDIO总线地址,用于硬件通信
- Q: CfgType为什么不在配置字典中?
- A: CfgType属性没有usage字段,不属于CSR配置范畴,因此不应在CSR配置字典中包含
- Q: ChipRst复位后需要做什么?
- A: 复位后需重新初始化PHY芯片的端口连接、链路状态等配置
- Q: 多PHY芯片场景如何配置?
- A: 通过不同的Unit值区分各PHY芯片,PhysicalAddr确保MDIO地址不冲突