diff options
author | Burt P <pburt0@gmail.com> | 2020-01-10 10:46:07 -0600 |
---|---|---|
committer | Leandro A. F. Pereira <leandro@hardinfo.org> | 2020-01-17 16:14:30 -0800 |
commit | 7114175cdb6ff611dfb164959c5aec2099f9e887 (patch) | |
tree | 3a4b654ff073049804cbb21a98703d6f4a0ffb85 /includes | |
parent | 1b66b4442410ef6a7f9939845977d0fd9d840f71 (diff) |
pci_util: use GSList for pcid_list
Signed-off-by: Burt P <pburt0@gmail.com>
Diffstat (limited to 'includes')
-rw-r--r-- | includes/pci_util.h | 21 |
1 files changed, 10 insertions, 11 deletions
diff --git a/includes/pci_util.h b/includes/pci_util.h index 2a9e4a4b..6178be21 100644 --- a/includes/pci_util.h +++ b/includes/pci_util.h @@ -53,26 +53,25 @@ typedef struct pcid { /* ... */ - struct pcid *next; /* this is a linked list */ } pcid; +pcid *pci_get_device(uint32_t dom, uint32_t bus, uint32_t dev, uint32_t func); +pcid *pci_get_device_str(const char *addy); +#define pcid_new() g_new0(pcid, 1) +void pcid_free(pcid *); + +typedef GSList* pcid_list; /* examples: * to get all pci devices: * pcid *list = pci_get_device_list(0, 0); * to get all display controllers: * pcid *list = pci_get_device_list(0x300, 0x3ff); */ -pcid *pci_get_device_list(uint32_t class_min, uint32_t class_max); -int pcid_list_count(pcid *); -void pcid_list_free(pcid *); - -pcid *pci_get_device(uint32_t dom, uint32_t bus, uint32_t dev, uint32_t func); -pcid *pci_get_device_str(const char *addy); - -void pcid_free(pcid *); - -char *pci_lookup_ids_vendor_str(uint32_t id); +pcid_list pci_get_device_list(uint32_t class_min, uint32_t class_max); +#define pcid_list_count(l) g_slist_length(l); +#define pcid_list_free(l) g_slist_free_full(l, (GDestroyNotify)pcid_free) const gchar *find_pci_ids_file(); +char *pci_lookup_ids_vendor_str(uint32_t id); #endif |