dmesg, from drm w/ debug=1
I was comparing and contrasting the X log and noticing they were nearly identical. So, dmesg makes sense. Thanks.
Originally Posted by agd5f
I ran modprobe drm debug=1, and the dmesg is linked here:
Problems getting RADEON DRI working
As I recall I ran into a similar problem with this. I have a HP Pavilion machine with an onboard Intel i915 graphics chip and I've added a MSI Radeon 3450 graphics card to the machine.
The problem is that Linux currently only seems to support one hardware device having DRI. The Radeon DRM cannot get the DRI interface if the Intel DRM has grabbed the DRI interface first. There may be plans to fix this but I have no idea when.
I think the trick turned out for me to be setting up both the Intel and the Radeon cards as modules, then loading the DRM interfaces at runtime using modprobe. At that point you should get 2 devices (card0 and card1) in /dev/dri. I think the names are not attached to specific cards but are associated with the order in which you load the DRM drivers. Once both interfaces are present (you can have more than 2 if you like) the Xorg server scans them to find the DRM interface which matches the specific hardware (it seems to scan for up to 16 cards). The first piece of hardware to match an entry in /dev/dri/cardX gets control of the DRI device. All of the other drivers will end up with some message about not being able to get the DRI device.
If you build a DRI/DRM device into the kernal its going to get the DRI interface due to the first-come - first-served nature. If you make them both modules, e.g.
CONFIG_DRM_I915=m (or I810 or I830)
and so forth for all the other DRM drivers one might want, then its going to be the order in which xorg.conf triggers (attempting to connect the DRI interface with a hardware DRM interface) [with associated module autoloading if they are not already loaded]. Obviously you can configure xorg.conf to *not* use DRI+DRM for one or more pieces of hardware, but otherwise its going to depend on the order in which Xorg tries to open the devices (which in turn depends on you you've arranged them in xorg.conf.
It took me a couple of days to figure this out and I don't wish it on anybody.