[Mesa-dev] [PATCH v2 13/40] pipe-loader: directly use pipe_loader_sw_probe_null() at probe time

Emil Velikov emil.l.velikov at gmail.com
Fri Nov 20 12:11:22 PST 2015


Due to the nature of the other sw winsys' we cannot use them during the
generic probe stage. As such there is little point in keeping the
abstraction layer.

Cc: Tom Stellard <thomas.stellard at amd.com>
Cc: Francisco Jerez <currojerez at riseup.net>
Signed-off-by: Emil Velikov <emil.l.velikov at gmail.com>
Acked-by: Rob Clark <robclark at freedesktop.org>
---
 src/gallium/auxiliary/pipe-loader/pipe_loader_sw.c | 17 ++++-------------
 1 file changed, 4 insertions(+), 13 deletions(-)

diff --git a/src/gallium/auxiliary/pipe-loader/pipe_loader_sw.c b/src/gallium/auxiliary/pipe-loader/pipe_loader_sw.c
index 4b6e884..c61f2b8 100644
--- a/src/gallium/auxiliary/pipe-loader/pipe_loader_sw.c
+++ b/src/gallium/auxiliary/pipe-loader/pipe_loader_sw.c
@@ -46,10 +46,6 @@ struct pipe_loader_sw_device {
 
 static struct pipe_loader_ops pipe_loader_sw_ops;
 
-static struct sw_winsys *(*backends[])() = {
-   null_sw_create
-};
-
 static bool
 pipe_loader_sw_probe_init_common(struct pipe_loader_sw_device *sdev)
 {
@@ -124,16 +120,11 @@ pipe_loader_sw_probe_null(struct pipe_loader_device **devs)
 int
 pipe_loader_sw_probe(struct pipe_loader_device **devs, int ndev)
 {
-   int i;
-
-   for (i = 0; i < Elements(backends); i++) {
-      if (i < ndev) {
-         struct pipe_loader_sw_device *sdev = CALLOC_STRUCT(pipe_loader_sw_device);
-	 /* TODO: handle CALLOC_STRUCT failure */
+   int i = 1;
 
-         sdev->ws = backends[i]();
-         pipe_loader_sw_probe_init_common(sdev);
-         devs[i] = &sdev->base;
+   if (i < ndev) {
+      if (!pipe_loader_sw_probe_null(devs)) {
+         i--;
       }
    }
 
-- 
2.6.2



More information about the mesa-dev mailing list