使用 openUBMC Studio 进行网卡适配
本文档介绍如何通过 openUBMC Studio 的模版浏览器快速生成 PCIe 网卡驱动模版,并完成基本的适配配置和出包操作。
1. 克隆代码仓
将 component_drivers 代码仓克隆到本地:
bash
git clone https://gitcode.com/openUBMC/component_drivers.git克隆完成后,使用 openUBMC Studio 打开项目根目录。
2. 打开模版浏览器
在 openUBMC Studio 界面左下角,点击 模版浏览器 图标,打开模版浏览面板。
3. 生成 PCIe 网卡驱动模版
- 在模版浏览器中,选择 PCIe 网卡驱动模版。
- 点击 生成到文件夹 按钮。
- 在弹出的目标文件夹选择对话框中,选择项目中的
drivers/pcie_nic_card/目录作为生成目标路径。
生成的模版文件将包含以下内容:
drivers/pcie_nic_card/
└── [厂商目录]/
├── csr/
│ ├── [默认名称].dds # 设备描述文件
│ └── [默认名称].sr # 硬件自描述信息文件
├── interface/ # 接口实现目录
├── [型号目录]/ # 驱动实现代码
└── meson.build4. 修改 SR 和 DDS 文件名
根据目标网卡的设备标识信息,将 csr/ 目录下生成的 .sr 和 .dds 文件重命名为对应的四元组格式:
命名格式:14140130_[VID][DID]_[SVID][SSID].dds
14140130_[VID][DID]_[SVID][SSID].sr以 VID=0x19e5、DID=0x0222、SVID=0x19e5、SSID=0x0052 的网卡为例,文件名应修改为:
14140130_19e50222_19e50052.dds
14140130_19e50222_19e50052.sr注意
.dds 和 .sr 文件必须使用相同的前缀名称,框架通过文件名匹配加载对应的配置。
5. 提升版本号
在编译出包之前,需要在 mds/service.json 中提升版本号。打开该文件,将 version 字段的值递增:
json
{
"name": "component_drivers",
"version": "1.2.167",
...
}注意
版本号需遵循语义化版本规范(主版本号.次版本号.修订号),每次出包前务必递增,避免版本冲突。
6. 编译出包
在项目根目录下执行以下命令进行编译出包:
bash
bingo build编译成功后,生成的驱动库文件将输出到 conan 缓存中。