From 6a2a9112f97433707605cca1f6a25a43a6c369a4 Mon Sep 17 00:00:00 2001 From: Burt P Date: Wed, 1 Jan 2020 10:31:52 -0600 Subject: pci_util: add pci_get_device_str() Signed-off-by: Burt P --- hardinfo/pci_util.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'hardinfo/pci_util.c') diff --git a/hardinfo/pci_util.c b/hardinfo/pci_util.c index 71fa1fe9..728e6356 100644 --- a/hardinfo/pci_util.c +++ b/hardinfo/pci_util.c @@ -322,6 +322,18 @@ static gboolean pci_get_device_lspci(uint32_t dom, uint32_t bus, uint32_t dev, u return FALSE; } +pcid *pci_get_device_str(const char *addy) { + uint32_t dom, bus, dev, func, cls; + int ec; + if (addy) { + ec = sscanf(addy, "%x:%x:%x.%x", &dom, &bus, &dev, &func); + if (ec == 4) { + return pci_get_device(dom, bus, dev, func); + } + } + return NULL; +} + pcid *pci_get_device(uint32_t dom, uint32_t bus, uint32_t dev, uint32_t func) { pcid *s = pcid_new(); gboolean ok = FALSE; -- cgit v1.2.3