Re: wayland: hotplugging additional screens

Jan Beich <[email protected]>
Newsgroups gmane.os.freebsd.devel.x11
Message-ID <[email protected]>
raichoo <[email protected]> writes:

> Hi,
>
> I'm currently developing a wayland compositor on FreeBSD and got started on
> adding support for multiple screens. It seems that a running compositor is not
> getting notified when a new screen is attached to the system. I need to restart
> the compositor for it to get recognized. The library I'm using is wlroots.
>
> Is anyone else having the same issue?

Does the following help?

Index: devel/libudev-devd/Makefile
===================================================================
--- devel/libudev-devd/Makefile	(revision 512101)
+++ devel/libudev-devd/Makefile	(working copy)
@@ -2,8 +2,12 @@
 
 PORTNAME=	libudev-devd
 PORTVERSION=	0.4
+PORTREVISION=	1
 CATEGORIES=	devel
 
+PATCH_SITES=	https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/
+PATCHFILES+=	f11ee5b418c7.patch:-p1
+
 MAINTAINER=	[email protected]
 COMMENT=	libudev-compatible interface for devd
 
Index: devel/libudev-devd/distinfo
===================================================================
--- devel/libudev-devd/distinfo	(revision 512101)
+++ devel/libudev-devd/distinfo	(working copy)
@@ -1,3 +1,5 @@
 TIMESTAMP = 1527795819
 SHA256 (FreeBSDDesktop-libudev-devd-0.4-fbe5a0b_GH0.tar.gz) = 4f6423caf9b673e8bae14c2ec94f0ac1c3fc90b2a1b96315ce11caba1ac342e2
 SIZE (FreeBSDDesktop-libudev-devd-0.4-fbe5a0b_GH0.tar.gz) = 17111
+SHA256 (f11ee5b418c7.patch) = 5f7ed7a4158295356310b838a8f0363c8c6a197dab8e24cc4ca9ee2ded4cc6a5
+SIZE (f11ee5b418c7.patch) = 2768
Index: x11-toolkits/wlroots/Makefile
===================================================================
--- x11-toolkits/wlroots/Makefile	(revision 511956)
+++ x11-toolkits/wlroots/Makefile	(working copy)
@@ -2,6 +2,7 @@
 
 PORTNAME=	wlroots
 DISTVERSION=	0.7.0
+PORTREVISION=	1
 CATEGORIES=	x11-toolkits
 
 MAINTAINER=	[email protected]
Index: x11-toolkits/wlroots/files/patch-backend_session_session.c
===================================================================
--- x11-toolkits/wlroots/files/patch-backend_session_session.c	(nonexistent)
+++ x11-toolkits/wlroots/files/patch-backend_session_session.c	(working copy)
@@ -0,0 +1,22 @@
+Enable DRM hotplug on FreeBSD
+
+--- backend/session/session.c.orig	2019-08-27 03:32:24 UTC
++++ backend/session/session.c
+@@ -288,11 +288,6 @@ size_t wlr_session_find_gpus(struct wlr_session *sessi
+ 		return explicit_find_gpus(session, ret_len, ret, explicit);
+ 	}
+ 
+-#ifdef __FreeBSD__
+-	// XXX: libudev-devd does not return any GPUs (yet?)
+-	return explicit_find_gpus(session, ret_len, ret, "/dev/drm/0");
+-#else
+-
+ 	struct udev_enumerate *en = udev_enumerate_new(session->udev);
+ 	if (!en) {
+ 		wlr_log(WLR_ERROR, "Failed to create udev enumeration");
+@@ -360,5 +355,4 @@ size_t wlr_session_find_gpus(struct wlr_session *sessi
+ 	udev_enumerate_unref(en);
+ 
+ 	return i;
+-#endif
+ }

_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-x11
To unsubscribe, send any mail to "[email protected]"
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.