diff options
author | Warner Losh <imp@FreeBSD.org> | 2018-07-07 15:55:52 +0000 |
---|---|---|
committer | Warner Losh <imp@FreeBSD.org> | 2018-07-07 15:55:52 +0000 |
commit | 69c173e23f2903f3f3512368345e93aa8198c4d6 (patch) | |
tree | 497c6e60734830d07a6a6c116e6b9a1e2255c1b9 /sys/dev/amdsmb | |
parent | 4d711ae2697272ecd5cb77926e45920540b8cc56 (diff) | |
download | src-69c173e23f2903f3f3512368345e93aa8198c4d6.tar.gz src-69c173e23f2903f3f3512368345e93aa8198c4d6.zip |
Update AMDSMB to use PCI_MATCH
Differential Review: https://reviews.freebsd.org/D16172
Notes
Notes:
svn path=/head/; revision=336068
Diffstat (limited to 'sys/dev/amdsmb')
-rw-r--r-- | sys/dev/amdsmb/amdsmb.c | 24 |
1 files changed, 11 insertions, 13 deletions
diff --git a/sys/dev/amdsmb/amdsmb.c b/sys/dev/amdsmb/amdsmb.c index 264b11a1b366..3da5ec0d143c 100644 --- a/sys/dev/amdsmb/amdsmb.c +++ b/sys/dev/amdsmb/amdsmb.c @@ -125,24 +125,22 @@ struct amdsmb_softc { static int amdsmb_detach(device_t dev); +struct pci_device_table amdsmb_devs[] = { + { PCI_DEV(AMDSMB_VENDORID_AMD, AMDSMB_DEVICEID_AMD8111_SMB2), + PCI_DESCR("AMD-8111 SMBus 2.0 Controller") } +}; + static int amdsmb_probe(device_t dev) { - u_int16_t vid; - u_int16_t did; - - vid = pci_get_vendor(dev); - did = pci_get_device(dev); + const struct pci_device_table *tbl; - if (vid == AMDSMB_VENDORID_AMD) { - switch(did) { - case AMDSMB_DEVICEID_AMD8111_SMB2: - device_set_desc(dev, "AMD-8111 SMBus 2.0 Controller"); - return (BUS_PROBE_DEFAULT); - } - } + tbl = PCI_MATCH(dev, amdsmb_devs); + if (tbl == NULL) + return (ENXIO); + device_set_desc(dev, tbl->descr); - return (ENXIO); + return (BUS_PROBE_DEFAULT); } static int |