For dual video card systems using DRM, I need the ability to choose the second card initialized. It appears that the code allows for passing "device_name" but the calling code always passes NULL so you end up with the default /dev/dri/card0. Maybe a configuration option? Alternately, iterating through all of the DRI devices to find a supported one would solve my issue but I think is less optimal for control purposes. Specifics: I have an Atom system with an on-board i915 supported chipset with an ATI Rage 128 plugged into the PCI port for a secondary display. I have to load the r128 driver module first or the card won't initialize properly (probably a kernel driver bug or possibly BIOS issue). This order makes the r128 map to /dev/dri/card0 and the i915 map to /dev/dri/card1. When I boot Ubuntu 10.4, I get no splash at all. It looks like it will always try to grab /dev/dri/card0 in src/plugins/renderers/drm/plugin.c:319. Since r128 doesn't have a supported plugin driver (and probably never will), the plymouth code gives up. I'd rather have the splash appear on the i915 output anyway. It looks like all the calls to ply_renderer_new pass NULL for the device name so there is no way to override the default.
So maybe the answer is that we need to create a separate renderer for each device. We could certainly add the config option in the mean time as a more short-term solution, though. Also, see bug 25943. I'll probably dupe this one to that one, since both bugs are dealing with the same general area. In that bug, Dave Airlie proposes picking the one that the bios picked. It sounds like that might not work for your case though? Let's move discussion to that bug. *** This bug has been marked as a duplicate of bug 25943 ***
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.