pci_cfgrw 内核服务
用途
读取和写入 PCI 总线插槽配置寄存器。
语法
#include <sys/mdio.h> int pci_cfgrw(bid, md, write_flag)
int bid;
struct mdio *md;
int write_flag;描述
pci_cfgrw 内核服务提供了对 PCI 总线的配置寄存器的序列化访问。 为确保多处理器环境中的数据完整性,在访问配置寄存器之前需要锁定。 根据 write_flag 参数的值,对于由 姆斯拉标识的设备,将在偏移量 md_addr 处执行对配置寄存器的读或写操作。
pci_cfgrw 内核服务为内核扩展提供的服务与 MIOPCFGET 和 MIOPCFPPUT ioctls 为应用程序提供的服务相同。 可从进程或中断环境中调用 pci_cfgrw 内核服务。
参数
| 项 | 描述 |
|---|---|
| 投标 | 指定总线标识。 |
| md | 用于指定 姆迪奥 结构的地址。 姆迪奥 结构中包含以下字段:
|
| 写入标记 | 对于写入,设置为 1 ; 对于读取,设置为 0 。 |
返回值
返回 0 表示成功完成。
| 项 | 描述 |
|---|---|
| ENOMEM | 指示无法分配任何内存。 |
| EINVAL | 指示该总线,设备/功能或大小无效。 |
| EPERM | 指示平台不允许执行所请求的操作 |