1616
1717menuconfig MALI_MIDGARD
1818 tristate "Mali Midgard series support"
19+ select GPU_TRACEPOINTS if ANDROID
1920 default n
2021 help
2122 Enable this option to build support for a ARM Mali Midgard GPU.
2223
2324 To compile this driver as a module, choose M here:
2425 this will generate a single module, called mali_kbase.
2526
26- choice
27- prompt "Streamline support"
28- depends on MALI_MIDGARD
29- default MALI_TIMELINE_DISABLED
30- help
31- Select streamline support configuration.
32-
33- config MALI_TIMELINE_DISABLED
34- bool "Streamline support disabled"
35- help
36- Disable support for ARM Streamline Performance Analyzer.
37-
38- Timeline support will not be included in
39- kernel code.
40- Debug stream will not be generated.
41-
4227config MALI_GATOR_SUPPORT
4328 bool "Streamline support via Gator"
29+ depends on MALI_MIDGARD
30+ default n
4431 help
4532 Adds diagnostic support for use with the ARM Streamline Performance Analyzer.
4633 You will need the Gator device driver already loaded before loading this driver when enabling
4734 Streamline debug support.
48-
49- config MALI_MIPE_ENABLED
50- bool "Streamline support via MIPE"
51- help
52- Adds diagnostic support for use with the ARM Streamline Performance Analyzer.
53-
54- Stream will be transmitted directly to Mali GPU library.
55- Compatible version of the library is required to read debug stream generated by kernel.
56-
57- endchoice
35+ This is a legacy interface required by older versions of Streamline.
5836
5937config MALI_MIDGARD_DVFS
6038 bool "Enable legacy DVFS"
@@ -81,6 +59,15 @@ config MALI_DEVFREQ
8159 governor, the frequency of Mali will be dynamically selected from the
8260 available OPPs.
8361
62+ config MALI_DMA_FENCE
63+ bool "DMA_BUF fence support for Mali"
64+ depends on MALI_MIDGARD && !KDS
65+ default n
66+ help
67+ Support DMA_BUF fences for Mali.
68+
69+ This option should only be enabled if KDS is not present and
70+ the Linux Kernel has built in support for DMA_BUF fences.
8471
8572# MALI_EXPERT configuration options
8673
@@ -92,13 +79,18 @@ menuconfig MALI_EXPERT
9279 Enabling this option and modifying the default settings may produce a driver with performance or
9380 other limitations.
9481
95- config MALI_DEBUG_SHADER_SPLIT_FS
96- bool "Allow mapping of shader cores via sysfs "
82+ config MALI_PRFCNT_SET_SECONDARY
83+ bool "Use secondary set of performance counters "
9784 depends on MALI_MIDGARD && MALI_EXPERT
9885 default n
9986 help
100- Select this option to provide a sysfs entry for runtime configuration of shader
101- core affinity masks.
87+ Select this option to use secondary set of performance counters. Kernel
88+ features that depend on an access to the primary set of counters may
89+ become unavailable. Enabling this option will prevent power management
90+ from working optimally and may cause instrumentation tools to return
91+ bogus results.
92+
93+ If unsure, say N.
10294
10395config MALI_PLATFORM_FAKE
10496 bool "Enable fake platform device support"
@@ -162,6 +154,23 @@ config MALI_DEBUG
162154 help
163155 Select this option for increased checking and reporting of errors.
164156
157+ config MALI_FENCE_DEBUG
158+ bool "Debug sync fence usage"
159+ depends on MALI_MIDGARD && MALI_EXPERT && SYNC
160+ default y if MALI_DEBUG
161+ help
162+ Select this option to enable additional checking and reporting on the
163+ use of sync fences in the Mali driver.
164+
165+ This will add a 3s timeout to all sync fence waits in the Mali
166+ driver, so that when work for Mali has been waiting on a sync fence
167+ for a long time a debug message will be printed, detailing what fence
168+ is causing the block, and which dependent Mali atoms are blocked as a
169+ result of this.
170+
171+ The timeout can be changed at runtime through the js_soft_timeout
172+ device attribute, where the timeout is specified in milliseconds.
173+
165174config MALI_NO_MALI
166175 bool "No Mali"
167176 depends on MALI_MIDGARD && MALI_EXPERT
@@ -198,11 +207,19 @@ config MALI_SYSTEM_TRACE
198207 minimal overhead when not in use. Enable only if you know what
199208 you are doing.
200209
201- config MALI_GPU_TRACEPOINTS
202- bool "Enable GPU tracepoints "
203- depends on MALI_MIDGARD && ANDROID
204- select GPU_TRACEPOINTS
210+ config MALI_GPU_MMU_AARCH64
211+ bool "Use AArch64 page tables "
212+ depends on MALI_MIDGARD && MALI_EXPERT
213+ default n
205214 help
206- Enables GPU tracepoints using Android trace event definitions.
215+ Use AArch64 format page tables for the GPU instead of LPAE-style.
216+ The two formats have the same functionality and performance but a
217+ future GPU may deprecate or remove the legacy LPAE-style format.
218+
219+ The LPAE-style format is supported on all Midgard and current Bifrost
220+ GPUs. Enabling AArch64 format restricts the driver to only supporting
221+ Bifrost GPUs.
222+
223+ If in doubt, say N.
207224
208225source "drivers/gpu/arm/midgard/platform/Kconfig"
0 commit comments