MALI: utgard: rockchip: remove code depending on rk_dvfs_module
[firefly-linux-kernel-4.4.55.git] / drivers / gpu / arm / midgard / Kconfig
1 #
2 # (C) COPYRIGHT 2012-2015 ARM Limited. All rights reserved.
3 #
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
7 # of such GNU licence.
8 #
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.
12 #
13 #
14
15
16
17 menuconfig MALI_MIDGARD
18         tristate "Mali Midgard series support"
19         select GPU_TRACEPOINTS if ANDROID
20         default n
21         help
22           Enable this option to build support for a ARM Mali Midgard GPU.
23
24           To compile this driver as a module, choose M here:
25           this will generate a single module, called mali_kbase.
26
27 config MALI_GATOR_SUPPORT
28         bool "Streamline support via Gator"
29         depends on MALI_MIDGARD
30         default n
31         help
32           Adds diagnostic support for use with the ARM Streamline Performance Analyzer.
33           You will need the Gator device driver already loaded before loading this driver when enabling
34           Streamline debug support.
35           This is a legacy interface required by older versions of Streamline.
36
37 config MALI_MIDGARD_DVFS
38         bool "Enable legacy DVFS"
39         depends on MALI_MIDGARD && !MALI_DEVFREQ && !MALI_PLATFORM_DEVICETREE
40         default n
41         help
42           Choose this option to enable legacy DVFS in the Mali Midgard DDK.
43
44 config MALI_MIDGARD_ENABLE_TRACE
45         bool "Enable kbase tracing"
46         depends on MALI_MIDGARD
47         default n
48         help
49           Enables tracing in kbase.  Trace log available through
50           the "mali_trace" debugfs file, when the CONFIG_DEBUG_FS is enabled
51
52 config MALI_DEVFREQ
53         bool "devfreq support for Mali"
54         depends on MALI_MIDGARD && PM_DEVFREQ
55         help
56           Support devfreq for Mali.
57
58           Using the devfreq framework and, by default, the simpleondemand
59           governor, the frequency of Mali will be dynamically selected from the
60           available OPPs.
61
62 config MALI_DMA_FENCE
63         bool "DMA_BUF fence support for Mali (EXPERIMENTAL)"
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.
71
72 # MALI_EXPERT configuration options
73
74 menuconfig MALI_EXPERT
75         depends on MALI_MIDGARD
76         bool "Enable Expert Settings"
77         default n
78         help
79           Enabling this option and modifying the default settings may produce a driver with performance or
80           other limitations.
81
82 config MALI_PRFCNT_SET_SECONDARY
83         bool "Use secondary set of performance counters"
84         depends on MALI_MIDGARD && MALI_EXPERT
85         default n
86         help
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.
94
95 config MALI_DEBUG_SHADER_SPLIT_FS
96         bool "Allow mapping of shader cores via sysfs"
97         depends on MALI_MIDGARD && MALI_EXPERT
98         default n
99         help
100           Select this option to provide a sysfs entry for runtime configuration of shader
101           core affinity masks.
102
103 config MALI_PLATFORM_FAKE
104         bool "Enable fake platform device support"
105         depends on MALI_MIDGARD && MALI_EXPERT
106         default n
107         help
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.
112
113 choice
114         prompt "Platform configuration"
115         depends on MALI_MIDGARD && MALI_EXPERT
116         default MALI_PLATFORM_DEVICETREE
117         help
118           Select the SOC platform that contains a Mali Midgard GPU
119
120 config MALI_PLATFORM_DEVICETREE
121         bool "Device Tree platform"
122         depends on OF
123         help
124           Select this option to use Device Tree with the Mali driver.
125
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.
130
131           Device Tree is the recommended method for the Mali driver platform
132           integration.
133
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"
148 endchoice
149
150 config MALI_PLATFORM_THIRDPARTY_NAME
151         depends on MALI_MIDGARD && MALI_PLATFORM_THIRDPARTY && MALI_EXPERT
152         string "Third party platform name"
153         help
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
156           specified here.
157
158 config MALI_DEBUG
159         bool "Debug build"
160         depends on MALI_MIDGARD && MALI_EXPERT
161         default n
162         help
163           Select this option for increased checking and reporting of errors.
164
165 config MALI_NO_MALI
166         bool "No Mali"
167         depends on MALI_MIDGARD && MALI_EXPERT
168         default n
169         help
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
175           completed the task.
176
177 config MALI_ERROR_INJECT
178         bool "Error injection"
179         depends on MALI_MIDGARD && MALI_EXPERT && MALI_NO_MALI
180         default n
181         help
182           Enables insertion of errors to test module failure and recovery mechanisms.
183
184 config MALI_TRACE_TIMELINE
185         bool "Timeline tracing"
186         depends on MALI_MIDGARD && MALI_EXPERT
187         default n
188         help
189           Enables timeline tracing through the kernel tracepoint system.
190
191 config MALI_SYSTEM_TRACE
192         bool "Enable system event tracing support"
193         depends on MALI_MIDGARD && MALI_EXPERT
194         default n
195         help
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
199           you are doing.
200
201 source "drivers/gpu/arm/midgard/platform/Kconfig"