OSDN Git Service

Use the proper API to get PCI vendor/device number for a dev.
authorEric Anholt <anholt@freebsd.org>
Mon, 14 Feb 2005 03:26:52 +0000 (03:26 +0000)
committerEric Anholt <anholt@freebsd.org>
Mon, 14 Feb 2005 03:26:52 +0000 (03:26 +0000)
PR: ports/76879 Submitted by: Alex, lesha at intercaf dot ru.

bsd-core/drm_drv.c

index 102045c..da86406 100644 (file)
@@ -140,17 +140,11 @@ static struct cdevsw drm_cdevsw = {
 int drm_probe(device_t dev, drm_pci_id_list_t *idlist)
 {
        const char *s = NULL;
-       int pciid, vendor, device;
+       int vendor, device;
 
-       /* XXX: Cope with agp bridge device? */
-       if (!strcmp(device_get_name(dev), "drmsub"))
-               pciid = pci_get_devid(device_get_parent(dev));
-       else
-               pciid = pci_get_devid(dev);
+       vendor = pci_get_vendor(dev);
+       device = pci_get_device(dev);
 
-       vendor = (pciid & 0x0000ffff);
-       device = (pciid & 0xffff0000) >> 16;
-       
        s = drm_find_description(vendor, device, idlist);
        if (s != NULL) {
                device_set_desc(dev, s);