Commit
e794f8bf8bdb ("gallium: move loading of drirc to pipe-loader")
moved the option cache to the pipe_loader_device. However, the
screen->dev pointer is not set when dri_init_options() is called. Move
the call to after the pipe_loader_sw_probe_kms() call so screen->dev is
set. This mirrors the code flow for dri2_init_screen().
Fixes: e794f8bf8bdb ("gallium: move loading of drirc to pipe-loader")
Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
Cc: Marek Olšák <marek.olsak@amd.com>
Signed-off-by: Rob Herring <robh@kernel.org>
if (screen->fd < 0 || (fd = fcntl(screen->fd, F_DUPFD_CLOEXEC, 3)) < 0)
goto free_screen;
- dri_init_options(screen);
-
- if (pipe_loader_sw_probe_kms(&screen->dev, fd))
+ if (pipe_loader_sw_probe_kms(&screen->dev, fd)) {
+ dri_init_options(screen);
pscreen = pipe_loader_create_screen(screen->dev);
+ }
if (!pscreen)
goto release_pipe;