aboutsummaryrefslogtreecommitdiff
path: root/drivers/misc/mediatek/Kconfig.kernel
blob: bed3667a421813b989c1159889653a20ea8586f5 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
# TODO naming refine
menu "Kernel Configurations"

menu "Tracer Related"
config MTK_SCHED_TRACERS
	bool "MTK Sched Tracers"
	depends on TRACING
	select CONTEXT_SWITCH_TRACER
	default n
	help
	   Trace context swicth, set_scheduler, Interrupt Handler

config MTK_FTRACE_DEFAULT_ENABLE
    bool "enable MTK events by default"
    depends on MTK_SCHED_TRACERS 
    default n
    help
        update ring buffer and enable MTK events by default

config MTK_KERNEL_MARKER
	bool "MTK Kernel Marker API"
	depends on TRACING && KALLSYMS
	default n
	help
	  Mark the user-defined points, such as systrace events in
	  user space, to visualize via systrace html files

config MT65XX_TRACER
	bool "MT65XX Tracer"
	select CONTEXT_SWITCH_TRACER
	select GENERIC_TRACER
	default n

menu "MET"

config MTK_MET
	tristate "MET core driver"
	default n
	help
	  The core module of MTK MET profiling tool

config MTK_MET_PLF
	tristate "MET platform-related driver"
	depends on MTK_MET
	default n
	help
	  The platform module of MTK MET profiling tool

endmenu

endmenu

menu "MTPROF tools"

config MTK_MUTATION
	bool "Support some MTK debug/profiling patches"
	default y

config MTPROF_CPUTIME
	bool "thread cputime profiling"
	depends on SCHEDSTATS

endmenu

config MTPROF_IRQ_DURATION
	bool "mt IRQ/ISR profiling"

config MTK_AEE_FEATURE
	tristate "Enable Android Exception Enhancement"
	default n
	select FIQ_GLUE if !TRUSTONIC_TEE_SUPPORT && !ARM_PSCI
	---help---
	  Enable Android Exception Enhancement

config MTK_AEE_AED
	tristate "Enable AEE Kernel Exception Report Daemon"
	default y

config MTK_AEE_IPANIC
	tristate "Enable AEE Kernel Panic Dump"
	default y

config MTK_AEE_POWERKEY_HANG_DETECT
    bool "powerkey monitor"
    default n

config MTK_AEE_MRDUMP
	tristate "Enable AEE RAMDUMP support"
	default y

config CPUTIME_SUPPORT
	bool "cputime profiling support for functions"
	default n

config CPUTIME_STATS
	tristate "cputime profiling module for functions"
	select CPUTIME_SUPPORT
	default n

config PREEMPT_MONITOR
	bool "mt preempt monitor"
	default n

config ISR_MONITOR
	bool "mt ISR monitor"
	default n

config MT_SCHED_MONITOR
	bool "mt scheduler monitor"
	default n

config MT_CHRDEV_REG
	bool "mt char driver number table"
	default n

config MT_LOCK_DEBUG
	bool "Record lock table and detect some possible deadlock"
	default n

config MT_DEBUG_MUTEXES
	bool "show mutex owner info"
	depends on DEBUG_MUTEXES 
	default n

config PRINTK_PROCESS_INFO 
	bool "Prefix pid/process_name to each kernel log"
	default n
	
config MT_PRINTK_UART_CONSOLE
	bool "MTK printk UART controller"
	default n

config MT_ENG_BUILD
	bool "flag for MTK eng/usr build verification"
	default n

config RAMDISK_OFFSET
	hex "Uboot allocate memory offset for RAMDISK"
	default 0xF00000
	help
	Used to check decompressed kernel overwrite ramdisk.
	(DO NOT MODIFY IT YOURSELF.)

config EARLY_LINUX_PORTING
	bool "Support For Linux Early Porting"
	default n
	help

config MTK_MCI
	bool "Support For Memory coherence"
	default n
	help

config MTK_ETM
	bool "Support For Embedded Trace Macrocell"
	default y
	help

config MTK_MEMCFG
	bool "Support enhanced memory configurations"
	default n
	help

menu "MT load balance and schedule enhancement"
config MT_SCHED
	bool "Enhance CPU affinity in hotplug"	
	default y

config MT_LOAD_BALANCE_ENHANCEMENT
	bool "mt load balance enhancement"
	depends on  SMP
	default y

config MT_LOAD_BALANCE_PROFILER
	bool "mt load balance profiler"
	depends on SCHEDSTATS && SMP
	default n

config MT_RT_SCHED
	bool "mt RT scheduling enhancement for big.LITTLE"
	depends on SCHED_HMP
	default n

config MTK_COMPAT
	bool "mt fast mode switching enhancement"
	depends on COMPAT
	default n

config MT_SCHED_INTEROP
	bool "mtk scheduling interopation enhancement"
	default n

