DragonFly users List (threaded) for 2008-02
Re: drm/dri update
Petr Janda wrote:
> > 2) /dev/drm/card0 keeps disappearing due to make upgrade. Can adjust
> > the MAKEDEV script to create the nodes so they dont disappear?
> Sorry, I should have verified it. the /dev/dri/card0 node disappears on
> every reboot, not after make upgrade. Why is that? And what can we do
> to fix it, other than but running mknod on every start up?
It disappears if X starts and has to load modules itself. It does some
tricks with removing /dev entry, loading modules, creating entry again
etc, but fails. It doesn't fail if you load modules yourself before
starting X, but unfortunately loading modules from bootloader doesn't
work either - drm stuff isn't detected in this case :(. This is the
problem we need to fix as well ... corecode, any ideas?
But the point why this magic Xorg itself does fails, is that it has wrong
knowledge about drm device major number used in DragonFly. Replace libdrm
patch-ab in pkgsrc with attached patch, recompile, install and Xorg
should be able to create dev entries correctly then.
--- ./libdrm/xf86drm.c.orig 2006-11-08 23:54:38 +0200
+++ ./libdrm/xf86drm.c 2008-02-14 10:14:55 +0200
@@ -62,12 +62,12 @@
-#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
+#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) || defined(__DragonFly__)
#define DRM_MAJOR 145
-#define DRM_MAJOR 34
+#define DRM_MAJOR 180
# ifdef __OpenBSD__