From dbe923bff99cfca4f192db3b9ea88cd19ee7af85 Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Fri, 22 Nov 2019 22:18:58 -0800 Subject: [PATCH] meson: Add a "prefer_iris" build option MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Enabling this option makes Intel Gen8-11 hardware load the 'iris' driver by default instead of the older 'i965' driver. Regardless of how this option is set, users can still override which driver the loader selects via two methods. The first is to create a ~/.drirc or /etc/drirc file with the following snippet: The other option is to set an environment variable: export MESA_LOADER_DRIVER_OVERRIDE=i965 For now, "prefer_iris" defaults to i965 (the historical choice). A separate future patch will change the default driver to iris. Closes: https://gitlab.freedesktop.org/mesa/mesa/issues/1893 Reviewed-by: Eric Engestrom Reviewed-by: Tapani Pälli Reviewed-by: Eric Anholt --- include/pci_ids/i965_pci_ids.h | 2 ++ meson_options.txt | 6 ++++++ src/loader/meson.build | 13 ++++++++++--- 3 files changed, 18 insertions(+), 3 deletions(-) diff --git a/include/pci_ids/i965_pci_ids.h b/include/pci_ids/i965_pci_ids.h index 18eff721214..4ec79870b9e 100644 --- a/include/pci_ids/i965_pci_ids.h +++ b/include/pci_ids/i965_pci_ids.h @@ -95,6 +95,7 @@ CHIPSET(0x22B0, chv, "Intel(R) HD Graphics (Cherrytrail)") CHIPSET(0x22B1, chv, "Intel(R) HD Graphics XXX (Braswell)") /* Overridden in brw_get_renderer_string */ CHIPSET(0x22B2, chv, "Intel(R) HD Graphics (Cherryview)") CHIPSET(0x22B3, chv, "Intel(R) HD Graphics (Cherryview)") +#ifndef PREFER_IRIS CHIPSET(0x1602, bdw_gt1, "Intel(R) Broadwell GT1") CHIPSET(0x1606, bdw_gt1, "Intel(R) Broadwell GT1") CHIPSET(0x160A, bdw_gt1, "Intel(R) Broadwell GT1") @@ -240,3 +241,4 @@ CHIPSET(0x4500, ehl_4x8, "Intel(R) HD Graphics (Elkhart Lake 4x8)") CHIPSET(0x4571, ehl_4x8, "Intel(R) HD Graphics (Elkhart Lake 4x8)") CHIPSET(0x4551, ehl_4x4, "Intel(R) HD Graphics (Elkhart Lake 4x4)") CHIPSET(0x4541, ehl_2x4, "Intel(R) HD Graphics (Elkhart Lake 2x4)") +#endif diff --git a/meson_options.txt b/meson_options.txt index 8c3e9978529..dd7bf4bccaa 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -347,6 +347,12 @@ option( value : false, description : 'Allow work-in-progress freedreno vulkan driver to be enabled', ) +option( + 'prefer-iris', + type : 'boolean', + value : false, + description : 'Prefer new Intel iris driver over older i965 driver' +) option('egl-lib-suffix', type : 'string', value : '', diff --git a/src/loader/meson.build b/src/loader/meson.build index 00ba1491c45..e7dce88d443 100644 --- a/src/loader/meson.build +++ b/src/loader/meson.build @@ -35,12 +35,19 @@ else libloader_dri3_helper = [] endif +loader_c_args = [ + c_vis_args, '-DUSE_DRICONF', + '-DDEFAULT_DRIVER_DIR="@0@"'.format(dri_search_path), +] + +if with_gallium_iris and get_option('prefer-iris') + loader_c_args += ['-DPREFER_IRIS'] +endif + libloader = static_library( 'loader', ['loader.c', 'pci_id_driver_map.c'], - c_args : [c_vis_args, '-DUSE_DRICONF', - '-DDEFAULT_DRIVER_DIR="@0@"'.format(dri_search_path), -], + c_args : loader_c_args, include_directories : [inc_include, inc_src, inc_util], dependencies : [dep_libdrm, dep_thread, idep_xmlconfig_headers], build_by_default : false, -- 2.30.2