config MTK_SCHED_RQAVG_US
	bool "Enable runqueue staticsic calculation used in user space operation"
	depends on SMP && HIGH_RES_TIMERS
	default n
	help
	  TLP estimation for user space CPUfreq governors

config MTK_SCHED_RQAVG_KS
	bool "Enable runqueue staticsic calculation used in kernel space operation"
	depends on SMP
	default n
	help
	  TLP estimation for kernel space CPUfreq governors, e.g., hotplug

config MT_PRIO_TRACER
	bool "Record priority changes"
	default n
	help
	  Export device node under debugfs/prio_tracer

config MT_SCHED_TRACE
	bool "mt scheduling trace, output mtk schedule trace into FTRACE"
	default n

config MT_SCHED_DEBUG
	bool "mt scheduling log, also output the scheduling log into Kernel log"
	depends on MT_SCHED_TRACE
	default n

config MT_DEBUG_PREEMPT
	bool "debug preempt, output the preempt enable/disable to FTRACE"
	default n

endmenu

menu "MTK Cluster MultiProcessor Scheduler"
config MTK_SCHED_CMP
        bool "Enable CMP scheduler"
        depends on SMP && SCHED_MC
        default n
        help
          CMP Scheduler Enhancement for MTK SoC.
          Attempts to introspectively select tasks to optimize
          energy and performance.
          say no if not sure.

config MTK_SCHED_CMP_TGS
        bool "Enable thread group scheduling"
        depends on MTK_SCHED_CMP
        default n

config MTK_SCHED_CMP_TGS_WAKEUP
        bool "Enable thread group scheduling"
        depends on MTK_SCHED_CMP_TGS
        default n

config MTK_SCHED_CMP_PACK_SMALL_TASK
        bool "Packing small task"
        depends on MTK_SCHED_CMP && MTK_SCHED_CMP_TGS
        default n

config MTK_SCHED_CMP_LAZY_BALANCE
        bool "Enable CMP lazy balance"
        depends on MTK_SCHED_CMP_PACK_SMALL_TASK
        default n

config MTK_SCHED_CMP_POWER_AWARE_CONTROLLER
	bool "(EXPERIMENTAL) Power-aware Scheduler for MP Controller"
	depends on MTK_SCHED_CMP_PACK_SMALL_TASK && MTK_SCHED_CMP_LAZY_BALANCE
	help
		Power-aware scheduler for MP controller and status interface
endmenu

config MTK_CIRQ
	bool "Support For System CIRQ"
	default n
	help

config MTK_CPU_TOPOLOGY
        bool "MTK cpu topology infrastructure"
        depends on ARM_CPU_TOPOLOGY && OF
        default y
        help
          Say N if you want to build up another wheel

config MTK_HIBERNATION
	bool "Support MTK hibernation"
	depends on HIBERNATION && PM_WAKELOCKS
	default y
	help

config MTK_WQ_DEBUG
	bool "mtk workqueue debug"
	default n


config MTK_STORAGE_PID_LOGGER
	bool "support MTK storage pid logger"
	default y
endmenu

menu "MTK Large Memory mode support"
config MTK_LM_MODE
	bool "MTK Large Memory mode"
	select ARM_LPAE
	select ARCH_PHYS_ADDR_T_64BIT
	select ARCH_DMA_ADDR_T_64BIT
	help
	  Large Memory mode support for supporting more than 4GB DRAM access
endmenu

config MTK_TABLET_HARDWARE
	bool "MTK tablet machine name"
	default n
	help
	  MTM tablet machine name 

config GATOR_DRIVER
	tristate "DS-5 profiling tool kernel driver"
	default n
	depends on PROFILING
	depends on HIGH_RES_TIMERS
	depends on LOCAL_TIMERS || !(ARM && SMP)
	depends on PERF_EVENTS
	depends on HW_PERF_EVENTS || !(ARM || ARM64)
	select TRACING
	help
	  kernel driver of DS-5 profiling tool

config MTK_IPV6_TETHER_NDP_MODE
	bool "MTK_IPV6_TETHER_NDP_MODE"
	help
	  is NDP mode or RADVD mode during IPv6 tethering yes: enable NDP
	  mode during IPv6 tethering no: disable enable NDP mode during IPv6
	  tethering

config MTK_EMMC_SUPPORT_OTP
	tristate "MediaTek eMMC Card OTP support"
	depends on MTK_EMMC_SUPPORT
	help
	  support ont time program on EMMC

config MTK_TETHERINGIPV6_SUPPORT
	bool "MTK_TETHERINGIPV6_SUPPORT"
	help
	  support tethering over ipv6

config MTK_LEGACY
	bool "MTK LEGACY driver API support"
	default y
	help
	  This is an option for MTK legacy driver that using old API
	  It will be deprecated after all drivers changed to new structure