FreeBSD: We only want drm to ever attach to the primary pci device.
Intel 855 chips present the same pci id for both heads. This prevents us from attaching to the dummy second head. All other chips that I am aware of either only present a single pci id, or different ids for each head so that we only match on the correct head.main
parent
4a27f1c638
commit
222dc6582e
|
@ -83,6 +83,7 @@ struct drm_file;
|
|||
#include <sys/agpio.h>
|
||||
#include <sys/mutex.h>
|
||||
#include <dev/pci/pcivar.h>
|
||||
#include <dev/pci/pcireg.h>
|
||||
#include <sys/selinfo.h>
|
||||
#include <sys/bus.h>
|
||||
|
||||
|
|
|
@ -173,6 +173,10 @@ int drm_probe(device_t dev, drm_pci_id_list_t *idlist)
|
|||
device = pci_get_device(dev);
|
||||
#endif
|
||||
|
||||
if (pci_get_class(dev) != PCIC_DISPLAY
|
||||
|| pci_get_subclass(dev) != PCIS_DISPLAY_VGA)
|
||||
return ENXIO;
|
||||
|
||||
id_entry = drm_find_description(vendor, device, idlist);
|
||||
if (id_entry != NULL) {
|
||||
device_set_desc(dev, id_entry->name);
|
||||
|
|
Loading…
Reference in New Issue