vgapci: Don't create a drm helper

Simply speaking, being started the drm-kmod driver should create sysfs helpers,
which is «drm» class devices, with the unit number 0, 128 and, perhaps 64.
If a drm helper created by vgapci driver with the corresponding unit number
exists then the drm-kmod driver initialize it by the device_initialize() lkpi
method, otherwise drm-kmod driver create new «drm» device.
For hw, where two or more different GPU installed, it's not guaranteed that
the order of loading GPU drivers will be the same as the vgapci devices numbered.
I.e., on hw where vgapci0 is Nvidia GPU and vgapci1 is Intel GPU, when drm-kmod
loaded first it will use drm0 helper of vgapci0 device.
There is no problem for drm-kmod driver unless we do not traverse device
tree, as needed for https://reviews.freebsd.org/D38545.

drm-kmod is ok for this change as it has fallback to create corresponding
drm device.

Reviewed by:
Differential Revision:	https://reviews.freebsd.org/D38546
This commit is contained in:
Dmitry Chagin
2023-07-06 20:26:24 +03:00
parent acfd261524
commit e8404a72c5
+1 -2
View File
@@ -373,8 +373,7 @@ vga_pci_attach(device_t dev)
bus_generic_probe(dev); bus_generic_probe(dev);
/* Always create a drm child for now to make it easier on drm. */ /* Always create a drmn child for now to make it easier on drm. */
device_add_child(dev, "drm", -1);
device_add_child(dev, "drmn", -1); device_add_child(dev, "drmn", -1);
bus_generic_attach(dev); bus_generic_attach(dev);