summaryrefslogtreecommitdiffstats
path: root/meta-agl-bsp/meta-ti/recipes-arago/weston/weston/0001-udev-seat-restrict-udev-enumeration-to-card0.patch
blob: 45d4ec7d654b9716873d3ac4e4976aada4f12569 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
From e8e7a9f7dfa164a75fdbdca87622a2e13334478a Mon Sep 17 00:00:00 2001
From: Anand Balagopalakrishnan <anandb@ti.com>
Date: Sat, 23 Jan 2016 22:48:07 +0530
Subject: [PATCH 1/1] udev-seat: restrict udev enumeration to card0

In case of separate GPU and Display devices as found in embedded systems, we
could have modeset node and render node controlled by different drivers.
There is a distinct possibility that udev enumeration returns the DRM device
corresponding to render node as the primary DRM device.

Obviously, modeset operations cannot be done on the GPU DRM device.

Restrict the udev enumeration to card0 and ensure that DRM device corresponding
to display is returned as the primary DRM device.

Upstream-Status: Pending

Signed-off-by: Anand Balagopalakrishnan <anandb@ti.com>
---
 libweston/compositor-drm.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libweston/compositor-drm.c b/libweston/compositor-drm.c
index 6777bf8..59c2cc5 100644
--- a/libweston/compositor-drm.c
+++ b/libweston/compositor-drm.c
@@ -2827,7 +2827,7 @@ find_primary_gpu(struct drm_backend *b, const char *seat)

	e = udev_enumerate_new(b->udev);
	udev_enumerate_add_match_subsystem(e, "drm");
-	udev_enumerate_add_match_sysname(e, "card[0-9]*");
+	udev_enumerate_add_match_sysname(e, "card0");

	udev_enumerate_scan_devices(e);
	drm_device = NULL;
--
1.7.9.5