continue;
if (n->src == SRC_CACHE && !(flags & PCI_LOOKUP_CACHE))
continue;
+ if (n->src == SRC_HWDB && (flags & (PCI_LOOKUP_SKIP_LOCAL | PCI_LOOKUP_NO_HWDB)))
+ continue;
if (!best || best->src < n->src)
best = n;
}
return NULL;
}
-static void
+void
pci_id_hash_free(struct pci_access *a)
{
pci_mfree(a->id_hash);
a->id_hash = NULL;
- a->id_cache_status = 0;
while (a->current_id_bucket)
{
struct id_bucket *buck = a->current_id_bucket;
pci_mfree(buck);
}
}
-
-void
-pci_free_name_list(struct pci_access *a)
-{
- pci_id_cache_flush(a);
- pci_id_hash_free(a);
-}