pci_plist_lookup(9F) 接口可由驱动程序用来查找受支持的各种数据类型的名称-值对。函数将查找与接口名称指示的名称和类型匹配的 nvpair(名称-值对)。如果找到,将修改 nelem 和 val 以分别包含值中的元素数和数据的起始地址。
pci_plist_lookup() 接口支持以下数据类型:
int pci_plist_lookup_int8(pci_plist_t plist, const char *name,int8_t *val)
int pci_plist_lookup_uint8(pci_plist_t plist, const char *name,uint8_t *val)
int pci_plist_lookup_int16(pci_plist_t plist, const char *name,int16_t *val)
int pci_plist_lookup_uint16(pci_plist_t plist, const char *name, uint16_t *val)
int pci_plist_lookup_int32(pci_plist_t plist, const char *name,int32_t *val)
int pci_plist_lookup_uint32(pci_plist_t plist, const char *name, uint32_t *val)
int pci_plist_lookup_int64(pci_plist_t plist, const char *name,int64_t *val)
int pci_plist_lookup_uint64(pci_plist_t plist, const char *name, uint64_t *val)
int pci_plist_lookup_string(pci_plist_t plist, const char *name, char **val)
int pci_plist_lookup_plist(pci_plist_t plist, const char *name, pci_plist_t **val)
int pci_plist_lookup_int8_array(pci_plist_t plist, const char *name,int8_t *val, uint_t *nelem)
int pci_plist_lookup_uint8_array(pci_plist_t plist, const char *name, int8_t *val, uint_t *nelem)
int pci_plist_lookup_int16_array(pci_plist_t plist, const char *name,int16_t *val, uint_t *nelem)
int pci_plist_lookup_uint16_array(pci_plist_t plist, const char *name, uint16_t *val, uint_t *nelem)
int pci_plist_lookup_int32_array(pci_plist_t plist, const char *name,int32_t *val, uint_t *nelem)
int pci_plist_lookup_uint32_array(pci_plist_t plist, const char *name,uint32_t *val, uint_t *nelem)
int pci_plist_lookup_int64_array(pci_plist_t plist, const char *name, int64_t *val, uint_t *nelem)
int pci_plist_lookup_uint64_array(pci_plist_t plist,const char *name,uint64_t *val, uint_t *nelem)
int pci_plist_lookup_string_array(pci_plist_t plist, const char *name,char **val, uint_t *nelem)
其中:
指向要处理的 pci_plist_t 结构的指针。
要搜索的名称-值对的名称。
存储值中的元素数的地址。
数据的起始地址。
pci_plist_lookup() 函数在成功时返回 0,失败时返回某个错误值。支持以下错误值:
变量无效
未找到匹配的名称-值对
编码或解码方法不受支持