1*4882a593Smuzhiyun# SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note 2*4882a593Smuzhiyun# 3*4882a593Smuzhiyun# (C) COPYRIGHT 2012-2023 ARM Limited. All rights reserved. 4*4882a593Smuzhiyun# 5*4882a593Smuzhiyun# This program is free software and is provided to you under the terms of the 6*4882a593Smuzhiyun# GNU General Public License version 2 as published by the Free Software 7*4882a593Smuzhiyun# Foundation, and any use by you of this program is subject to the terms 8*4882a593Smuzhiyun# of such GNU license. 9*4882a593Smuzhiyun# 10*4882a593Smuzhiyun# This program is distributed in the hope that it will be useful, 11*4882a593Smuzhiyun# but WITHOUT ANY WARRANTY; without even the implied warranty of 12*4882a593Smuzhiyun# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13*4882a593Smuzhiyun# GNU General Public License for more details. 14*4882a593Smuzhiyun# 15*4882a593Smuzhiyun# You should have received a copy of the GNU General Public License 16*4882a593Smuzhiyun# along with this program; if not, you can access it online at 17*4882a593Smuzhiyun# http://www.gnu.org/licenses/gpl-2.0.html. 18*4882a593Smuzhiyun# 19*4882a593Smuzhiyun# 20*4882a593Smuzhiyun 21*4882a593Smuzhiyunmenuconfig MALI_BIFROST 22*4882a593Smuzhiyun tristate "Mali Bifrost series support" 23*4882a593Smuzhiyun select GPU_TRACEPOINTS if ANDROID 24*4882a593Smuzhiyun select DMA_SHARED_BUFFER 25*4882a593Smuzhiyun select FW_LOADER 26*4882a593Smuzhiyun default n 27*4882a593Smuzhiyun help 28*4882a593Smuzhiyun Enable this option to build support for a ARM Mali Bifrost GPU. 29*4882a593Smuzhiyun 30*4882a593Smuzhiyun To compile this driver as a module, choose M here: 31*4882a593Smuzhiyun this will generate a single module, called mali_kbase. 32*4882a593Smuzhiyun 33*4882a593Smuzhiyunif MALI_BIFROST 34*4882a593Smuzhiyun 35*4882a593Smuzhiyunconfig MALI_PLATFORM_NAME 36*4882a593Smuzhiyun depends on MALI_BIFROST 37*4882a593Smuzhiyun string "Platform name" 38*4882a593Smuzhiyun default "devicetree" 39*4882a593Smuzhiyun help 40*4882a593Smuzhiyun Enter the name of the desired platform configuration directory to 41*4882a593Smuzhiyun include in the build. 'platform/$(MALI_PLATFORM_NAME)/Kbuild' must 42*4882a593Smuzhiyun exist. 43*4882a593Smuzhiyun 44*4882a593Smuzhiyunchoice 45*4882a593Smuzhiyun prompt "Mali HW backend" 46*4882a593Smuzhiyun depends on MALI_BIFROST 47*4882a593Smuzhiyun default MALI_REAL_HW 48*4882a593Smuzhiyun 49*4882a593Smuzhiyunconfig MALI_REAL_HW 50*4882a593Smuzhiyun bool "Enable build of Mali kernel driver for real HW" 51*4882a593Smuzhiyun depends on MALI_BIFROST 52*4882a593Smuzhiyun help 53*4882a593Smuzhiyun This is the default HW backend. 54*4882a593Smuzhiyun 55*4882a593Smuzhiyunconfig MALI_BIFROST_NO_MALI 56*4882a593Smuzhiyun bool "Enable build of Mali kernel driver for No Mali" 57*4882a593Smuzhiyun depends on MALI_BIFROST && MALI_BIFROST_EXPERT 58*4882a593Smuzhiyun help 59*4882a593Smuzhiyun This can be used to test the driver in a simulated environment 60*4882a593Smuzhiyun whereby the hardware is not physically present. If the hardware is physically 61*4882a593Smuzhiyun present it will not be used. This can be used to test the majority of the 62*4882a593Smuzhiyun driver without needing actual hardware or for software benchmarking. 63*4882a593Smuzhiyun All calls to the simulated hardware will complete immediately as if the hardware 64*4882a593Smuzhiyun completed the task. 65*4882a593Smuzhiyun 66*4882a593Smuzhiyun 67*4882a593Smuzhiyunendchoice 68*4882a593Smuzhiyun 69*4882a593Smuzhiyunmenu "Platform specific options" 70*4882a593Smuzhiyunsource "drivers/gpu/arm/bifrost/platform/Kconfig" 71*4882a593Smuzhiyunendmenu 72*4882a593Smuzhiyun 73*4882a593Smuzhiyunconfig MALI_CSF_SUPPORT 74*4882a593Smuzhiyun bool "Enable Mali CSF based GPU support" 75*4882a593Smuzhiyun default n 76*4882a593Smuzhiyun help 77*4882a593Smuzhiyun Enables support for CSF based GPUs. 78*4882a593Smuzhiyun 79*4882a593Smuzhiyunconfig MALI_BIFROST_DEVFREQ 80*4882a593Smuzhiyun bool "Enable devfreq support for Mali" 81*4882a593Smuzhiyun depends on MALI_BIFROST && PM_DEVFREQ 82*4882a593Smuzhiyun select DEVFREQ_GOV_SIMPLE_ONDEMAND 83*4882a593Smuzhiyun default y 84*4882a593Smuzhiyun help 85*4882a593Smuzhiyun Support devfreq for Mali. 86*4882a593Smuzhiyun 87*4882a593Smuzhiyun Using the devfreq framework and, by default, the simple on-demand 88*4882a593Smuzhiyun governor, the frequency of Mali will be dynamically selected from the 89*4882a593Smuzhiyun available OPPs. 90*4882a593Smuzhiyun 91*4882a593Smuzhiyunconfig MALI_BIFROST_DVFS 92*4882a593Smuzhiyun bool "Enable legacy DVFS" 93*4882a593Smuzhiyun depends on MALI_BIFROST && !MALI_BIFROST_DEVFREQ 94*4882a593Smuzhiyun default n 95*4882a593Smuzhiyun help 96*4882a593Smuzhiyun Choose this option to enable legacy DVFS in the Mali Midgard DDK. 97*4882a593Smuzhiyun 98*4882a593Smuzhiyunconfig MALI_BIFROST_GATOR_SUPPORT 99*4882a593Smuzhiyun bool "Enable Streamline tracing support" 100*4882a593Smuzhiyun depends on MALI_BIFROST 101*4882a593Smuzhiyun default y 102*4882a593Smuzhiyun help 103*4882a593Smuzhiyun Enables kbase tracing used by the Arm Streamline Performance Analyzer. 104*4882a593Smuzhiyun The tracepoints are used to derive GPU activity charts in Streamline. 105*4882a593Smuzhiyun 106*4882a593Smuzhiyunconfig MALI_BIFROST_ENABLE_TRACE 107*4882a593Smuzhiyun bool "Enable kbase tracing" 108*4882a593Smuzhiyun depends on MALI_BIFROST 109*4882a593Smuzhiyun default y if MALI_BIFROST_DEBUG 110*4882a593Smuzhiyun default n 111*4882a593Smuzhiyun help 112*4882a593Smuzhiyun Enables tracing in kbase. Trace log available through 113*4882a593Smuzhiyun the "mali_trace" debugfs file, when the CONFIG_DEBUG_FS is enabled 114*4882a593Smuzhiyun 115*4882a593Smuzhiyunconfig MALI_ARBITER_SUPPORT 116*4882a593Smuzhiyun bool "Enable arbiter support for Mali" 117*4882a593Smuzhiyun depends on MALI_BIFROST && !MALI_CSF_SUPPORT 118*4882a593Smuzhiyun default n 119*4882a593Smuzhiyun help 120*4882a593Smuzhiyun Enable support for the arbiter interface in the driver. 121*4882a593Smuzhiyun This allows an external arbiter to manage driver access 122*4882a593Smuzhiyun to GPU hardware in a virtualized environment 123*4882a593Smuzhiyun 124*4882a593Smuzhiyun If unsure, say N. 125*4882a593Smuzhiyun 126*4882a593Smuzhiyunconfig MALI_DMA_BUF_MAP_ON_DEMAND 127*4882a593Smuzhiyun bool "Enable map imported dma-bufs on demand" 128*4882a593Smuzhiyun depends on MALI_BIFROST 129*4882a593Smuzhiyun default n 130*4882a593Smuzhiyun help 131*4882a593Smuzhiyun This option will cause kbase to set up the GPU mapping of imported 132*4882a593Smuzhiyun dma-buf when needed to run atoms. This is the legacy behavior. 133*4882a593Smuzhiyun 134*4882a593Smuzhiyun This is intended for testing and the option will get removed in the 135*4882a593Smuzhiyun future. 136*4882a593Smuzhiyun 137*4882a593Smuzhiyunconfig MALI_DMA_BUF_LEGACY_COMPAT 138*4882a593Smuzhiyun bool "Enable legacy compatibility cache flush on dma-buf map" 139*4882a593Smuzhiyun depends on MALI_BIFROST && !MALI_DMA_BUF_MAP_ON_DEMAND 140*4882a593Smuzhiyun default n 141*4882a593Smuzhiyun help 142*4882a593Smuzhiyun This option enables compatibility with legacy dma-buf mapping 143*4882a593Smuzhiyun behavior, then the dma-buf is mapped on import, by adding cache 144*4882a593Smuzhiyun maintenance where MALI_DMA_BUF_MAP_ON_DEMAND would do the mapping, 145*4882a593Smuzhiyun including a cache flush. 146*4882a593Smuzhiyun 147*4882a593Smuzhiyun This option might work-around issues related to missing cache 148*4882a593Smuzhiyun flushes in other drivers. This only has an effect for clients using 149*4882a593Smuzhiyun UK 11.18 or older. For later UK versions it is not possible. 150*4882a593Smuzhiyun 151*4882a593Smuzhiyunconfig MALI_CORESIGHT 152*4882a593Smuzhiyun depends on MALI_BIFROST && MALI_CSF_SUPPORT && !MALI_BIFROST_NO_MALI 153*4882a593Smuzhiyun bool "Enable Kbase CoreSight tracing support" 154*4882a593Smuzhiyun default n 155*4882a593Smuzhiyun 156*4882a593Smuzhiyunmenuconfig MALI_BIFROST_EXPERT 157*4882a593Smuzhiyun depends on MALI_BIFROST 158*4882a593Smuzhiyun bool "Enable Expert Settings" 159*4882a593Smuzhiyun default n 160*4882a593Smuzhiyun help 161*4882a593Smuzhiyun Enabling this option and modifying the default settings may produce 162*4882a593Smuzhiyun a driver with performance or other limitations. 163*4882a593Smuzhiyun 164*4882a593Smuzhiyunif MALI_BIFROST_EXPERT 165*4882a593Smuzhiyun 166*4882a593Smuzhiyunconfig LARGE_PAGE_ALLOC_OVERRIDE 167*4882a593Smuzhiyun bool "Override default setting of 2MB pages" 168*4882a593Smuzhiyun depends on MALI_BIFROST && MALI_BIFROST_EXPERT 169*4882a593Smuzhiyun default n 170*4882a593Smuzhiyun help 171*4882a593Smuzhiyun An override config for LARGE_PAGE_ALLOC config. 172*4882a593Smuzhiyun When LARGE_PAGE_ALLOC_OVERRIDE is Y, 2MB page allocation will be 173*4882a593Smuzhiyun enabled by LARGE_PAGE_ALLOC. When this is N, the feature will be 174*4882a593Smuzhiyun enabled when GPU HW satisfies requirements. 175*4882a593Smuzhiyun 176*4882a593Smuzhiyun If in doubt, say N 177*4882a593Smuzhiyun 178*4882a593Smuzhiyunconfig LARGE_PAGE_ALLOC 179*4882a593Smuzhiyun bool "Attempt to allocate 2MB pages" 180*4882a593Smuzhiyun depends on MALI_BIFROST && MALI_BIFROST_EXPERT 181*4882a593Smuzhiyun default n 182*4882a593Smuzhiyun help 183*4882a593Smuzhiyun Rather than allocating all GPU memory page-by-page, attempt to 184*4882a593Smuzhiyun allocate 2MB pages from the kernel. This reduces TLB pressure and 185*4882a593Smuzhiyun helps to prevent memory fragmentation. 186*4882a593Smuzhiyun 187*4882a593Smuzhiyun Note this config applies only when LARGE_PAGE_ALLOC_OVERRIDE config 188*4882a593Smuzhiyun is enabled and enabling this on a GPU HW that does not satisfy 189*4882a593Smuzhiyun requirements can cause serious problem. 190*4882a593Smuzhiyun 191*4882a593Smuzhiyun If in doubt, say N 192*4882a593Smuzhiyun 193*4882a593Smuzhiyunconfig MALI_MEMORY_FULLY_BACKED 194*4882a593Smuzhiyun bool "Enable memory fully physically-backed" 195*4882a593Smuzhiyun depends on MALI_BIFROST && MALI_BIFROST_EXPERT 196*4882a593Smuzhiyun default n 197*4882a593Smuzhiyun help 198*4882a593Smuzhiyun This option enables full physical backing of all virtual 199*4882a593Smuzhiyun memory allocations in the kernel. Notice that this build 200*4882a593Smuzhiyun option only affects allocations of grow-on-GPU-page-fault 201*4882a593Smuzhiyun memory. 202*4882a593Smuzhiyun 203*4882a593Smuzhiyunconfig MALI_CORESTACK 204*4882a593Smuzhiyun bool "Enable support of GPU core stack power control" 205*4882a593Smuzhiyun depends on MALI_BIFROST && MALI_BIFROST_EXPERT 206*4882a593Smuzhiyun default n 207*4882a593Smuzhiyun help 208*4882a593Smuzhiyun Enabling this feature on supported GPUs will let the driver powering 209*4882a593Smuzhiyun on/off the GPU core stack independently without involving the Power 210*4882a593Smuzhiyun Domain Controller. This should only be enabled on platforms which 211*4882a593Smuzhiyun integration of the PDC to the Mali GPU is known to be problematic. 212*4882a593Smuzhiyun This feature is currently only supported on t-Six and t-HEx GPUs. 213*4882a593Smuzhiyun 214*4882a593Smuzhiyun If unsure, say N. 215*4882a593Smuzhiyun 216*4882a593Smuzhiyuncomment "Platform options" 217*4882a593Smuzhiyun depends on MALI_BIFROST && MALI_BIFROST_EXPERT 218*4882a593Smuzhiyun 219*4882a593Smuzhiyunconfig MALI_BIFROST_ERROR_INJECT 220*4882a593Smuzhiyun bool "Enable No Mali error injection" 221*4882a593Smuzhiyun depends on MALI_BIFROST && MALI_BIFROST_EXPERT && MALI_BIFROST_NO_MALI 222*4882a593Smuzhiyun default n 223*4882a593Smuzhiyun help 224*4882a593Smuzhiyun Enables insertion of errors to test module failure and recovery mechanisms. 225*4882a593Smuzhiyun 226*4882a593Smuzhiyuncomment "Debug options" 227*4882a593Smuzhiyun depends on MALI_BIFROST && MALI_BIFROST_EXPERT 228*4882a593Smuzhiyun 229*4882a593Smuzhiyunconfig MALI_BIFROST_DEBUG 230*4882a593Smuzhiyun bool "Enable debug build" 231*4882a593Smuzhiyun depends on MALI_BIFROST && MALI_BIFROST_EXPERT 232*4882a593Smuzhiyun default n 233*4882a593Smuzhiyun help 234*4882a593Smuzhiyun Select this option for increased checking and reporting of errors. 235*4882a593Smuzhiyun 236*4882a593Smuzhiyunconfig MALI_BIFROST_FENCE_DEBUG 237*4882a593Smuzhiyun bool "Enable debug sync fence usage" 238*4882a593Smuzhiyun depends on MALI_BIFROST && MALI_BIFROST_EXPERT && SYNC_FILE 239*4882a593Smuzhiyun default y if MALI_BIFROST_DEBUG 240*4882a593Smuzhiyun help 241*4882a593Smuzhiyun Select this option to enable additional checking and reporting on the 242*4882a593Smuzhiyun use of sync fences in the Mali driver. 243*4882a593Smuzhiyun 244*4882a593Smuzhiyun This will add a 3s timeout to all sync fence waits in the Mali 245*4882a593Smuzhiyun driver, so that when work for Mali has been waiting on a sync fence 246*4882a593Smuzhiyun for a long time a debug message will be printed, detailing what fence 247*4882a593Smuzhiyun is causing the block, and which dependent Mali atoms are blocked as a 248*4882a593Smuzhiyun result of this. 249*4882a593Smuzhiyun 250*4882a593Smuzhiyun The timeout can be changed at runtime through the js_soft_timeout 251*4882a593Smuzhiyun device attribute, where the timeout is specified in milliseconds. 252*4882a593Smuzhiyun 253*4882a593Smuzhiyunconfig MALI_BIFROST_SYSTEM_TRACE 254*4882a593Smuzhiyun bool "Enable system event tracing support" 255*4882a593Smuzhiyun depends on MALI_BIFROST && MALI_BIFROST_EXPERT 256*4882a593Smuzhiyun default y if MALI_BIFROST_DEBUG 257*4882a593Smuzhiyun default n 258*4882a593Smuzhiyun help 259*4882a593Smuzhiyun Choose this option to enable system trace events for each 260*4882a593Smuzhiyun kbase event. This is typically used for debugging but has 261*4882a593Smuzhiyun minimal overhead when not in use. Enable only if you know what 262*4882a593Smuzhiyun you are doing. 263*4882a593Smuzhiyun 264*4882a593Smuzhiyuncomment "Instrumentation options" 265*4882a593Smuzhiyun depends on MALI_BIFROST && MALI_BIFROST_EXPERT 266*4882a593Smuzhiyun 267*4882a593Smuzhiyunchoice 268*4882a593Smuzhiyun prompt "Select Performance counters set" 269*4882a593Smuzhiyun default MALI_PRFCNT_SET_PRIMARY 270*4882a593Smuzhiyun depends on MALI_BIFROST && MALI_BIFROST_EXPERT 271*4882a593Smuzhiyun 272*4882a593Smuzhiyunconfig MALI_PRFCNT_SET_PRIMARY 273*4882a593Smuzhiyun bool "Primary" 274*4882a593Smuzhiyun depends on MALI_BIFROST && MALI_BIFROST_EXPERT 275*4882a593Smuzhiyun help 276*4882a593Smuzhiyun Select this option to use primary set of performance counters. 277*4882a593Smuzhiyun 278*4882a593Smuzhiyunconfig MALI_BIFROST_PRFCNT_SET_SECONDARY 279*4882a593Smuzhiyun bool "Secondary" 280*4882a593Smuzhiyun depends on MALI_BIFROST && MALI_BIFROST_EXPERT 281*4882a593Smuzhiyun help 282*4882a593Smuzhiyun Select this option to use secondary set of performance counters. Kernel 283*4882a593Smuzhiyun features that depend on an access to the primary set of counters may 284*4882a593Smuzhiyun become unavailable. Enabling this option will prevent power management 285*4882a593Smuzhiyun from working optimally and may cause instrumentation tools to return 286*4882a593Smuzhiyun bogus results. 287*4882a593Smuzhiyun 288*4882a593Smuzhiyun If unsure, use MALI_PRFCNT_SET_PRIMARY. 289*4882a593Smuzhiyun 290*4882a593Smuzhiyunconfig MALI_PRFCNT_SET_TERTIARY 291*4882a593Smuzhiyun bool "Tertiary" 292*4882a593Smuzhiyun depends on MALI_BIFROST && MALI_BIFROST_EXPERT 293*4882a593Smuzhiyun help 294*4882a593Smuzhiyun Select this option to use tertiary set of performance counters. Kernel 295*4882a593Smuzhiyun features that depend on an access to the primary set of counters may 296*4882a593Smuzhiyun become unavailable. Enabling this option will prevent power management 297*4882a593Smuzhiyun from working optimally and may cause instrumentation tools to return 298*4882a593Smuzhiyun bogus results. 299*4882a593Smuzhiyun 300*4882a593Smuzhiyun If unsure, use MALI_PRFCNT_SET_PRIMARY. 301*4882a593Smuzhiyun 302*4882a593Smuzhiyunendchoice 303*4882a593Smuzhiyun 304*4882a593Smuzhiyunconfig MALI_PRFCNT_SET_SELECT_VIA_DEBUG_FS 305*4882a593Smuzhiyun bool "Enable runtime selection of performance counters set via debugfs" 306*4882a593Smuzhiyun depends on MALI_BIFROST && MALI_BIFROST_EXPERT && DEBUG_FS 307*4882a593Smuzhiyun default n 308*4882a593Smuzhiyun help 309*4882a593Smuzhiyun Select this option to make the secondary set of performance counters 310*4882a593Smuzhiyun available at runtime via debugfs. Kernel features that depend on an 311*4882a593Smuzhiyun access to the primary set of counters may become unavailable. 312*4882a593Smuzhiyun 313*4882a593Smuzhiyun If no runtime debugfs option is set, the build time counter set 314*4882a593Smuzhiyun choice will be used. 315*4882a593Smuzhiyun 316*4882a593Smuzhiyun This feature is unsupported and unstable, and may break at any time. 317*4882a593Smuzhiyun Enabling this option will prevent power management from working 318*4882a593Smuzhiyun optimally and may cause instrumentation tools to return bogus results. 319*4882a593Smuzhiyun 320*4882a593Smuzhiyun No validation is done on the debugfs input. Invalid input could cause 321*4882a593Smuzhiyun performance counter errors. Valid inputs are the values accepted by 322*4882a593Smuzhiyun the SET_SELECT bits of the PRFCNT_CONFIG register as defined in the 323*4882a593Smuzhiyun architecture specification. 324*4882a593Smuzhiyun 325*4882a593Smuzhiyun If unsure, say N. 326*4882a593Smuzhiyun 327*4882a593Smuzhiyunconfig MALI_JOB_DUMP 328*4882a593Smuzhiyun bool "Enable system level support needed for job dumping" 329*4882a593Smuzhiyun depends on MALI_BIFROST && MALI_BIFROST_EXPERT 330*4882a593Smuzhiyun default n 331*4882a593Smuzhiyun help 332*4882a593Smuzhiyun Choose this option to enable system level support needed for 333*4882a593Smuzhiyun job dumping. This is typically used for instrumentation but has 334*4882a593Smuzhiyun minimal overhead when not in use. Enable only if you know what 335*4882a593Smuzhiyun you are doing. 336*4882a593Smuzhiyun 337*4882a593Smuzhiyuncomment "Workarounds" 338*4882a593Smuzhiyun depends on MALI_BIFROST && MALI_BIFROST_EXPERT 339*4882a593Smuzhiyun 340*4882a593Smuzhiyunconfig MALI_PWRSOFT_765 341*4882a593Smuzhiyun bool "Enable workaround for PWRSOFT-765" 342*4882a593Smuzhiyun depends on MALI_BIFROST && MALI_BIFROST_EXPERT 343*4882a593Smuzhiyun default n 344*4882a593Smuzhiyun help 345*4882a593Smuzhiyun PWRSOFT-765 fixes devfreq cooling devices issues. The fix was merged 346*4882a593Smuzhiyun in kernel v4.10, however if backported into the kernel then this 347*4882a593Smuzhiyun option must be manually selected. 348*4882a593Smuzhiyun 349*4882a593Smuzhiyun If using kernel >= v4.10 then say N, otherwise if devfreq cooling 350*4882a593Smuzhiyun changes have been backported say Y to avoid compilation errors. 351*4882a593Smuzhiyun 352*4882a593Smuzhiyunconfig MALI_HW_ERRATA_1485982_NOT_AFFECTED 353*4882a593Smuzhiyun bool "Disable workaround for BASE_HW_ISSUE_GPU2017_1336" 354*4882a593Smuzhiyun depends on MALI_BIFROST && MALI_BIFROST_EXPERT 355*4882a593Smuzhiyun default n 356*4882a593Smuzhiyun help 357*4882a593Smuzhiyun This option disables the default workaround for GPU2017-1336. The 358*4882a593Smuzhiyun workaround keeps the L2 cache powered up except for powerdown and reset. 359*4882a593Smuzhiyun 360*4882a593Smuzhiyun The workaround introduces a limitation that will prevent the running of 361*4882a593Smuzhiyun protected mode content on fully coherent platforms, as the switch to IO 362*4882a593Smuzhiyun coherency mode requires the L2 to be turned off. 363*4882a593Smuzhiyun 364*4882a593Smuzhiyunconfig MALI_HW_ERRATA_1485982_USE_CLOCK_ALTERNATIVE 365*4882a593Smuzhiyun bool "Use alternative workaround for BASE_HW_ISSUE_GPU2017_1336" 366*4882a593Smuzhiyun depends on MALI_BIFROST && MALI_BIFROST_EXPERT && !MALI_HW_ERRATA_1485982_NOT_AFFECTED 367*4882a593Smuzhiyun default n 368*4882a593Smuzhiyun help 369*4882a593Smuzhiyun This option uses an alternative workaround for GPU2017-1336. Lowering 370*4882a593Smuzhiyun the GPU clock to a, platform specific, known good frequency before 371*4882a593Smuzhiyun powering down the L2 cache. The clock can be specified in the device 372*4882a593Smuzhiyun tree using the property, opp-mali-errata-1485982. Otherwise the 373*4882a593Smuzhiyun slowest clock will be selected. 374*4882a593Smuzhiyun 375*4882a593Smuzhiyunendif 376*4882a593Smuzhiyun 377*4882a593Smuzhiyunconfig MALI_ARBITRATION 378*4882a593Smuzhiyun tristate "Enable Virtualization reference code" 379*4882a593Smuzhiyun depends on MALI_BIFROST 380*4882a593Smuzhiyun default n 381*4882a593Smuzhiyun help 382*4882a593Smuzhiyun Enables the build of several reference modules used in the reference 383*4882a593Smuzhiyun virtualization setup for Mali 384*4882a593Smuzhiyun If unsure, say N. 385*4882a593Smuzhiyun 386*4882a593Smuzhiyun 387*4882a593Smuzhiyun# source "drivers/gpu/arm/bifrost/tests/Kconfig" 388*4882a593Smuzhiyun 389*4882a593Smuzhiyunendif 390