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_ENABLE_TRACE
67 bool "Enable kbase tracing"
68 depends on MALI_MIDGARD
71 Enables tracing in kbase. Trace log available through
72 the "mali_trace" debugfs file, when the CONFIG_DEBUG_FS is enabled
75 bool "devfreq support for Mali"
76 depends on MALI_MIDGARD && PM_DEVFREQ
78 Support devfreq for Mali.
80 Using the devfreq framework and, by default, the simpleondemand
81 governor, the frequency of Mali will be dynamically selected from the
85 # MALI_EXPERT configuration options
87 menuconfig MALI_EXPERT
88 depends on MALI_MIDGARD
89 bool "Enable Expert Settings"
92 Enabling this option and modifying the default settings may produce a driver with performance or
95 config MALI_DEBUG_SHADER_SPLIT_FS
96 bool "Allow mapping of shader cores via sysfs"
97 depends on MALI_MIDGARD && MALI_EXPERT
100 Select this option to provide a sysfs entry for runtime configuration of shader
103 config MALI_PLATFORM_FAKE
104 bool "Enable fake platform device support"
105 depends on MALI_MIDGARD && MALI_EXPERT
108 When you start to work with the Mali Midgard series device driver the platform-specific code of
109 the Linux kernel for your platform may not be complete. In this situation the kernel device driver
110 supports creating the platform device outside of the Linux platform-specific code.
111 Enable this option if would like to use a platform device configuration from within the device driver.
114 prompt "Platform configuration"
115 depends on MALI_MIDGARD && MALI_EXPERT
116 default MALI_PLATFORM_DEVICETREE
118 Select the SOC platform that contains a Mali Midgard GPU
120 config MALI_PLATFORM_DEVICETREE
121 bool "Device Tree platform"
124 Select this option to use Device Tree with the Mali driver.
126 When using this option the Mali driver will get the details of the
127 GPU hardware from the Device Tree. This means that the same driver
128 binary can run on multiple platforms as long as all the GPU hardware
129 details are described in the device tree.
131 Device Tree is the recommended method for the Mali driver platform
134 config MALI_PLATFORM_VEXPRESS
135 depends on ARCH_VEXPRESS && (ARCH_VEXPRESS_CA9X4 || ARCH_VEXPRESS_CA15X4)
136 bool "Versatile Express"
137 config MALI_PLATFORM_VEXPRESS_VIRTEX7_40MHZ
138 depends on ARCH_VEXPRESS && (ARCH_VEXPRESS_CA9X4 || ARCH_VEXPRESS_CA15X4)
139 bool "Versatile Express w/Virtex7 @ 40Mhz"
140 config MALI_PLATFORM_GOLDFISH
141 depends on ARCH_GOLDFISH
142 bool "Android Goldfish virtual CPU"
143 config MALI_PLATFORM_PBX
144 depends on ARCH_REALVIEW && REALVIEW_EB_A9MP && MACH_REALVIEW_PBX
145 bool "Realview PBX-A9"
146 config MALI_PLATFORM_THIRDPARTY
147 bool "Third Party Platform"
150 config MALI_PLATFORM_THIRDPARTY_NAME
151 depends on MALI_MIDGARD && MALI_PLATFORM_THIRDPARTY && MALI_EXPERT
152 string "Third party platform name"
154 Enter the name of a third party platform that is supported. The third part configuration
155 file must be in midgard/config/tpip/mali_kbase_config_xxx.c where xxx is the name
160 depends on MALI_MIDGARD && MALI_EXPERT
163 Select this option for increased checking and reporting of errors.
167 depends on MALI_MIDGARD && MALI_EXPERT
170 This can be used to test the driver in a simulated environment
171 whereby the hardware is not physically present. If the hardware is physically
172 present it will not be used. This can be used to test the majority of the
173 driver without needing actual hardware or for software benchmarking.
174 All calls to the simulated hardware will complete immediately as if the hardware
177 config MALI_ERROR_INJECT
178 bool "Error injection"
179 depends on MALI_MIDGARD && MALI_EXPERT && MALI_NO_MALI
182 Enables insertion of errors to test module failure and recovery mechanisms.
184 config MALI_TRACE_TIMELINE
185 bool "Timeline tracing"
186 depends on MALI_MIDGARD && MALI_EXPERT
189 Enables timeline tracing through the kernel tracepoint system.
191 config MALI_SYSTEM_TRACE
192 bool "Enable system event tracing support"
193 depends on MALI_MIDGARD && MALI_EXPERT
196 Choose this option to enable system trace events for each
197 kbase event. This is typically used for debugging but has
198 minimal overhead when not in use. Enable only if you know what
201 config MALI_GPU_TRACEPOINTS
202 bool "Enable GPU tracepoints"
203 depends on MALI_MIDGARD && ANDROID
204 select GPU_TRACEPOINTS
206 Enables GPU tracepoints using Android trace event definitions.
208 source "drivers/gpu/arm/midgard/platform/Kconfig"