1# SPDX-License-Identifier: GPL-2.0 2config MALI400 3 tristate "Mali-300/400/450 support" 4 depends on ARM || ARM64 5 select DMA_SHARED_BUFFER 6 help 7 This enables support for the ARM Mali-300, Mali-400, and Mali-450 8 GPUs. 9 10 To compile this driver as a module, choose M here: the module will be 11 called mali. 12 13config MALI450 14 bool "Enable Mali-450 support" 15 depends on MALI400 16 help 17 This enables support for Mali-450 specific features. 18 19config MALI470 20 bool "Enable Mali-470 support" 21 depends on MALI400 22 help 23 This enables support for Mali-470 specific features. 24 25config MALI400_DEBUG 26 bool "Enable debug in Mali driver" 27 depends on MALI400 28 help 29 This enabled extra debug checks and messages in the Mali driver. 30 31config MALI400_PROFILING 32 bool "Enable Mali profiling" 33 depends on MALI400 34 select TRACEPOINTS 35 default y 36 help 37 This enables gator profiling of Mali GPU events. 38 39config MALI400_INTERNAL_PROFILING 40 bool "Enable internal Mali profiling API" 41 depends on MALI400_PROFILING 42 default n 43 help 44 This enables the internal legacy Mali profiling API. 45 46config MALI400_UMP 47 bool "Enable UMP support" 48 depends on MALI400 49 help 50 This enables support for the UMP memory sharing API in the Mali driver. 51 52config MALI_DVFS 53 bool "Enable Mali dynamically frequency change" 54 depends on MALI400 && !MALI_DEVFREQ 55 default y 56 help 57 This enables support for dynamic change frequency of Mali with the goal of lowering power consumption. 58 59config MALI_DMA_BUF_MAP_ON_ATTACH 60 bool "Map dma-buf attachments on attach" 61 depends on MALI400 && DMA_SHARED_BUFFER 62 default y 63 help 64 This makes the Mali driver map dma-buf attachments after doing 65 attach. If this is not set the dma-buf attachments will be mapped for 66 every time the GPU need to access the buffer. 67 68 Mapping for each access can cause lower performance. 69 70config MALI_SHARED_INTERRUPTS 71 bool "Support for shared interrupts" 72 depends on MALI400 73 default n 74 help 75 Adds functionality required to properly support shared interrupts. Without this support, 76 the device driver will fail during insmod if it detects shared interrupts. This also 77 works when the GPU is not using shared interrupts, but might have a slight performance 78 impact. 79 80config MALI_PMU_PARALLEL_POWER_UP 81 bool "Power up Mali PMU domains in parallel" 82 depends on MALI400 83 default n 84 help 85 This makes the Mali driver power up all PMU power domains in parallel, instead of 86 powering up domains one by one, with a slight delay in between. Powering on all power 87 domains at the same time may cause peak currents higher than what some systems can handle. 88 These systems must not enable this option. 89 90config MALI_DT 91 bool "Using device tree to initialize module" 92 depends on MALI400 && OF 93 default n 94 help 95 This enable the Mali driver to choose the device tree path to get platform resoures 96 and disable the old config method. Mali driver could run on the platform which the 97 device tree is enabled in kernel and corresponding hardware description is implemented 98 properly in device DTS file. 99 100config MALI_DEVFREQ 101 bool "Using devfreq to tuning frequency" 102 depends on MALI400 && PM_DEVFREQ 103 default n 104 help 105 Support devfreq for Mali. 106 107 Using the devfreq framework and, by default, the simpleondemand 108 governor, the frequency of Mali will be dynamically selected from the 109 available OPPs. 110 111config MALI_QUIET 112 bool "Make Mali driver very quiet" 113 depends on MALI400 && !MALI400_DEBUG 114 default n 115 help 116 This forces the Mali driver to never print any messages. 117 118 If unsure, say N. 119