target-helpers: Remove per target software wrapper check
Instead of having a NAME_SOFTWARE check just use the GALLIUM_DRIVER instead but set the default to native which is the same as not wrapped.
This commit is contained in:
@@ -23,25 +23,12 @@
|
||||
#include "cell/ppu/cell_public.h"
|
||||
#endif
|
||||
|
||||
|
||||
static INLINE struct pipe_screen *
|
||||
sw_screen_create(struct sw_winsys *winsys)
|
||||
sw_screen_create_named(struct sw_winsys *winsys, const char *driver)
|
||||
{
|
||||
const char *default_driver;
|
||||
const char *driver;
|
||||
struct pipe_screen *screen = NULL;
|
||||
|
||||
#if defined(GALLIUM_CELL)
|
||||
default_driver = "cell";
|
||||
#elif defined(GALLIUM_LLVMPIPE)
|
||||
default_driver = "llvmpipe";
|
||||
#elif defined(GALLIUM_SOFTPIPE)
|
||||
default_driver = "softpipe";
|
||||
#else
|
||||
default_driver = "";
|
||||
#endif
|
||||
|
||||
driver = debug_get_option("GALLIUM_DRIVER", default_driver);
|
||||
|
||||
#if defined(GALLIUM_CELL)
|
||||
if (screen == NULL && strcmp(driver, "cell") == 0)
|
||||
screen = cell_create_screen(winsys);
|
||||
@@ -60,4 +47,26 @@ sw_screen_create(struct sw_winsys *winsys)
|
||||
return screen;
|
||||
}
|
||||
|
||||
|
||||
static INLINE struct pipe_screen *
|
||||
sw_screen_create(struct sw_winsys *winsys)
|
||||
{
|
||||
const char *default_driver;
|
||||
const char *driver;
|
||||
|
||||
#if defined(GALLIUM_CELL)
|
||||
default_driver = "cell";
|
||||
#elif defined(GALLIUM_LLVMPIPE)
|
||||
default_driver = "llvmpipe";
|
||||
#elif defined(GALLIUM_SOFTPIPE)
|
||||
default_driver = "softpipe";
|
||||
#else
|
||||
default_driver = "";
|
||||
#endif
|
||||
|
||||
driver = debug_get_option("GALLIUM_DRIVER", default_driver);
|
||||
return sw_screen_create_named(winsys, driver);
|
||||
}
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
@@ -13,14 +13,20 @@ static INLINE struct pipe_screen *
|
||||
sw_screen_wrap(struct pipe_screen *screen)
|
||||
{
|
||||
struct sw_winsys *sws;
|
||||
struct pipe_screen *sw_screen;
|
||||
struct pipe_screen *sw_screen = NULL;
|
||||
const char *driver;
|
||||
|
||||
driver = debug_get_option("GALLIUM_DRIVER", "native");
|
||||
if (strcmp(driver, "native") == 0)
|
||||
return screen;
|
||||
|
||||
sws = wrapper_sw_winsys_wrap_pipe_screen(screen);
|
||||
if (!sws)
|
||||
goto err;
|
||||
|
||||
sw_screen = sw_screen_create(sws);
|
||||
if (sw_screen == screen)
|
||||
sw_screen = sw_screen_create_named(sws, driver);
|
||||
|
||||
if (!sw_screen)
|
||||
goto err_winsys;
|
||||
|
||||
return sw_screen;
|
||||
|
||||
@@ -19,8 +19,7 @@ create_screen(int fd)
|
||||
if (!screen)
|
||||
return NULL;
|
||||
|
||||
if (debug_get_bool_option("I915_SOFTWARE", FALSE))
|
||||
screen = sw_screen_wrap(screen);
|
||||
screen = sw_screen_wrap(screen);
|
||||
|
||||
screen = debug_screen_wrap(screen);
|
||||
|
||||
|
||||
@@ -19,8 +19,7 @@ create_screen(int fd)
|
||||
if (!screen)
|
||||
return NULL;
|
||||
|
||||
if (debug_get_bool_option("BRW_SOFTPIPE", FALSE))
|
||||
screen = sw_screen_wrap(screen);
|
||||
screen = sw_screen_wrap(screen);
|
||||
|
||||
screen = debug_screen_wrap(screen);
|
||||
|
||||
|
||||
@@ -18,8 +18,7 @@ create_screen(int fd)
|
||||
if (!screen)
|
||||
return NULL;
|
||||
|
||||
if (debug_get_bool_option("BRW_SOFTPIPE", FALSE))
|
||||
screen = sw_screen_wrap(screen);
|
||||
screen = sw_screen_wrap(screen);
|
||||
|
||||
screen = debug_screen_wrap(screen);
|
||||
|
||||
|
||||
@@ -19,8 +19,7 @@ create_screen(int fd)
|
||||
if (!screen)
|
||||
return NULL;
|
||||
|
||||
if (debug_get_bool_option("BRW_SOFTPIPE", FALSE))
|
||||
screen = sw_screen_wrap(screen);
|
||||
screen = sw_screen_wrap(screen);
|
||||
|
||||
screen = debug_screen_wrap(screen);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user