On Wed, 2018-10-24 at 14:44 +0200, Gerd Hoffmann wrote: > On Tue, Oct 23, 2018 at 03:24:21PM -0500, Jonathon Jongsma wrote: > > On Wed, 2018-10-10 at 13:33 +0200, Gerd Hoffmann wrote: > > > Hi, > > > > > > > Also, can you respond to Frediano's comments below about e.g. > > > > HDMI- > > > > A, > > > > etc? As far as I can tell, libdrm doesn't really give us a > > > > canonical > > > > name for the output, it only gives us a connection type > > > > enumeration. I > > > > borrowed a function from your drminfo utility to construct an > > > > output > > > > name, but that doesn't seem to perfectly match the xrandr > > > > output > > > > names. > > > > > > xrandr names come from the driver, so maybe take the table from > > > the > > > modesetting driver instead. > > > > When you talk about the table from the modesetting driver, do you > > mean > > this? > > https://gitlab.freedesktop.org/xorg/xserver/blob/master/hw/xfree86/drivers/modesetting/drmmode_display.c#L2779 > > Probably (can't look right now, conference wifi is rather flaky). > > > But if the names are driver-specific, a different driver can use > > different names. For example, the xorg QXL driver uses fairly > > different > > names: > > > > > > https://gitlab.freedesktop.org/xorg/driver/xf86-video-qxl/blob/master/src/qxl_drmmode.c#L723 > > > > Comparing the modesetting table above to the QXL table, there are > > differences between: > > DVI-I -> DVI > > DVI-D -> DVI > > DVI-A -> DVI > > HDMI-B -> HDMI > > The qxl kernel driver uses connector type virtual, so you will not > see > the other ones. But, yes, it might be we need hardware-specific code > here. Not sure what nvidia is doing here. Also the qxl driver > shifts > the index by one so you'll see VIRTUAL-0 instead of -1. > > > In addition, I've noticed that on my laptop I have the following > > discrepancies: > > > > drm xrandr > > --- ------ > > DP-4 DP-3-1 > > DP-5 DP-3-2 > > DP-6 DP-3-3 > > What hardware is this? This is a Lenovo T460p laptop with intel graphics. Interesting bit from lspci: 00:02.0 VGA compatible controller: Intel Corporation HD Graphics 530 (rev 06) It looks like this naming schema may be coming from the modesetting driver as well. At least I see the following code in drmmmode_create_name(): if (koutput->connector_type >= ARRAY_SIZE(output_names)) snprintf(name, 32, "Unknown%d-%d", koutput->connector_type, koutput->connector_type_id); else if (pScrn->is_gpu) snprintf(name, 32, "%s-%d-%d", output_names[koutput->connector_type], pScrn->scrnIndex - GPU_SCREEN_OFFSET + 1, koutput->connector_type_id); else snprintf(name, 32, "%s-%d", output_names[koutput->connector_type], koutput->connector_type_id); The name format within the "if (pScrn->is_gpu)" block seems similar, though I'm not sure if that branch applies in this situation. > > > > Yep. Most hardware is handled by the modesetting driver these > > > days. > > > > When you say "these days", what do you mean exactly? How long ago > > did > > this transition happen? Will we run into issues supporting older > > releases? > > Hardware sepcific xorg drivers are slowly going away in favor of > using > modesetting and glamor (i.e. use the mesa 3d driver for acceleration, > if available). > > > And can you be a bit more specific about "most" as well? What are > > the > > exceptions? > > All qemu emulated display devices except qxl use modesetting (stdvga, > cirrus, virtio). > > On recent intel hardware modesetting is used by default. I think > this > includes all hardware revisions which are supported by gvt. > > Nvidia has its own driver, so it might need a special case (as > already > mentioned above). > > Other hardware should not show up in a virtual machine. > > > > /sys/devices/pci0000:00/0000:00:02.0/drm/card0 > > > ^^^^ ^^^^ > > > In case of virtio there will be another path element, like this: > > > > > > /sys/devices/pci0000:00/0000:00:02.0/virtio4/drm/card0 > > > > > > Don't become confused by this. > > > > So let's say that I have the following sysfs path: > > ../../devices/pci0000:00/0000:00:03.0/0000:01:01.0/0000:02:03.0/vir > > tio2 > > /drm/card0 > > > > How would that translate to your proposed format? > > > > pci/0000/03.0/01.0/03.0 ??? > > Yes. > > > Would we just ignore the different bus numbers for each device? > > Yes. > > cheers, > Gerd > _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/spice-devel