2 # (C) COPYRIGHT 2012-2015 ARM Limited. All rights reserved.
4 # This program is free software and is provided to you under the terms of the
5 # GNU General Public License version 2 as published by the Free Software
6 # Foundation, and any use by you of this program is subject to the terms
9 # A copy of the licence is included with the program, and can also be obtained
10 # from Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
11 # Boston, MA 02110-1301, USA.
17 menuconfig MALI_MIDGARD
18 tristate "Mali Midgard series support"
21 Enable this option to build support for a ARM Mali Midgard GPU.
23 To compile this driver as a module, choose M here:
24 this will generate a single module, called mali_kbase.
27 prompt "Streamline support"
28 depends on MALI_MIDGARD
29 default MALI_TIMELINE_DISABLED
31 Select streamline support configuration.
33 config MALI_TIMELINE_DISABLED
34 bool "Streamline support disabled"
36 Disable support for ARM Streamline Performance Analyzer.
38 Timeline support will not be included in
40 Debug stream will not be generated.
42 config MALI_GATOR_SUPPORT
43 bool "Streamline support via Gator"
45 Adds diagnostic support for use with the ARM Streamline Performance Analyzer.
46 You will need the Gator device driver already loaded before loading this driver when enabling
47 Streamline debug support.
49 config MALI_MIPE_ENABLED
50 bool "Streamline support via MIPE"
52 Adds diagnostic support for use with the ARM Streamline Performance Analyzer.
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.
59 config MALI_MIDGARD_DVFS
60 bool "Enable legacy DVFS"
61 depends on MALI_MIDGARD && !MALI_DEVFREQ && !MALI_PLATFORM_DEVICETREE
64 Choose this option to enable legacy DVFS in the Mali Midgard DDK.
66 config MALI_MIDGARD_RT_PM
67 bool "Enable Runtime power management"
68 depends on MALI_MIDGARD
72 Choose this option to enable runtime power management in the Mali Midgard DDK.
74 config MALI_MIDGARD_ENABLE_TRACE
75 bool "Enable kbase tracing"
76 depends on MALI_MIDGARD
79 Enables tracing in kbase. Trace log available through
80 the "mali_trace" debugfs file, when the CONFIG_DEBUG_FS is enabled
82 config MALI_MIDGARD_DEBUG_SYS
83 bool "Enable sysfs for the Mali Midgard DDK "
84 depends on MALI_MIDGARD && SYSFS
87 Enables sysfs for the Mali Midgard DDK. Set/Monitor the Mali Midgard DDK
90 bool "devfreq support for Mali"
91 depends on MALI_MIDGARD && PM_DEVFREQ
93 Support devfreq for Mali.
95 Using the devfreq framework and, by default, the simpleondemand
96 governor, the frequency of Mali will be dynamically selected from the
100 # MALI_EXPERT configuration options
102 menuconfig MALI_EXPERT
103 depends on MALI_MIDGARD
104 bool "Enable Expert Settings"
107 Enabling this option and modifying the default settings may produce a driver with performance or
110 config MALI_DEBUG_SHADER_SPLIT_FS
111 bool "Allow mapping of shader cores via sysfs"
112 depends on MALI_MIDGARD && MALI_MIDGARD_DEBUG_SYS && MALI_EXPERT
115 Select this option to provide a sysfs entry for runtime configuration of shader
118 config MALI_PLATFORM_FAKE
119 bool "Enable fake platform device support"
120 depends on MALI_MIDGARD && MALI_EXPERT
123 When you start to work with the Mali Midgard series device driver the platform-specific code of
124 the Linux kernel for your platform may not be complete. In this situation the kernel device driver
125 supports creating the platform device outside of the Linux platform-specific code.
126 Enable this option if would like to use a platform device configuration from within the device driver.
129 prompt "Platform configuration"
130 depends on MALI_MIDGARD && MALI_EXPERT
131 default MALI_PLATFORM_DEVICETREE
133 Select the SOC platform that contains a Mali Midgard GPU
135 config MALI_PLATFORM_DEVICETREE
136 bool "Device Tree platform"
139 Select this option to use Device Tree with the Mali driver.
141 When using this option the Mali driver will get the details of the
142 GPU hardware from the Device Tree. This means that the same driver
143 binary can run on multiple platforms as long as all the GPU hardware
144 details are described in the device tree.
146 Device Tree is the recommended method for the Mali driver platform
149 config MALI_PLATFORM_VEXPRESS
150 depends on ARCH_VEXPRESS && (ARCH_VEXPRESS_CA9X4 || ARCH_VEXPRESS_CA15X4)
151 bool "Versatile Express"
152 config MALI_PLATFORM_VEXPRESS_VIRTEX7_40MHZ
153 depends on ARCH_VEXPRESS && (ARCH_VEXPRESS_CA9X4 || ARCH_VEXPRESS_CA15X4)
154 bool "Versatile Express w/Virtex7 @ 40Mhz"
155 config MALI_PLATFORM_GOLDFISH
156 depends on ARCH_GOLDFISH
157 bool "Android Goldfish virtual CPU"
158 config MALI_PLATFORM_PBX
159 depends on ARCH_REALVIEW && REALVIEW_EB_A9MP && MACH_REALVIEW_PBX
160 bool "Realview PBX-A9"
161 config MALI_PLATFORM_THIRDPARTY
162 bool "Third Party Platform"
165 config MALI_PLATFORM_THIRDPARTY_NAME
166 depends on MALI_MIDGARD && MALI_PLATFORM_THIRDPARTY && MALI_EXPERT
167 string "Third party platform name"
169 Enter the name of a third party platform that is supported. The third part configuration
170 file must be in midgard/config/tpip/mali_kbase_config_xxx.c where xxx is the name
175 depends on MALI_MIDGARD && MALI_EXPERT
178 Select this option for increased checking and reporting of errors.
182 depends on MALI_MIDGARD && MALI_EXPERT
185 This can be used to test the driver in a simulated environment
186 whereby the hardware is not physically present. If the hardware is physically
187 present it will not be used. This can be used to test the majority of the
188 driver without needing actual hardware or for software benchmarking.
189 All calls to the simulated hardware will complete immediately as if the hardware
192 config MALI_ERROR_INJECT
193 bool "Error injection"
194 depends on MALI_MIDGARD && MALI_EXPERT && MALI_NO_MALI
197 Enables insertion of errors to test module failure and recovery mechanisms.
199 config MALI_TRACE_TIMELINE
200 bool "Timeline tracing"
201 depends on MALI_MIDGARD && MALI_EXPERT
204 Enables timeline tracing through the kernel tracepoint system.
206 config MALI_SYSTEM_TRACE
207 bool "Enable system event tracing support"
208 depends on MALI_MIDGARD && MALI_EXPERT
211 Choose this option to enable system trace events for each
212 kbase event. This is typically used for debugging but has
213 minimal overhead when not in use. Enable only if you know what
216 config MALI_GPU_TRACEPOINTS
217 bool "Enable GPU tracepoints"
218 depends on MALI_MIDGARD && ANDROID
219 select GPU_TRACEPOINTS
221 Enables GPU tracepoints using Android trace event definitions.
223 source "drivers/gpu/arm/midgard/platform/Kconfig"