plymouth/plymouth-ignore-cirrusdrm.patch

22 lines
984 B
Diff
Raw Normal View History

Index: plymouth-0.9.0/src/libply-splash-core/ply-device-manager.c
===================================================================
--- plymouth-0.9.0.orig/src/libply-splash-core/ply-device-manager.c
+++ plymouth-0.9.0/src/libply-splash-core/ply-device-manager.c
@@ -149,8 +149,14 @@ fb_device_has_drm_device (ply_device_man
card_path = udev_list_entry_get_name (card_entry);
card_device = udev_device_new_from_syspath (manager->udev_context, card_path);
card_node = udev_device_get_devnode (card_device);
- if (card_node != NULL)
- has_drm_device = true;
+ if (card_node != NULL) {
+ /* don't consider drm driver for cirrus usable */
+ const char *card_name = udev_device_get_sysattr_value (card_device, "name");
+ if (card_name && strcmp ("cirrusdrmfb", card_name) == 0)
+ has_drm_device = false;
+ else
+ has_drm_device = true;
+ }
else
ply_trace ("no card node!");