]> git.ipfire.org Git - thirdparty/plymouth.git/commitdiff
[drm] Conditionalize fb fallback with 1-head ttm
authorRay Strode <rstrode@redhat.com>
Thu, 1 Apr 2010 18:37:41 +0000 (14:37 -0400)
committerRay Strode <rstrode@redhat.com>
Thu, 1 Apr 2010 18:37:41 +0000 (14:37 -0400)
When using the old style transition code path where
plymouth quits before X starts, we can't use the drm
renderer for single head nouveau and readeon setups
because their kernel memory manager doesn't allow userspace
write access to the console fb and the old style
transition code needs to dump the last frame of the
plymouth animation to the console fb as intermediate step
of the transition process.

The newer plymouth deactivate mechanism doesn't need the
intermediate console fb copy, so we can stick with the
drm renderer all the time.

This commit conditionalizes the "bail to frame-buffer renderer"
check based on whether the build is configured to enable
the old style transition.

src/plugins/renderers/drm/plugin.c

index 0bc575747c33038f2334076ff8e73d64ee4907dc..725a023e76d6756a99a86947d52ecb5c3fdb7a7d 100644 (file)
@@ -773,9 +773,11 @@ create_heads_for_active_connectors (ply_renderer_backend_t *backend)
       ply_list_append_data (backend->heads, head);
     }
 
+#ifdef PLY_ENABLE_GDM_TRANSITION
   /* If the driver doesn't support mapping the fb console
    * then we can't get a smooth crossfade transition to
-   * the display manager unless we use the /dev/fb interface.
+   * the display manager unless we use the /dev/fb interface
+   * or the plymouth deactivate interface.
    *
    * In multihead configurations, we'd rather have working
    * multihead, but otherwise bail now.
@@ -790,6 +792,7 @@ create_heads_for_active_connectors (ply_renderer_backend_t *backend)
       free_heads (backend);
       return false;
     }
+#endif
 
   return ply_list_get_length (backend->heads) > 0;
 }