]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blame - arch/arm/Kconfig.debug
ARM: initial support for Conexant Digicolor CX92755 SoC
[mirror_ubuntu-artful-kernel.git] / arch / arm / Kconfig.debug
CommitLineData
1da177e4
LT
1menu "Kernel hacking"
2
3source "lib/Kconfig.debug"
4
1fd15b87
RK
5config ARM_PTDUMP
6 bool "Export kernel pagetable layout to userspace via debugfs"
7 depends on DEBUG_KERNEL
8 select DEBUG_FS
9 ---help---
10 Say Y here if you want to show the kernel pagetable layout in a
11 debugfs file. This information is only useful for kernel developers
12 who are working in architecture specific areas of the kernel.
13 It is probably not a good idea to enable this feature in a production
14 kernel.
15 If in doubt, say "N"
16
087aaffc
NP
17config STRICT_DEVMEM
18 bool "Filter access to /dev/mem"
19 depends on MMU
20 ---help---
21 If this option is disabled, you allow userspace (root) access to all
22 of memory, including kernel and userspace memory. Accidental
23 access to this is obviously disastrous, but specific access can
24 be used by people debugging the kernel.
25
26 If this option is switched on, the /dev/mem file only allows
27 userspace access to memory mapped peripherals.
28
29 If in doubt, say Y.
30
adf8b37b 31# RMK wants arm kernels compiled with frame pointers or stack unwinding.
1da177e4
LT
32# If you know what you are doing and are willing to live without stack
33# traces, you can get a slightly smaller kernel by setting this option to
34# n, but then RMK will have to kill you ;).
35config FRAME_POINTER
36 bool
16c79651 37 depends on !THUMB2_KERNEL
0e341af8 38 default y if !ARM_UNWIND || FUNCTION_GRAPH_TRACER
1da177e4
LT
39 help
40 If you say N here, the resulting kernel will be slightly smaller and
adf8b37b
CM
41 faster. However, if neither FRAME_POINTER nor ARM_UNWIND are enabled,
42 when a problem occurs with the kernel, the information that is
43 reported is severely limited.
44
45config ARM_UNWIND
4a50bfe3 46 bool "Enable stack unwinding support (EXPERIMENTAL)"
d6f94fa0 47 depends on AEABI
adf8b37b
CM
48 default y
49 help
50 This option enables stack unwinding support in the kernel
51 using the information automatically generated by the
52 compiler. The resulting kernel image is slightly bigger but
53 the performance is not affected. Currently, this feature
54 only works with EABI compilers. If unsure say Y.
1da177e4 55
09bfafac
RV
56config OLD_MCOUNT
57 bool
58 depends on FUNCTION_TRACER && FRAME_POINTER
59 default y
60
1da177e4
LT
61config DEBUG_USER
62 bool "Verbose user fault messages"
63 help
64 When a user program crashes due to an exception, the kernel can
65 print a brief message explaining what the problem was. This is
66 sometimes helpful for debugging but serves no purpose on a
67 production system. Most people should say N here.
68
69 In addition, you need to pass user_debug=N on the kernel command
70 line to enable this feature. N consists of the sum of:
71
72 1 - undefined instruction events
73 2 - system calls
74 4 - invalid data aborts
75 8 - SIGSEGV faults
76 16 - SIGBUS faults
77
1da177e4
LT
78# These options are only for real kernel hackers who want to get their hands dirty.
79config DEBUG_LL
4f5ef922 80 bool "Kernel low-level debugging functions (read help!)"
1da177e4
LT
81 depends on DEBUG_KERNEL
82 help
35efb606 83 Say Y here to include definitions of printascii, printch, printhex
1da177e4
LT
84 in the kernel. This is helpful if you are debugging code that
85 executes before the console is initialized.
86
4f5ef922
WD
87 Note that selecting this option will limit the kernel to a single
88 UART definition, as specified below. Attempting to boot the kernel
89 image on a different platform *will not work*, so this option should
90 not be enabled for kernels that are intended to be portable.
91
17916b28
WD
92choice
93 prompt "Kernel low-level debugging port"
94 depends on DEBUG_LL
95
d5bd4e8d
OR
96 config DEBUG_ASM9260_UART
97 bool "Kernel low-level debugging via asm9260 UART"
98 depends on MACH_ASM9260
99 help
100 Say Y here if you want the debug print routines to direct
101 their output to an UART or USART port on asm9260 based
102 machines.
103
104 DEBUG_UART_PHYS | DEBUG_UART_VIRT
105
106 0x80000000 | 0xf0000000 | UART0
107 0x80004000 | 0xf0004000 | UART1
108 0x80008000 | 0xf0008000 | UART2
109 0x8000c000 | 0xf000c000 | UART3
110 0x80010000 | 0xf0010000 | UART4
111 0x80014000 | 0xf0014000 | UART5
112 0x80018000 | 0xf0018000 | UART6
113 0x8001c000 | 0xf001c000 | UART7
114 0x80020000 | 0xf0020000 | UART8
115 0x80024000 | 0xf0024000 | UART9
116
13079a73 117 config AT91_DEBUG_LL_DBGU0
5f58c970
AB
118 bool "Kernel low-level debugging on rm9200, 9260/9g20, 9261/9g10, 9rl, 9x5, 9n12"
119 select DEBUG_AT91_UART
42dfd1e1 120 depends on ARCH_AT91
ae57d0c6 121 depends on SOC_AT91RM9200 || SOC_AT91SAM9
13079a73
JCPV
122
123 config AT91_DEBUG_LL_DBGU1
5f58c970
AB
124 bool "Kernel low-level debugging on 9263, 9g45 and sama5d3"
125 select DEBUG_AT91_UART
42dfd1e1 126 depends on ARCH_AT91
ae57d0c6 127 depends on SOC_AT91SAM9 || SOC_SAMA5
13079a73 128
2dc850b6
NF
129 config AT91_DEBUG_LL_DBGU2
130 bool "Kernel low-level debugging on sama5d4"
5f58c970 131 select DEBUG_AT91_UART
42dfd1e1 132 depends on ARCH_AT91
ae57d0c6 133 depends on SOC_SAMA5
2dc850b6 134
f1ac922d
SW
135 config DEBUG_BCM2835
136 bool "Kernel low-level debugging on BCM2835 PL011 UART"
137 depends on ARCH_BCM2835
5c972af4 138 select DEBUG_UART_PL01X
f1ac922d 139
06580275
HM
140 config DEBUG_BCM_5301X
141 bool "Kernel low-level debugging on BCM5301X UART1"
142 depends on ARCH_BCM_5301X
140bd603 143 select DEBUG_UART_8250
06580275 144
753d1243
CD
145 config DEBUG_BCM_KONA_UART
146 bool "Kernel low-level debugging messages via BCM KONA UART"
7aa2077b 147 depends on ARCH_BCM_MOBILE
753d1243
CD
148 select DEBUG_UART_8250
149 help
150 Say Y here if you want kernel low-level debugging support
151 on Broadcom SoC platforms.
152 This low level debug works for Broadcom
153 mobile SoCs in the Kona family of chips (e.g. bcm28155,
154 bcm11351, etc...)
155
b51312be
FF
156 config DEBUG_BCM63XX
157 bool "Kernel low-level debugging on BCM63XX UART"
158 depends on ARCH_BCM_63XX
159 select DEBUG_UART_BCM63XX
160
caad0b41
SH
161 config DEBUG_BERLIN_UART
162 bool "Marvell Berlin SoC Debug UART"
163 depends on ARCH_BERLIN
164 select DEBUG_UART_8250
165 help
166 Say Y here if you want kernel low-level debugging support
167 on Marvell Berlin SoC based platforms.
168
81b43a6e
MC
169 config DEBUG_BRCMSTB_UART
170 bool "Use BRCMSTB UART for low-level debug"
171 depends on ARCH_BRCMSTB
172 select DEBUG_UART_8250
173 help
174 Say Y here if you want the debug print routines to direct
175 their output to the first serial port on these devices.
176
177 If you have a Broadcom STB chip and would like early print
178 messages to appear over the UART, select this option.
179
164acf96
SB
180 config DEBUG_CLPS711X_UART1
181 bool "Kernel low-level debugging messages via UART1"
182 depends on ARCH_CLPS711X
183 help
184 Say Y here if you want the debug print routines to direct
185 their output to the first serial port on these devices.
17916b28
WD
186
187 config DEBUG_CLPS711X_UART2
188 bool "Kernel low-level debugging messages via UART2"
189 depends on ARCH_CLPS711X
190 help
191 Say Y here if you want the debug print routines to direct
192 their output to the second serial port on these devices.
17916b28 193
29c9b7be
AB
194 config DEBUG_CNS3XXX
195 bool "Kernel Kernel low-level debugging on Cavium Networks CNS3xxx"
196 depends on ARCH_CNS3XXX
b125170a 197 select DEBUG_UART_8250
29c9b7be
AB
198 help
199 Say Y here if you want the debug print routines to direct
200 their output to the CNS3xxx UART0.
201
477099f1
UKK
202 config DEBUG_DAVINCI_DA8XX_UART1
203 bool "Kernel low-level debugging on DaVinci DA8XX using UART1"
204 depends on ARCH_DAVINCI_DA8XX
97bd1a48 205 select DEBUG_UART_8250
477099f1
UKK
206 help
207 Say Y here if you want the debug print routines to direct
208 their output to UART1 serial port on DaVinci DA8XX devices.
209
210 config DEBUG_DAVINCI_DA8XX_UART2
211 bool "Kernel low-level debugging on DaVinci DA8XX using UART2"
212 depends on ARCH_DAVINCI_DA8XX
97bd1a48 213 select DEBUG_UART_8250
477099f1
UKK
214 help
215 Say Y here if you want the debug print routines to direct
216 their output to UART2 serial port on DaVinci DA8XX devices.
217
218 config DEBUG_DAVINCI_DMx_UART0
219 bool "Kernel low-level debugging on DaVinci DMx using UART0"
220 depends on ARCH_DAVINCI_DMx
97bd1a48 221 select DEBUG_UART_8250
477099f1
UKK
222 help
223 Say Y here if you want the debug print routines to direct
224 their output to UART0 serial port on DaVinci DMx devices.
225
aaf5e0be
NB
226 config DEBUG_ZYNQ_UART0
227 bool "Kernel low-level debugging on Xilinx Zynq using UART0"
228 depends on ARCH_ZYNQ
229 help
230 Say Y here if you want the debug print routines to direct
231 their output to UART0 on the Zynq platform.
232
233 config DEBUG_ZYNQ_UART1
234 bool "Kernel low-level debugging on Xilinx Zynq using UART1"
235 depends on ARCH_ZYNQ
236 help
237 Say Y here if you want the debug print routines to direct
238 their output to UART1 on the Zynq platform.
239
240 If you have a ZC702 board and want early boot messages to
241 appear on the USB serial adaptor, select this option.
242
e76f4750
RK
243 config DEBUG_DC21285_PORT
244 bool "Kernel low-level debugging messages via footbridge serial port"
245 depends on FOOTBRIDGE
246 help
247 Say Y here if you want the debug print routines to direct
248 their output to the serial port in the DC21285 (Footbridge).
249
250 config DEBUG_FOOTBRIDGE_COM1
251 bool "Kernel low-level debugging messages via footbridge 8250 at PCI COM1"
252 depends on FOOTBRIDGE
253 help
254 Say Y here if you want the debug print routines to direct
255 their output to the 8250 at PCI COM1.
256
8d258beb
HZ
257 config DEBUG_HI3620_UART
258 bool "Hisilicon HI3620 Debug UART"
259 depends on ARCH_HI3xxx
260 select DEBUG_UART_PL01X
261 help
262 Say Y here if you want kernel low-level debugging support
263 on HI3620 UART.
264
265 config DEBUG_HI3716_UART
266 bool "Hisilicon Hi3716 Debug UART"
267 depends on ARCH_HI3xxx
268 select DEBUG_UART_PL01X
269 help
270 Say Y here if you want kernel low-level debugging support
271 on HI3716 UART.
272
220e6cf7
RH
273 config DEBUG_HIGHBANK_UART
274 bool "Kernel low-level debugging messages via Highbank UART"
275 depends on ARCH_HIGHBANK
5c972af4 276 select DEBUG_UART_PL01X
220e6cf7
RH
277 help
278 Say Y here if you want the debug print routines to direct
279 their output to the UART on Highbank based devices.
280
27dafaa8
WL
281 config DEBUG_HIP01_UART
282 bool "Hisilicon Hip01 Debug UART"
283 depends on ARCH_HIP01
284 select DEBUG_UART_8250
285 help
286 Say Y here if you want kernel low-level debugging support
287 on HIP01 UART.
288
c9a1df48
HZ
289 config DEBUG_HIP04_UART
290 bool "Hisilicon HiP04 Debug UART"
291 depends on ARCH_HIP04
292 select DEBUG_UART_8250
293 help
294 Say Y here if you want kernel low-level debugging support
295 on HIP04 UART.
296
37bdaf82
OJ
297 config DEBUG_HIX5HD2_UART
298 bool "Hisilicon Hix5hd2 Debug UART"
299 depends on ARCH_HIX5HD2
5c972af4 300 select DEBUG_UART_PL01X
220e6cf7 301 help
37bdaf82
OJ
302 Say Y here if you want kernel low-level debugging support
303 on Hix5hd2 UART.
220e6cf7 304
f350b861
SG
305 config DEBUG_IMX1_UART
306 bool "i.MX1 Debug UART"
307 depends on SOC_IMX1
308 help
309 Say Y here if you want kernel low-level debugging support
310 on i.MX1.
311
312 config DEBUG_IMX23_UART
313 bool "i.MX23 Debug UART"
314 depends on SOC_IMX23
5c972af4 315 select DEBUG_UART_PL01X
f350b861
SG
316 help
317 Say Y here if you want kernel low-level debugging support
318 on i.MX23.
319
320 config DEBUG_IMX25_UART
321 bool "i.MX25 Debug UART"
322 depends on SOC_IMX25
323 help
324 Say Y here if you want kernel low-level debugging support
325 on i.MX25.
326
327 config DEBUG_IMX21_IMX27_UART
328 bool "i.MX21 and i.MX27 Debug UART"
329 depends on SOC_IMX21 || SOC_IMX27
330 help
331 Say Y here if you want kernel low-level debugging support
332 on i.MX21 or i.MX27.
333
334 config DEBUG_IMX28_UART
335 bool "i.MX28 Debug UART"
336 depends on SOC_IMX28
5c972af4 337 select DEBUG_UART_PL01X
f350b861
SG
338 help
339 Say Y here if you want kernel low-level debugging support
340 on i.MX28.
341
4ad625d4
SG
342 config DEBUG_IMX31_UART
343 bool "i.MX31 Debug UART"
344 depends on SOC_IMX31
f350b861
SG
345 help
346 Say Y here if you want kernel low-level debugging support
4ad625d4
SG
347 on i.MX31.
348
349 config DEBUG_IMX35_UART
350 bool "i.MX35 Debug UART"
351 depends on SOC_IMX35
352 help
353 Say Y here if you want kernel low-level debugging support
354 on i.MX35.
f350b861 355
ad364a70
GU
356 config DEBUG_IMX50_UART
357 bool "i.MX50 Debug UART"
358 depends on SOC_IMX50
359 help
360 Say Y here if you want kernel low-level debugging support
361 on i.MX50.
362
f350b861
SG
363 config DEBUG_IMX51_UART
364 bool "i.MX51 Debug UART"
365 depends on SOC_IMX51
366 help
367 Say Y here if you want kernel low-level debugging support
368 on i.MX51.
369
7356420c
FE
370 config DEBUG_IMX53_UART
371 bool "i.MX53 Debug UART"
372 depends on SOC_IMX53
f350b861
SG
373 help
374 Say Y here if you want kernel low-level debugging support
7356420c 375 on i.MX53.
f350b861 376
49c9e60e 377 config DEBUG_IMX6Q_UART
3c03a2fe 378 bool "i.MX6Q/DL Debug UART"
785d7fab
DB
379 depends on SOC_IMX6Q
380 help
381 Say Y here if you want kernel low-level debugging support
3c03a2fe 382 on i.MX6Q/DL.
bac89d75 383
34e8a16b
SG
384 config DEBUG_IMX6SL_UART
385 bool "i.MX6SL Debug UART"
386 depends on SOC_IMX6SL
387 help
388 Say Y here if you want kernel low-level debugging support
389 on i.MX6SL.
390
74368e81
SG
391 config DEBUG_IMX6SX_UART
392 bool "i.MX6SX Debug UART"
393 depends on SOC_IMX6SX
394 help
395 Say Y here if you want kernel low-level debugging support
396 on i.MX6SX.
397
828989ad
SS
398 config DEBUG_KEYSTONE_UART0
399 bool "Kernel low-level debugging on KEYSTONE2 using UART0"
400 depends on ARCH_KEYSTONE
f2acf003 401 select DEBUG_UART_8250
828989ad
SS
402 help
403 Say Y here if you want the debug print routines to direct
404 their output to UART0 serial port on KEYSTONE2 devices.
405
406 config DEBUG_KEYSTONE_UART1
407 bool "Kernel low-level debugging on KEYSTONE2 using UART1"
408 depends on ARCH_KEYSTONE
f2acf003 409 select DEBUG_UART_8250
828989ad
SS
410 help
411 Say Y here if you want the debug print routines to direct
412 their output to UART1 serial port on KEYSTONE2 devices.
413
d8a00916
CC
414 config DEBUG_MESON_UARTAO
415 bool "Kernel low-level debugging via Meson6 UARTAO"
416 depends on ARCH_MESON
417 help
418 Say Y here if you want kernel low-lever debugging support
419 on Amlogic Meson6 based platforms on the UARTAO.
420
fa4cd2a8
HZ
421 config DEBUG_MMP_UART2
422 bool "Kernel low-level debugging message via MMP UART2"
423 depends on ARCH_MMP
4a003647 424 select DEBUG_UART_8250
fa4cd2a8
HZ
425 help
426 Say Y here if you want kernel low-level debugging support
427 on MMP UART2.
428
429 config DEBUG_MMP_UART3
430 bool "Kernel low-level debugging message via MMP UART3"
431 depends on ARCH_MMP
4a003647 432 select DEBUG_UART_8250
fa4cd2a8
HZ
433 help
434 Say Y here if you want kernel low-level debugging support
435 on MMP UART3.
436
7098cff2
II
437 config DEBUG_MSM_UART
438 bool "Kernel low-level debugging messages via MSM UART"
439 depends on ARCH_MSM
952aeeb2
WD
440 help
441 Say Y here if you want the debug print routines to direct
7098cff2 442 their output to the serial port on MSM devices.
952aeeb2 443
30cd6552 444 ARCH DEBUG_UART_PHYS DEBUG_UART_VIRT #
7098cff2
II
445 MSM7X00A, QSD8X50 0xa9a00000 0xe1000000 UART1
446 MSM7X00A, QSD8X50 0xa9b00000 0xe1000000 UART2
447 MSM7X00A, QSD8X50 0xa9c00000 0xe1000000 UART3
952aeeb2 448
7098cff2
II
449 MSM7X30 0xaca00000 0xe1000000 UART1
450 MSM7X30 0xacb00000 0xe1000000 UART2
451 MSM7X30 0xacc00000 0xe1000000 UART3
952aeeb2 452
7098cff2
II
453 Please adjust DEBUG_UART_PHYS and DEBUG_UART_BASE configuration
454 options based on your needs.
952aeeb2 455
7098cff2
II
456 config DEBUG_QCOM_UARTDM
457 bool "Kernel low-level debugging messages via QCOM UARTDM"
458 depends on ARCH_QCOM
e76f4750
RK
459 help
460 Say Y here if you want the debug print routines to direct
7098cff2 461 their output to the serial port on Qualcomm devices.
952aeeb2 462
30cd6552
SB
463 ARCH DEBUG_UART_PHYS DEBUG_UART_VIRT
464 APQ8064 0x16640000 0xf0040000
2f528dd3 465 APQ8084 0xf995e000 0xfa75e000
7098cff2
II
466 MSM8X60 0x19c40000 0xf0040000
467 MSM8960 0x16440000 0xf0040000
468 MSM8974 0xf991e000 0xfa71e000
469
470 Please adjust DEBUG_UART_PHYS and DEBUG_UART_BASE configuration
471 options based on your needs.
3c8828f6 472
d91125dd
MR
473 config DEBUG_MVEBU_UART0
474 bool "Kernel low-level debugging messages via MVEBU UART0 (old bootloaders)"
bfd5af99 475 depends on ARCH_MVEBU
4a003647 476 select DEBUG_UART_8250
bfd5af99
RH
477 help
478 Say Y here if you want kernel low-level debugging support
d91125dd 479 on MVEBU based platforms on UART0.
bfd5af99 480
c2804cd6
TP
481 This option should be used with the old bootloaders
482 that left the internal registers mapped at
483 0xd0000000. As of today, this is the case on
484 platforms such as the Globalscale Mirabox or the
485 Plathome OpenBlocks AX3, when using the original
486 bootloader.
487
488 If the wrong DEBUG_MVEBU_UART* option is selected,
489 when u-boot hands over to the kernel, the system
490 silently crashes, with no serial output at all.
491
d91125dd
MR
492 config DEBUG_MVEBU_UART0_ALTERNATE
493 bool "Kernel low-level debugging messages via MVEBU UART0 (new bootloaders)"
c2804cd6 494 depends on ARCH_MVEBU
4a003647 495 select DEBUG_UART_8250
c2804cd6
TP
496 help
497 Say Y here if you want kernel low-level debugging support
d91125dd 498 on MVEBU based platforms on UART0.
c2804cd6
TP
499
500 This option should be used with the new bootloaders
501 that remap the internal registers at 0xf1000000.
502
503 If the wrong DEBUG_MVEBU_UART* option is selected,
504 when u-boot hands over to the kernel, the system
505 silently crashes, with no serial output at all.
506
bd920490
MR
507 config DEBUG_MVEBU_UART1_ALTERNATE
508 bool "Kernel low-level debugging messages via MVEBU UART1 (new bootloaders)"
509 depends on ARCH_MVEBU
510 select DEBUG_UART_8250
511 help
512 Say Y here if you want kernel low-level debugging support
513 on MVEBU based platforms on UART1.
514
515 This option should be used with the new bootloaders
516 that remap the internal registers at 0xf1000000.
517
518 If the wrong DEBUG_MVEBU_UART* option is selected,
519 when u-boot hands over to the kernel, the system
520 silently crashes, with no serial output at all.
521
c7c3eac6
SG
522 config DEBUG_VF_UART
523 bool "Vybrid UART"
524 depends on SOC_VF610
525 help
526 Say Y here if you want kernel low-level debugging support
527 on Vybrid based platforms.
528
266c3479
LW
529 config DEBUG_NOMADIK_UART
530 bool "Kernel low-level debugging messages via NOMADIK UART"
531 depends on ARCH_NOMADIK
5c972af4 532 select DEBUG_UART_PL01X
266c3479
LW
533 help
534 Say Y here if you want kernel low-level debugging support
535 on NOMADIK based platforms.
536
9851ca57
DT
537 config DEBUG_NSPIRE_CLASSIC_UART
538 bool "Kernel low-level debugging via TI-NSPIRE 8250 UART"
539 depends on ARCH_NSPIRE
4a003647 540 select DEBUG_UART_8250
9851ca57
DT
541 help
542 Say Y here if you want kernel low-level debugging support
543 on TI-NSPIRE classic models.
544
545 config DEBUG_NSPIRE_CX_UART
546 bool "Kernel low-level debugging via TI-NSPIRE PL011 UART"
547 depends on ARCH_NSPIRE
5c972af4 548 select DEBUG_UART_PL01X
9851ca57
DT
549 help
550 Say Y here if you want kernel low-level debugging support
551 on TI-NSPIRE CX models.
552
cce278d2
RK
553 config DEBUG_OMAP2UART1
554 bool "OMAP2/3/4 UART1 (omap2/3 sdp boards and some omap3 boards)"
808b7e07 555 depends on ARCH_OMAP2PLUS
cce278d2 556 select DEBUG_OMAP2PLUS_UART
808b7e07 557 help
cce278d2
RK
558 This covers at least h4, 2430sdp, 3430sdp, 3630sdp,
559 omap3 torpedo and 3530 lv som.
560
561 config DEBUG_OMAP2UART2
562 bool "Kernel low-level debugging messages via OMAP2/3/4 UART2"
563 depends on ARCH_OMAP2PLUS
564 select DEBUG_OMAP2PLUS_UART
565
566 config DEBUG_OMAP2UART3
567 bool "Kernel low-level debugging messages via OMAP2 UART3 (n8x0)"
568 depends on ARCH_OMAP2PLUS
569 select DEBUG_OMAP2PLUS_UART
570
571 config DEBUG_OMAP3UART3
572 bool "Kernel low-level debugging messages via OMAP3 UART3 (most omap3 boards)"
573 depends on ARCH_OMAP2PLUS
574 select DEBUG_OMAP2PLUS_UART
575 help
576 This covers at least cm_t3x, beagle, crane, devkit8000,
577 igep00x0, ldp, n900, n9(50), pandora, overo, touchbook,
578 and 3517evm.
579
580 config DEBUG_OMAP4UART3
581 bool "Kernel low-level debugging messages via OMAP4/5 UART3 (omap4 blaze, panda, omap5 sevm)"
582 depends on ARCH_OMAP2PLUS
583 select DEBUG_OMAP2PLUS_UART
584
585 config DEBUG_OMAP3UART4
586 bool "Kernel low-level debugging messages via OMAP36XX UART4"
587 depends on ARCH_OMAP2PLUS
588 select DEBUG_OMAP2PLUS_UART
589
590 config DEBUG_OMAP4UART4
591 bool "Kernel low-level debugging messages via OMAP4/5 UART4"
592 depends on ARCH_OMAP2PLUS
593 select DEBUG_OMAP2PLUS_UART
594
595 config DEBUG_TI81XXUART1
596 bool "Kernel low-level debugging messages via TI81XX UART1 (ti8148evm)"
597 depends on ARCH_OMAP2PLUS
598 select DEBUG_OMAP2PLUS_UART
599
600 config DEBUG_TI81XXUART2
601 bool "Kernel low-level debugging messages via TI81XX UART2"
602 depends on ARCH_OMAP2PLUS
603 select DEBUG_OMAP2PLUS_UART
604
605 config DEBUG_TI81XXUART3
606 bool "Kernel low-level debugging messages via TI81XX UART3 (ti8168evm)"
607 depends on ARCH_OMAP2PLUS
608 select DEBUG_OMAP2PLUS_UART
609
610 config DEBUG_AM33XXUART1
611 bool "Kernel low-level debugging messages via AM33XX UART1"
612 depends on ARCH_OMAP2PLUS
613 select DEBUG_OMAP2PLUS_UART
614
615 config DEBUG_ZOOM_UART
616 bool "Kernel low-level debugging messages via Zoom2/3 UART"
617 depends on ARCH_OMAP2PLUS
618 select DEBUG_OMAP2PLUS_UART
808b7e07 619
59bba2a9
RH
620 config DEBUG_PICOXCELL_UART
621 depends on ARCH_PICOXCELL
622 bool "Use PicoXcell UART for low-level debug"
0b4cccbe 623 select DEBUG_UART_8250
59bba2a9
RH
624 help
625 Say Y here if you want kernel low-level debugging support
626 on PicoXcell based platforms.
627
0a43cd3b
HZ
628 config DEBUG_PXA_UART1
629 depends on ARCH_PXA
630 bool "Use PXA UART1 for low-level debug"
4a003647 631 select DEBUG_UART_8250
0a43cd3b
HZ
632 help
633 Say Y here if you want kernel low-level debugging support
634 on PXA UART1.
635
1285b8f8
WD
636 config DEBUG_REALVIEW_STD_PORT
637 bool "RealView Default UART"
638 depends on ARCH_REALVIEW
5c972af4 639 select DEBUG_UART_PL01X
1285b8f8
WD
640 help
641 Say Y here if you want the debug print routines to direct
642 their output to the serial port on RealView EB, PB11MP, PBA8
643 and PBX platforms.
644
645 config DEBUG_REALVIEW_PB1176_PORT
646 bool "RealView PB1176 UART"
647 depends on MACH_REALVIEW_PB1176
5c972af4 648 select DEBUG_UART_PL01X
1285b8f8
WD
649 help
650 Say Y here if you want the debug print routines to direct
651 their output to the standard serial port on the RealView
652 PB1176 platform.
653
cce278d2
RK
654 config DEBUG_RK29_UART0
655 bool "Kernel low-level debugging messages via Rockchip RK29 UART0"
656 depends on ARCH_ROCKCHIP
4a003647 657 select DEBUG_UART_8250
cce278d2
RK
658 help
659 Say Y here if you want kernel low-level debugging support
660 on Rockchip based platforms.
661
662 config DEBUG_RK29_UART1
663 bool "Kernel low-level debugging messages via Rockchip RK29 UART1"
664 depends on ARCH_ROCKCHIP
4a003647 665 select DEBUG_UART_8250
cce278d2
RK
666 help
667 Say Y here if you want kernel low-level debugging support
668 on Rockchip based platforms.
669
670 config DEBUG_RK29_UART2
671 bool "Kernel low-level debugging messages via Rockchip RK29 UART2"
672 depends on ARCH_ROCKCHIP
4a003647 673 select DEBUG_UART_8250
cce278d2
RK
674 help
675 Say Y here if you want kernel low-level debugging support
676 on Rockchip based platforms.
677
678 config DEBUG_RK3X_UART0
aa9c4f74 679 bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART0"
cce278d2 680 depends on ARCH_ROCKCHIP
4a003647 681 select DEBUG_UART_8250
cce278d2
RK
682 help
683 Say Y here if you want kernel low-level debugging support
684 on Rockchip based platforms.
685
686 config DEBUG_RK3X_UART1
aa9c4f74 687 bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART1"
38bd6892 688 depends on ARCH_ROCKCHIP
4a003647 689 select DEBUG_UART_8250
cce278d2
RK
690 help
691 Say Y here if you want kernel low-level debugging support
692 on Rockchip based platforms.
693
694 config DEBUG_RK3X_UART2
aa9c4f74 695 bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART2"
cce278d2 696 depends on ARCH_ROCKCHIP
4a003647 697 select DEBUG_UART_8250
cce278d2
RK
698 help
699 Say Y here if you want kernel low-level debugging support
700 on Rockchip based platforms.
701
702 config DEBUG_RK3X_UART3
aa9c4f74 703 bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART3"
cce278d2 704 depends on ARCH_ROCKCHIP
4a003647 705 select DEBUG_UART_8250
38bd6892
HS
706 help
707 Say Y here if you want kernel low-level debugging support
708 on Rockchip based platforms.
709
efd02ee9
HS
710 config DEBUG_RK32_UART2
711 bool "Kernel low-level debugging messages via Rockchip RK32 UART2"
712 depends on ARCH_ROCKCHIP
713 select DEBUG_UART_8250
714 help
715 Say Y here if you want kernel low-level debugging support
716 on Rockchip RK32xx based platforms.
717
7a2071c5
GU
718 config DEBUG_R7S72100_SCIF2
719 bool "Kernel low-level debugging messages via SCIF2 on R7S72100"
720 depends on ARCH_R7S72100
721 help
722 Say Y here if you want kernel low-level debugging support
723 via SCIF2 on Renesas RZ/A1H (R7S72100).
724
725 config DEBUG_RCAR_GEN1_SCIF0
726 bool "Kernel low-level debugging messages via SCIF0 on R8A7778"
727 depends on ARCH_R8A7778
728 help
729 Say Y here if you want kernel low-level debugging support
730 via SCIF0 on Renesas R-Car M1A (R8A7778).
731
732 config DEBUG_RCAR_GEN1_SCIF2
733 bool "Kernel low-level debugging messages via SCIF2 on R8A7779"
734 depends on ARCH_R8A7779
735 help
736 Say Y here if you want kernel low-level debugging support
737 via SCIF2 on Renesas R-Car H1 (R8A7779).
738
739 config DEBUG_RCAR_GEN2_SCIF0
740 bool "Kernel low-level debugging messages via SCIF0 on R8A7790/R8A7791/R8A7793)"
741 depends on ARCH_R8A7790 || ARCH_R8A7791 || ARCH_R8A7793
742 help
743 Say Y here if you want kernel low-level debugging support
744 via SCIF0 on Renesas R-Car H2 (R8A7790), M2-W (R8A7791), or
745 M2-N (R8A7793).
746
747 config DEBUG_RCAR_GEN2_SCIF2
748 bool "Kernel low-level debugging messages via SCIF2 on R8A7794"
749 depends on ARCH_R8A7794
750 help
751 Say Y here if you want kernel low-level debugging support
752 via SCIF2 on Renesas R-Car E2 (R8A7794).
753
754 config DEBUG_RMOBILE_SCIFA0
755 bool "Kernel low-level debugging messages via SCIFA0 on R8A73A4/SH7372"
756 depends on ARCH_R8A73A4 || ARCH_SH7372
757 help
758 Say Y here if you want kernel low-level debugging support
759 via SCIFA0 on Renesas R-Mobile APE6 (R8A73A4) or SH-Mobile
760 AP4 (SH7372).
761
762 config DEBUG_RMOBILE_SCIFA1
763 bool "Kernel low-level debugging messages via SCIFA1 on R8A7740"
764 depends on ARCH_R8A7740
765 help
766 Say Y here if you want kernel low-level debugging support
767 via SCIFA1 on Renesas R-Mobile A1 (R8A7740).
768
769 config DEBUG_RMOBILE_SCIFA4
770 bool "Kernel low-level debugging messages via SCIFA4 on SH73A0"
771 depends on ARCH_SH73A0
772 help
773 Say Y here if you want kernel low-level debugging support
774 via SCIFA4 on Renesas SH-Mobile AG5 (SH73A0).
775
e76f4750
RK
776 config DEBUG_S3C_UART0
777 depends on PLAT_SAMSUNG
a2e40710 778 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
1899de28 779 select DEBUG_S3C24XX_UART if ARCH_S3C24XX
7bab7d9e 780 select DEBUG_S5PV210_UART if ARCH_S5PV210
5cc8a016 781 bool "Use Samsung S3C UART 0 for low-level debug"
650e3f0d
SB
782 help
783 Say Y here if you want the debug print routines to direct
e76f4750
RK
784 their output to UART 0. The port must have been initialised
785 by the boot-loader before use.
650e3f0d 786
e76f4750
RK
787 config DEBUG_S3C_UART1
788 depends on PLAT_SAMSUNG
a2e40710 789 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
1899de28 790 select DEBUG_S3C24XX_UART if ARCH_S3C24XX
7bab7d9e 791 select DEBUG_S5PV210_UART if ARCH_S5PV210
5cc8a016 792 bool "Use Samsung S3C UART 1 for low-level debug"
650e3f0d
SB
793 help
794 Say Y here if you want the debug print routines to direct
e76f4750
RK
795 their output to UART 1. The port must have been initialised
796 by the boot-loader before use.
650e3f0d 797
e76f4750
RK
798 config DEBUG_S3C_UART2
799 depends on PLAT_SAMSUNG
a2e40710 800 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
1899de28 801 select DEBUG_S3C24XX_UART if ARCH_S3C24XX
7bab7d9e 802 select DEBUG_S5PV210_UART if ARCH_S5PV210
5cc8a016 803 bool "Use Samsung S3C UART 2 for low-level debug"
650e3f0d
SB
804 help
805 Say Y here if you want the debug print routines to direct
e76f4750
RK
806 their output to UART 2. The port must have been initialised
807 by the boot-loader before use.
650e3f0d 808
5fa23dde 809 config DEBUG_S3C_UART3
7bab7d9e
TF
810 depends on PLAT_SAMSUNG && (ARCH_EXYNOS || ARCH_S5PV210)
811 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
812 select DEBUG_S5PV210_UART if ARCH_S5PV210
5cc8a016 813 bool "Use Samsung S3C UART 3 for low-level debug"
5fa23dde
OJ
814 help
815 Say Y here if you want the debug print routines to direct
816 their output to UART 3. The port must have been initialised
817 by the boot-loader before use.
818
daf67dfc
HS
819 config DEBUG_S3C2410_UART0
820 depends on ARCH_S3C24XX
821 select DEBUG_S3C2410_UART
822 bool "Use S3C2410/S3C2412 UART 0 for low-level debug"
823 help
824 Say Y here if you want the debug print routines to direct
825 their output to UART 0. The port must have been initialised
826 by the boot-loader before use.
827
828 config DEBUG_S3C2410_UART1
829 depends on ARCH_S3C24XX
830 select DEBUG_S3C2410_UART
831 bool "Use S3C2410/S3C2412 UART 1 for low-level debug"
832 help
833 Say Y here if you want the debug print routines to direct
834 their output to UART 1. The port must have been initialised
835 by the boot-loader before use.
836
837 config DEBUG_S3C2410_UART2
838 depends on ARCH_S3C24XX
839 select DEBUG_S3C2410_UART
840 bool "Use S3C2410/S3C2412 UART 2 for low-level debug"
841 help
842 Say Y here if you want the debug print routines to direct
843 their output to UART 2. The port must have been initialised
844 by the boot-loader before use.
845
e6131fa3
DES
846 config DEBUG_SA1100
847 depends on ARCH_SA1100
848 bool "Use SA1100 UARTs for low-level debug"
849 help
850 Say Y here if you want kernel low-level debugging support
851 on SA-11x0 UART ports. The kernel will check for the first
852 enabled UART in a sequence 3-1-2.
853
6111bf7c
RH
854 config DEBUG_SOCFPGA_UART
855 depends on ARCH_SOCFPGA
856 bool "Use SOCFPGA UART for low-level debug"
0b4cccbe 857 select DEBUG_UART_8250
6111bf7c
RH
858 help
859 Say Y here if you want kernel low-level debugging support
860 on SOCFPGA based platforms.
861
d4da889a
CYT
862 config DEBUG_SUN9I_UART0
863 bool "Kernel low-level debugging messages via sun9i UART0"
864 depends on MACH_SUN9I
865 select DEBUG_UART_8250
866 help
867 Say Y here if you want kernel low-level debugging support
868 on Allwinner A80 based platforms on the UART0.
869
aa25115a
SR
870 config DEBUG_SUNXI_UART0
871 bool "Kernel low-level debugging messages via sunXi UART0"
872 depends on ARCH_SUNXI
4a003647 873 select DEBUG_UART_8250
aa25115a
SR
874 help
875 Say Y here if you want kernel low-level debugging support
876 on Allwinner A1X based platforms on the UART0.
877
cb84fa18
MR
878 config DEBUG_SUNXI_UART1
879 bool "Kernel low-level debugging messages via sunXi UART1"
880 depends on ARCH_SUNXI
4a003647 881 select DEBUG_UART_8250
cb84fa18
MR
882 help
883 Say Y here if you want kernel low-level debugging support
884 on Allwinner A1X based platforms on the UART1.
885
c4718543
CYT
886 config DEBUG_SUNXI_R_UART
887 bool "Kernel low-level debugging messages via sunXi R_UART"
888 depends on MACH_SUN6I || MACH_SUN8I
889 select DEBUG_UART_8250
890 help
891 Say Y here if you want kernel low-level debugging support
892 on Allwinner A31/A23 based platforms on the R_UART.
893
cce278d2
RK
894 config TEGRA_DEBUG_UART_AUTO_ODMDATA
895 bool "Kernel low-level debugging messages via Tegra UART via ODMDATA"
46067803 896 depends on ARCH_TEGRA
cce278d2
RK
897 select DEBUG_TEGRA_UART
898 help
899 Automatically determines which UART to use for low-level
900 debug based on the ODMDATA value. This value is part of
901 the BCT, and is written to the boot memory device using
902 nvflash, or other flashing tool. When bits 19:18 are 3,
903 then bits 17:15 indicate which UART to use; 0/1/2/3/4
904 are UART A/B/C/D/E.
905
906 config TEGRA_DEBUG_UARTA
907 bool "Kernel low-level debugging messages via Tegra UART A"
908 depends on ARCH_TEGRA
909 select DEBUG_TEGRA_UART
910 help
911 Say Y here if you want kernel low-level debugging support
912 on Tegra based platforms.
913
914 config TEGRA_DEBUG_UARTB
915 bool "Kernel low-level debugging messages via Tegra UART B"
916 depends on ARCH_TEGRA
917 select DEBUG_TEGRA_UART
918 help
919 Say Y here if you want kernel low-level debugging support
920 on Tegra based platforms.
921
922 config TEGRA_DEBUG_UARTC
923 bool "Kernel low-level debugging messages via Tegra UART C"
924 depends on ARCH_TEGRA
925 select DEBUG_TEGRA_UART
926 help
927 Say Y here if you want kernel low-level debugging support
928 on Tegra based platforms.
929
930 config TEGRA_DEBUG_UARTD
931 bool "Kernel low-level debugging messages via Tegra UART D"
932 depends on ARCH_TEGRA
933 select DEBUG_TEGRA_UART
934 help
935 Say Y here if you want kernel low-level debugging support
936 on Tegra based platforms.
937
938 config TEGRA_DEBUG_UARTE
939 bool "Kernel low-level debugging messages via Tegra UART E"
940 depends on ARCH_TEGRA
941 select DEBUG_TEGRA_UART
46067803
SW
942 help
943 Say Y here if you want kernel low-level debugging support
944 on Tegra based platforms.
945
7f46a107
BS
946 config DEBUG_SIRFPRIMA2_UART1
947 bool "Kernel low-level debugging messages via SiRFprimaII UART1"
948 depends on ARCH_PRIMA2
01ea63d9 949 select DEBUG_SIRFSOC_UART
7f46a107
BS
950 help
951 Say Y here if you want the debug print routines to direct
952 their output to the uart1 port on SiRFprimaII devices.
953
01ea63d9
GZ
954 config DEBUG_SIRFATLAS7_UART0
955 bool "Kernel low-level debugging messages via SiRFatlas7 UART0"
956 depends on ARCH_ATLAS7
957 select DEBUG_SIRFSOC_UART
7f46a107
BS
958 help
959 Say Y here if you want the debug print routines to direct
01ea63d9
GZ
960 their output to the uart0 port on SiRFATLAS7 devices.The uart0
961 is used on SiRFATLAS7 as a extra debug port.sometimes an extra
962 debug port can be very useful.
963
964 config DEBUG_SIRFATLAS7_UART1
965 bool "Kernel low-level debugging messages via SiRFatlas7 UART1"
966 depends on ARCH_ATLAS7
967 select DEBUG_SIRFSOC_UART
968 help
969 Say Y here if you want the debug print routines to direct
970 their output to the uart1 port on SiRFATLAS7 devices.
7f46a107 971
cce278d2
RK
972 config STIH41X_DEBUG_ASC2
973 bool "Use StiH415/416 ASC2 UART for low-level debug"
974 depends on ARCH_STI
975 select DEBUG_STI_UART
976 help
977 Say Y here if you want kernel low-level debugging support
978 on STiH415/416 based platforms like b2000, which has
979 default UART wired up to ASC2.
980
981 If unsure, say N.
982
983 config STIH41X_DEBUG_SBC_ASC1
984 bool "Use StiH415/416 SBC ASC1 UART for low-level debug"
5562b800 985 depends on ARCH_STI
cce278d2 986 select DEBUG_STI_UART
5562b800
AB
987 help
988 Say Y here if you want kernel low-level debugging support
cce278d2
RK
989 on STiH415/416 based platforms like b2020. which has
990 default UART wired up to SBC ASC1.
5562b800
AB
991
992 If unsure, say N.
993
dd324da7
LW
994 config DEBUG_U300_UART
995 bool "Kernel low-level debugging messages via U300 UART0"
996 depends on ARCH_U300
5c972af4 997 select DEBUG_UART_PL01X
dd324da7
LW
998 help
999 Say Y here if you want the debug print routines to direct
1000 their output to the uart port on U300 devices.
1001
f87b95dd
LW
1002 config DEBUG_UX500_UART
1003 depends on ARCH_U8500
1004 bool "Use Ux500 UART for low-level debug"
1005 help
1006 Say Y here if you want kernel low-level debugging support
1007 on Ux500 based platforms.
1008
d6682085
MB
1009 config DEBUG_MT6589_UART0
1010 bool "Mediatek mt6589 UART0"
1011 depends on ARCH_MEDIATEK
1012 select DEBUG_UART_8250
1013 help
1014 Say Y here if you want kernel low-level debugging support
1015 for Mediatek mt6589 based platforms on UART0.
1016
65ec48c0 1017 config DEBUG_MT8127_UART0
60851d7a 1018 bool "Mediatek mt8127/mt6592 UART0"
65ec48c0
J
1019 depends on ARCH_MEDIATEK
1020 select DEBUG_UART_8250
1021 help
1022 Say Y here if you want kernel low-level debugging support
1023 for Mediatek mt8127 based platforms on UART0.
1024
1025 config DEBUG_MT8135_UART3
1026 bool "Mediatek mt8135 UART3"
1027 depends on ARCH_MEDIATEK
1028 select DEBUG_UART_8250
1029 help
1030 Say Y here if you want kernel low-level debugging support
1031 for Mediatek mt8135 based platforms on UART3.
1032
1b820eaf
PM
1033 config DEBUG_VEXPRESS_UART0_DETECT
1034 bool "Autodetect UART0 on Versatile Express Cortex-A core tiles"
1035 depends on ARCH_VEXPRESS && CPU_CP15_MMU
1036 help
1037 This option enables a simple heuristic which tries to determine
1038 the motherboard's memory map variant (original or RS1) and then
1039 choose the relevant UART0 base address.
1040
1041 Note that this will only work with standard A-class core tiles,
1042 and may fail with non-standard SMM or custom software models.
1043
1044 config DEBUG_VEXPRESS_UART0_CA9
1045 bool "Use PL011 UART0 at 0x10009000 (V2P-CA9 core tile)"
1046 depends on ARCH_VEXPRESS
5c972af4 1047 select DEBUG_UART_PL01X
1b820eaf
PM
1048 help
1049 This option selects UART0 at 0x10009000. Except for custom models,
1050 this applies only to the V2P-CA9 tile.
1051
1052 config DEBUG_VEXPRESS_UART0_RS1
1053 bool "Use PL011 UART0 at 0x1c090000 (RS1 complaint tiles)"
1054 depends on ARCH_VEXPRESS
5c972af4 1055 select DEBUG_UART_PL01X
1b820eaf
PM
1056 help
1057 This option selects UART0 at 0x1c090000. This applies to most
1058 of the tiles using the RS1 memory map, including all new A-class
1059 core tiles, FPGA-based SMMs and software models.
1060
ed18bdc8
JA
1061 config DEBUG_VEXPRESS_UART0_CRX
1062 bool "Use PL011 UART0 at 0xb0090000 (Cortex-R compliant tiles)"
1063 depends on ARCH_VEXPRESS && !MMU
5c972af4 1064 select DEBUG_UART_PL01X
ed18bdc8
JA
1065 help
1066 This option selects UART0 at 0xb0090000. This is appropriate for
1067 Cortex-R series tiles and SMMs, such as Cortex-R5 and Cortex-R7
1068
b61a2722
TP
1069 config DEBUG_VT8500_UART0
1070 bool "Use UART0 on VIA/Wondermedia SoCs"
1071 depends on ARCH_VT8500
1072 help
1073 This option selects UART0 on VIA/Wondermedia System-on-a-chip
1074 devices, including VT8500, WM8505, WM8650 and WM8850.
1075
e76f4750
RK
1076 config DEBUG_LL_UART_NONE
1077 bool "No low-level debugging UART"
387798b3 1078 depends on !ARCH_MULTIPLATFORM
a3d3ef9d 1079 help
e76f4750 1080 Say Y here if your platform doesn't provide a UART option
730cc26f 1081 above. This relies on your platform choosing the right UART
e76f4750
RK
1082 definition internally in order for low-level debugging to
1083 work.
a3d3ef9d 1084
e76f4750
RK
1085 config DEBUG_ICEDCC
1086 bool "Kernel low-level debugging via EmbeddedICE DCC channel"
a3d3ef9d
SB
1087 help
1088 Say Y here if you want the debug print routines to direct
e76f4750
RK
1089 their output to the EmbeddedICE macrocell's DCC channel using
1090 co-processor 14. This is known to work on the ARM9 style ICE
1091 channel and on the XScale with the PEEDI.
1092
1093 Note that the system will appear to hang during boot if there
1094 is nothing connected to read from the DCC.
a3d3ef9d 1095
b0df8986 1096 config DEBUG_SEMIHOSTING
62194bda 1097 bool "Kernel low-level debug output via semihosting I/O"
650e3f0d 1098 help
b0df8986
RK
1099 Semihosting enables code running on an ARM target to use
1100 the I/O facilities on a host debugger/emulator through a
62194bda 1101 simple SVC call. The host debugger or emulator must have
b0df8986
RK
1102 semihosting enabled for the special svc call to be trapped
1103 otherwise the kernel will crash.
650e3f0d 1104
62194bda 1105 This is known to work with OpenOCD, as well as
b0df8986
RK
1106 ARM's Fast Models, or any other controlling environment
1107 that implements semihosting.
a3d3ef9d 1108
b0df8986
RK
1109 For more details about semihosting, please see
1110 chapter 8 of DUI0203I_rvct_developer_guide.pdf from ARM Ltd.
a3d3ef9d 1111
f8f1279c
RK
1112 config DEBUG_LL_UART_8250
1113 bool "Kernel low-level debugging via 8250 UART"
1114 help
1115 Say Y here if you wish the debug print routes to direct
1116 their output to an 8250 UART. You can use this option
1117 to provide the parameters for the 8250 UART rather than
1118 selecting one of the platform specific options above if
1119 you know the parameters for the port.
1120
1121 This option is preferred over the platform specific
1122 options; the platform specific options are deprecated
1123 and will be soon removed.
1124
494e492d
UKK
1125 config DEBUG_LL_UART_EFM32
1126 bool "Kernel low-level debugging via efm32 UART"
1127 depends on ARCH_EFM32
1128 help
1129 Say Y here if you want the debug print routines to direct
1130 their output to an UART or USART port on efm32 based
1131 machines. Use the following addresses for DEBUG_UART_PHYS:
1132
1133 0x4000c000 | USART0
1134 0x4000c400 | USART1
1135 0x4000c800 | USART2
1136 0x4000e000 | UART0
1137 0x4000e400 | UART1
1138
f8f1279c
RK
1139 config DEBUG_LL_UART_PL01X
1140 bool "Kernel low-level debugging via ARM Ltd PL01x Primecell UART"
1141 help
1142 Say Y here if you wish the debug print routes to direct
1143 their output to a PL01x Primecell UART. You can use
1144 this option to provide the parameters for the UART
1145 rather than selecting one of the platform specific
1146 options above if you know the parameters for the port.
1147
1148 This option is preferred over the platform specific
1149 options; the platform specific options are deprecated
1150 and will be soon removed.
1151
17916b28
WD
1152endchoice
1153
42dfd1e1
NF
1154config DEBUG_AT91_UART
1155 bool
1156 depends on ARCH_AT91
1157
a2e40710
AB
1158config DEBUG_EXYNOS_UART
1159 bool
1160
daf67dfc
HS
1161config DEBUG_S3C2410_UART
1162 bool
1899de28
HS
1163 select DEBUG_S3C24XX_UART
1164
1165config DEBUG_S3C24XX_UART
1166 bool
daf67dfc 1167
7bab7d9e
TF
1168config DEBUG_S5PV210_UART
1169 bool
1170
cce278d2
RK
1171config DEBUG_OMAP2PLUS_UART
1172 bool
1173 depends on ARCH_OMAP2PLUS
1174
f8c95fe6
SG
1175config DEBUG_IMX_UART_PORT
1176 int "i.MX Debug UART Port Selection" if DEBUG_IMX1_UART || \
1177 DEBUG_IMX25_UART || \
1178 DEBUG_IMX21_IMX27_UART || \
1179 DEBUG_IMX31_UART || \
1180 DEBUG_IMX35_UART || \
ad364a70 1181 DEBUG_IMX50_UART || \
f8c95fe6 1182 DEBUG_IMX51_UART || \
0c52db7e 1183 DEBUG_IMX53_UART || \
34e8a16b 1184 DEBUG_IMX6Q_UART || \
74368e81
SG
1185 DEBUG_IMX6SL_UART || \
1186 DEBUG_IMX6SX_UART
49c9e60e 1187 default 1
287939a3 1188 depends on ARCH_MXC
49c9e60e
SG
1189 help
1190 Choose UART port on which kernel low-level debug messages
1191 should be output.
1192
cfdb7d56
SA
1193config DEBUG_VF_UART_PORT
1194 int "Vybrid Debug UART Port Selection" if DEBUG_VF_UART
1195 default 1
1196 range 0 3
1197 depends on SOC_VF610
1198 help
1199 Choose UART port on which kernel low-level debug messages
1200 should be output.
1201
cce278d2
RK
1202config DEBUG_TEGRA_UART
1203 bool
1204 depends on ARCH_TEGRA
5026aecf 1205
cce278d2
RK
1206config DEBUG_STI_UART
1207 bool
1208 depends on ARCH_STI
5026aecf 1209
01ea63d9
GZ
1210config DEBUG_SIRFSOC_UART
1211 bool
1212 depends on ARCH_SIRF
1213
91a9fec0
RH
1214config DEBUG_LL_INCLUDE
1215 string
e6131fa3 1216 default "debug/sa1100.S" if DEBUG_SA1100
f8f1279c 1217 default "debug/8250.S" if DEBUG_LL_UART_8250 || DEBUG_UART_8250
42dfd1e1 1218 default "debug/at91.S" if DEBUG_AT91_UART
d5bd4e8d 1219 default "debug/asm9260.S" if DEBUG_ASM9260_UART
dd99eef5 1220 default "debug/clps711x.S" if DEBUG_CLPS711X_UART1 || DEBUG_CLPS711X_UART2
d8a00916 1221 default "debug/meson.S" if DEBUG_MESON_UARTAO
f8f1279c 1222 default "debug/pl01x.S" if DEBUG_LL_UART_PL01X || DEBUG_UART_PL01X
a2e40710 1223 default "debug/exynos.S" if DEBUG_EXYNOS_UART
494e492d 1224 default "debug/efm32.S" if DEBUG_LL_UART_EFM32
91a9fec0 1225 default "debug/icedcc.S" if DEBUG_ICEDCC
6dde5ac5
SG
1226 default "debug/imx.S" if DEBUG_IMX1_UART || \
1227 DEBUG_IMX25_UART || \
1228 DEBUG_IMX21_IMX27_UART || \
4ad625d4
SG
1229 DEBUG_IMX31_UART || \
1230 DEBUG_IMX35_UART || \
ad364a70 1231 DEBUG_IMX50_UART || \
6dde5ac5 1232 DEBUG_IMX51_UART || \
7356420c 1233 DEBUG_IMX53_UART ||\
34e8a16b 1234 DEBUG_IMX6Q_UART || \
74368e81
SG
1235 DEBUG_IMX6SL_UART || \
1236 DEBUG_IMX6SX_UART
7098cff2 1237 default "debug/msm.S" if DEBUG_MSM_UART || DEBUG_QCOM_UARTDM
808b7e07 1238 default "debug/omap2plus.S" if DEBUG_OMAP2PLUS_UART
7a2071c5
GU
1239 default "debug/renesas-scif.S" if DEBUG_R7S72100_SCIF2
1240 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN1_SCIF0
1241 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN1_SCIF2
1242 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF0
1243 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF2
1244 default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA0
1245 default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA1
1246 default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA4
2cd62bd4 1247 default "debug/s3c24xx.S" if DEBUG_S3C24XX_UART
7bab7d9e 1248 default "debug/s5pv210.S" if DEBUG_S5PV210_UART
01ea63d9 1249 default "debug/sirf.S" if DEBUG_SIRFSOC_UART
5026aecf 1250 default "debug/sti.S" if DEBUG_STI_UART
150a8dcf
LT
1251 default "debug/tegra.S" if DEBUG_TEGRA_UART
1252 default "debug/ux500.S" if DEBUG_UX500_UART
4e218b99 1253 default "debug/vexpress.S" if DEBUG_VEXPRESS_UART0_DETECT
c7c3eac6 1254 default "debug/vf.S" if DEBUG_VF_UART
b61a2722 1255 default "debug/vt8500.S" if DEBUG_VT8500_UART0
385f02b1 1256 default "debug/zynq.S" if DEBUG_ZYNQ_UART0 || DEBUG_ZYNQ_UART1
b51312be 1257 default "debug/bcm63xx.S" if DEBUG_UART_BCM63XX
91a9fec0
RH
1258 default "mach/debug-macro.S"
1259
f8f1279c 1260# Compatibility options for PL01x
5c972af4
RK
1261config DEBUG_UART_PL01X
1262 def_bool ARCH_EP93XX || \
1263 ARCH_INTEGRATOR || \
0dc0e475
RK
1264 ARCH_SPEAR3XX || \
1265 ARCH_SPEAR6XX || \
1266 ARCH_SPEAR13XX || \
5c972af4
RK
1267 ARCH_VERSATILE
1268
f8f1279c 1269# Compatibility options for 8250
7610b607 1270config DEBUG_UART_8250
4a003647
RK
1271 def_bool ARCH_DOVE || ARCH_EBSA110 || \
1272 (FOOTBRIDGE && !DEBUG_DC21285_PORT) || \
1273 ARCH_GEMINI || ARCH_IOP13XX || ARCH_IOP32X || \
ba364fc7 1274 ARCH_IOP33X || ARCH_IXP4XX || \
4a003647
RK
1275 ARCH_LPC32XX || ARCH_MV78XX0 || ARCH_ORION5X || ARCH_RPC
1276
b51312be
FF
1277# Compatibility options for BCM63xx
1278config DEBUG_UART_BCM63XX
1279 def_bool ARCH_BCM_63XX
1280
c3faa9b7
RK
1281config DEBUG_UART_PHYS
1282 hex "Physical base address of debug UART"
97bd1a48 1283 default 0x01c20000 if DEBUG_DAVINCI_DMx_UART0
c3faa9b7
RK
1284 default 0x01c28000 if DEBUG_SUNXI_UART0
1285 default 0x01c28400 if DEBUG_SUNXI_UART1
97bd1a48
RK
1286 default 0x01d0c000 if DEBUG_DAVINCI_DA8XX_UART1
1287 default 0x01d0d000 if DEBUG_DAVINCI_DA8XX_UART2
c4718543 1288 default 0x01f02800 if DEBUG_SUNXI_R_UART
f2acf003
RK
1289 default 0x02530c00 if DEBUG_KEYSTONE_UART0
1290 default 0x02531000 if DEBUG_KEYSTONE_UART1
c3faa9b7 1291 default 0x03010fe0 if ARCH_RPC
d4da889a 1292 default 0x07000000 if DEBUG_SUN9I_UART0
b125170a 1293 default 0x10009000 if DEBUG_REALVIEW_STD_PORT || \
5c972af4
RK
1294 DEBUG_VEXPRESS_UART0_CA9
1295 default 0x1010c000 if DEBUG_REALVIEW_PB1176_PORT
c3faa9b7
RK
1296 default 0x10124000 if DEBUG_RK3X_UART0
1297 default 0x10126000 if DEBUG_RK3X_UART1
5c972af4
RK
1298 default 0x101f1000 if ARCH_VERSATILE
1299 default 0x101fb000 if DEBUG_NOMADIK_UART
65ec48c0 1300 default 0x11002000 if DEBUG_MT8127_UART0
d6682085 1301 default 0x11006000 if DEBUG_MT6589_UART0
65ec48c0 1302 default 0x11009000 if DEBUG_MT8135_UART3
5c972af4 1303 default 0x16000000 if ARCH_INTEGRATOR
06580275 1304 default 0x18000300 if DEBUG_BCM_5301X
01ea63d9
GZ
1305 default 0x18010000 if DEBUG_SIRFATLAS7_UART0
1306 default 0x18020000 if DEBUG_SIRFATLAS7_UART1
5c972af4 1307 default 0x1c090000 if DEBUG_VEXPRESS_UART0_RS1
27dafaa8 1308 default 0x20001000 if DEBUG_HIP01_UART
c3faa9b7
RK
1309 default 0x20060000 if DEBUG_RK29_UART0
1310 default 0x20064000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
1311 default 0x20068000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
5c972af4 1312 default 0x20201000 if DEBUG_BCM2835
753d1243 1313 default 0x3e000000 if DEBUG_BCM_KONA_UART
494e492d 1314 default 0x4000e400 if DEBUG_LL_UART_EFM32
c3faa9b7
RK
1315 default 0x40090000 if ARCH_LPC32XX
1316 default 0x40100000 if DEBUG_PXA_UART1
1317 default 0x42000000 if ARCH_GEMINI
1899de28
HS
1318 default 0x50000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \
1319 DEBUG_S3C2410_UART0)
1320 default 0x50004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \
1321 DEBUG_S3C2410_UART1)
1322 default 0x50008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \
1323 DEBUG_S3C2410_UART2)
c3ca2130 1324 default 0x78000000 if DEBUG_CNS3XXX
c3faa9b7 1325 default 0x7c0003f8 if FOOTBRIDGE
b125170a 1326 default 0x78000000 if DEBUG_CNS3XXX
d5bd4e8d 1327 default 0x80010000 if DEBUG_ASM9260_UART
5c972af4
RK
1328 default 0x80070000 if DEBUG_IMX23_UART
1329 default 0x80074000 if DEBUG_IMX28_UART
c39e1ef7 1330 default 0x80230000 if DEBUG_PICOXCELL_UART
5c972af4
RK
1331 default 0x808c0000 if ARCH_EP93XX
1332 default 0x90020000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART
7098cff2 1333 default 0xa9a00000 if DEBUG_MSM_UART
01ea63d9 1334 default 0xb0060000 if DEBUG_SIRFPRIMA2_UART1
5c972af4
RK
1335 default 0xb0090000 if DEBUG_VEXPRESS_UART0_CRX
1336 default 0xc0013000 if DEBUG_U300_UART
c3faa9b7
RK
1337 default 0xc8000000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
1338 default 0xc8000003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
0dc0e475 1339 default 0xd0000000 if ARCH_SPEAR3XX || ARCH_SPEAR6XX
d91125dd 1340 default 0xd0012000 if DEBUG_MVEBU_UART0
d8a00916 1341 default 0xc81004c0 if DEBUG_MESON_UARTAO
c3faa9b7
RK
1342 default 0xd4017000 if DEBUG_MMP_UART2
1343 default 0xd4018000 if DEBUG_MMP_UART3
0dc0e475 1344 default 0xe0000000 if ARCH_SPEAR13XX
c9a1df48 1345 default 0xe4007000 if DEBUG_HIP04_UART
7a2071c5
GU
1346 default 0xe6c40000 if DEBUG_RMOBILE_SCIFA0
1347 default 0xe6c50000 if DEBUG_RMOBILE_SCIFA1
1348 default 0xe6c80000 if DEBUG_RMOBILE_SCIFA4
1349 default 0xe6e58000 if DEBUG_RCAR_GEN2_SCIF2
1350 default 0xe6e60000 if DEBUG_RCAR_GEN2_SCIF0
1351 default 0xe8008000 if DEBUG_R7S72100_SCIF2
c3faa9b7 1352 default 0xf0000be0 if ARCH_EBSA110
81b43a6e 1353 default 0xf040ab00 if DEBUG_BRCMSTB_UART
d91125dd 1354 default 0xf1012000 if DEBUG_MVEBU_UART0_ALTERNATE
bd920490 1355 default 0xf1012100 if DEBUG_MVEBU_UART1_ALTERNATE
ba364fc7 1356 default 0xf1012000 if ARCH_DOVE || ARCH_MV78XX0 || \
c3faa9b7 1357 ARCH_ORION5X
caad0b41 1358 default 0xf7fc9000 if DEBUG_BERLIN_UART
12aae309 1359 default 0xf8b00000 if DEBUG_HIX5HD2_UART
7098cff2 1360 default 0xf991e000 if DEBUG_QCOM_UARTDM
8d258beb 1361 default 0xfcb00000 if DEBUG_HI3620_UART
c3faa9b7 1362 default 0xfe800000 if ARCH_IOP32X
efd02ee9 1363 default 0xff690000 if DEBUG_RK32_UART2
0b4cccbe 1364 default 0xffc02000 if DEBUG_SOCFPGA_UART
c3faa9b7 1365 default 0xffd82340 if ARCH_IOP13XX
7a2071c5
GU
1366 default 0xffe40000 if DEBUG_RCAR_GEN1_SCIF0
1367 default 0xffe42000 if DEBUG_RCAR_GEN1_SCIF2
5c972af4 1368 default 0xfff36000 if DEBUG_HIGHBANK_UART
b51312be 1369 default 0xfffe8600 if DEBUG_UART_BCM63XX
c3faa9b7 1370 default 0xfffff700 if ARCH_IOP33X
f8f1279c 1371 depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
494e492d 1372 DEBUG_LL_UART_EFM32 || \
d8a00916 1373 DEBUG_UART_8250 || DEBUG_UART_PL01X || DEBUG_MESON_UARTAO || \
7a2071c5
GU
1374 DEBUG_MSM_UART || DEBUG_QCOM_UARTDM || DEBUG_R7S72100_SCIF2 || \
1375 DEBUG_RCAR_GEN1_SCIF0 || DEBUG_RCAR_GEN1_SCIF2 || \
1376 DEBUG_RCAR_GEN2_SCIF0 || DEBUG_RCAR_GEN2_SCIF2 || \
1377 DEBUG_RMOBILE_SCIFA0 || DEBUG_RMOBILE_SCIFA1 || \
1378 DEBUG_RMOBILE_SCIFA4 || DEBUG_S3C24XX_UART || \
01ea63d9
GZ
1379 DEBUG_UART_BCM63XX || DEBUG_ASM9260_UART || \
1380 DEBUG_SIRFSOC_UART
c3faa9b7
RK
1381
1382config DEBUG_UART_VIRT
1383 hex "Virtual base address of debug UART"
1384 default 0xe0010fe0 if ARCH_RPC
7098cff2 1385 default 0xe1000000 if DEBUG_MSM_UART
c3faa9b7 1386 default 0xf0000be0 if ARCH_EBSA110
d5bd4e8d 1387 default 0xf0010000 if DEBUG_ASM9260_UART
5c972af4
RK
1388 default 0xf01fb000 if DEBUG_NOMADIK_UART
1389 default 0xf0201000 if DEBUG_BCM2835
06580275 1390 default 0xf1000300 if DEBUG_BCM_5301X
65ec48c0 1391 default 0xf1002000 if DEBUG_MT8127_UART0
d6682085 1392 default 0xf1006000 if DEBUG_MT6589_UART0
65ec48c0 1393 default 0xf1009000 if DEBUG_MT8135_UART3
5c972af4
RK
1394 default 0xf11f1000 if ARCH_VERSATILE
1395 default 0xf1600000 if ARCH_INTEGRATOR
c3faa9b7
RK
1396 default 0xf1c28000 if DEBUG_SUNXI_UART0
1397 default 0xf1c28400 if DEBUG_SUNXI_UART1
c4718543 1398 default 0xf1f02800 if DEBUG_SUNXI_R_UART
cde7fc87 1399 default 0xf6200000 if DEBUG_PXA_UART1
c3faa9b7
RK
1400 default 0xf4090000 if ARCH_LPC32XX
1401 default 0xf4200000 if ARCH_GEMINI
d4da889a 1402 default 0xf7000000 if DEBUG_SUN9I_UART0
1899de28
HS
1403 default 0xf7000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \
1404 DEBUG_S3C2410_UART0)
1405 default 0xf7004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \
1406 DEBUG_S3C2410_UART1)
1407 default 0xf7008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \
1408 DEBUG_S3C2410_UART2)
caad0b41 1409 default 0xf7fc9000 if DEBUG_BERLIN_UART
c9a1df48 1410 default 0xf8007000 if DEBUG_HIP04_UART
5c972af4
RK
1411 default 0xf8009000 if DEBUG_VEXPRESS_UART0_CA9
1412 default 0xf8090000 if DEBUG_VEXPRESS_UART0_RS1
7098cff2 1413 default 0xfa71e000 if DEBUG_QCOM_UARTDM
b125170a 1414 default 0xfb002000 if DEBUG_CNS3XXX
5c972af4
RK
1415 default 0xfb009000 if DEBUG_REALVIEW_STD_PORT
1416 default 0xfb10c000 if DEBUG_REALVIEW_PB1176_PORT
81b43a6e 1417 default 0xfc40ab00 if DEBUG_BRCMSTB_UART
b51312be 1418 default 0xfcfe8600 if DEBUG_UART_BCM63XX
0dc0e475
RK
1419 default 0xfd000000 if ARCH_SPEAR3XX || ARCH_SPEAR6XX
1420 default 0xfd000000 if ARCH_SPEAR13XX
c3faa9b7
RK
1421 default 0xfd012000 if ARCH_MV78XX0
1422 default 0xfde12000 if ARCH_DOVE
1423 default 0xfe012000 if ARCH_ORION5X
d8a00916 1424 default 0xf31004c0 if DEBUG_MESON_UARTAO
c3faa9b7
RK
1425 default 0xfe017000 if DEBUG_MMP_UART2
1426 default 0xfe018000 if DEBUG_MMP_UART3
5c972af4 1427 default 0xfe100000 if DEBUG_IMX23_UART || DEBUG_IMX28_UART
0b4cccbe 1428 default 0xfe230000 if DEBUG_PICOXCELL_UART
753d1243 1429 default 0xfe300000 if DEBUG_BCM_KONA_UART
c3faa9b7 1430 default 0xfe800000 if ARCH_IOP32X
12aae309 1431 default 0xfeb00000 if DEBUG_HI3620_UART || DEBUG_HIX5HD2_UART
c3faa9b7
RK
1432 default 0xfeb24000 if DEBUG_RK3X_UART0
1433 default 0xfeb26000 if DEBUG_RK3X_UART1
f2acf003
RK
1434 default 0xfeb30c00 if DEBUG_KEYSTONE_UART0
1435 default 0xfeb31000 if DEBUG_KEYSTONE_UART1
0b4cccbe 1436 default 0xfec02000 if DEBUG_SOCFPGA_UART
d91125dd 1437 default 0xfec12000 if DEBUG_MVEBU_UART0 || DEBUG_MVEBU_UART0_ALTERNATE
bd920490 1438 default 0xfec12100 if DEBUG_MVEBU_UART1_ALTERNATE
01ea63d9 1439 default 0xfec10000 if DEBUG_SIRFATLAS7_UART0
97bd1a48 1440 default 0xfec20000 if DEBUG_DAVINCI_DMx_UART0
01ea63d9
GZ
1441 default 0xfec20000 if DEBUG_SIRFATLAS7_UART1
1442 default 0xfec60000 if DEBUG_SIRFPRIMA2_UART1
efd02ee9 1443 default 0xfec90000 if DEBUG_RK32_UART2
97bd1a48
RK
1444 default 0xfed0c000 if DEBUG_DAVINCI_DA8XX_UART1
1445 default 0xfed0d000 if DEBUG_DAVINCI_DA8XX_UART2
c39e1ef7
AS
1446 default 0xfed60000 if DEBUG_RK29_UART0
1447 default 0xfed64000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
1448 default 0xfed68000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
5c972af4 1449 default 0xfedc0000 if ARCH_EP93XX
c3faa9b7 1450 default 0xfee003f8 if FOOTBRIDGE
5c972af4 1451 default 0xfee20000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART
c3faa9b7
RK
1452 default 0xfee82340 if ARCH_IOP13XX
1453 default 0xfef00000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
1454 default 0xfef00003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
c39e1ef7 1455 default 0xfef36000 if DEBUG_HIGHBANK_UART
c3faa9b7 1456 default 0xfefff700 if ARCH_IOP33X
5c972af4 1457 default 0xff003000 if DEBUG_U300_UART
27dafaa8 1458 default 0xffd01000 if DEBUG_HIP01_UART
5c972af4 1459 default DEBUG_UART_PHYS if !MMU
f8f1279c 1460 depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
d8a00916 1461 DEBUG_UART_8250 || DEBUG_UART_PL01X || DEBUG_MESON_UARTAO || \
b51312be 1462 DEBUG_MSM_UART || DEBUG_QCOM_UARTDM || DEBUG_S3C24XX_UART || \
01ea63d9 1463 DEBUG_UART_BCM63XX || DEBUG_ASM9260_UART || DEBUG_SIRFSOC_UART
c3faa9b7 1464
4a003647
RK
1465config DEBUG_UART_8250_SHIFT
1466 int "Register offset shift for the 8250 debug UART"
f8f1279c 1467 depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
140bd603 1468 default 0 if FOOTBRIDGE || ARCH_IOP32X || DEBUG_BCM_5301X
4a003647 1469 default 2
7610b607 1470
0b4cccbe
RK
1471config DEBUG_UART_8250_WORD
1472 bool "Use 32-bit accesses for 8250 UART"
f8f1279c 1473 depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
0b4cccbe 1474 depends on DEBUG_UART_8250_SHIFT >= 2
f2acf003 1475 default y if DEBUG_PICOXCELL_UART || DEBUG_SOCFPGA_UART || \
97bd1a48
RK
1476 ARCH_KEYSTONE || \
1477 DEBUG_DAVINCI_DMx_UART0 || DEBUG_DAVINCI_DA8XX_UART1 || \
9d6eccb9 1478 DEBUG_DAVINCI_DA8XX_UART2 || \
81b43a6e
MC
1479 DEBUG_BCM_KONA_UART || DEBUG_RK32_UART2 || \
1480 DEBUG_BRCMSTB_UART
0b4cccbe 1481
7610b607
RK
1482config DEBUG_UART_8250_FLOW_CONTROL
1483 bool "Enable flow control for 8250 UART"
f8f1279c 1484 depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
7610b607
RK
1485 default y if ARCH_EBSA110 || FOOTBRIDGE || ARCH_GEMINI || ARCH_RPC
1486
3b4af9bc
SG
1487config DEBUG_UNCOMPRESS
1488 bool
90266754 1489 depends on ARCH_MULTIPLATFORM || ARCH_MSM || PLAT_SAMSUNG
b6992fa9 1490 default y if DEBUG_LL && !DEBUG_OMAP2PLUS_UART && \
ae3c99a2 1491 (!DEBUG_TEGRA_UART || !ZBOOT_ROM)
b6992fa9
RK
1492 help
1493 This option influences the normal decompressor output for
1494 multiplatform kernels. Normally, multiplatform kernels disable
1495 decompressor output because it is not possible to know where to
1496 send the decompressor output.
1497
1498 When this option is set, the selected DEBUG_LL output method
1499 will be re-used for normal decompressor output on multiplatform
1500 kernels.
1501
3b4af9bc 1502
615967b0
SG
1503config UNCOMPRESS_INCLUDE
1504 string
ffd80ecc 1505 default "debug/uncompress.h" if ARCH_MULTIPLATFORM || ARCH_MSM || \
2bf73dd6 1506 PLAT_SAMSUNG || ARCH_EFM32
615967b0
SG
1507 default "mach/uncompress.h"
1508
93fd03a8
CM
1509config EARLY_PRINTK
1510 bool "Early printk"
1511 depends on DEBUG_LL
1512 help
1513 Say Y here if you want to have an early console using the
1514 kernel low-level debugging functions. Add earlyprintk to your
1515 kernel parameters to enable this console.
1516
4189bc71
JM
1517config ARM_KPROBES_TEST
1518 tristate "Kprobes test module"
1519 depends on KPROBES && MODULES
1520 help
1521 Perform tests of kprobes API and instruction set simulation.
1522
575320d6
WD
1523config PID_IN_CONTEXTIDR
1524 bool "Write the current PID to the CONTEXTIDR register"
1525 depends on CPU_COPY_V6
1526 help
1527 Enabling this option causes the kernel to write the current PID to
1528 the PROCID field of the CONTEXTIDR register, at the expense of some
1529 additional instructions during context switch. Say Y here only if you
1530 are planning to use hardware trace tools with this kernel.
1531
dca9aa92
LA
1532config DEBUG_SET_MODULE_RONX
1533 bool "Set loadable kernel module data as NX and text as RO"
1534 depends on MODULES
1535 ---help---
1536 This option helps catch unintended modifications to loadable
1537 kernel module's text and read-only data. It also prevents execution
1538 of module data. Such protection may interfere with run-time code
1539 patching and dynamic kernel tracing - and they might also protect
1540 against certain classes of kernel exploits.
1541 If in doubt, say "N".
1542
a06ae860
PP
1543menuconfig CORESIGHT
1544 bool "CoreSight Tracing Support"
1545 select ARM_AMBA
1546 help
1547 This framework provides a kernel interface for the CoreSight debug
1548 and trace drivers to register themselves with. It's intended to build
1549 a topological view of the CoreSight components based on a DT
1550 specification and configure the right serie of components when a
1551 trace source gets enabled.
bc4bf7fe
PP
1552
1553if CORESIGHT
1554config CORESIGHT_LINKS_AND_SINKS
1555 bool "CoreSight Link and Sink drivers"
1556 help
1557 This enables support for CoreSight link and sink drivers that are
1558 responsible for transporting and collecting the trace data
1559 respectively. Link and sinks are dynamically aggregated with a trace
1560 entity at run time to form a complete trace path.
1561
1562config CORESIGHT_LINK_AND_SINK_TMC
1563 bool "Coresight generic TMC driver"
1564 depends on CORESIGHT_LINKS_AND_SINKS
1565 help
1566 This enables support for the Trace Memory Controller driver. Depending
1567 on its configuration the device can act as a link (embedded trace router
1568 - ETR) or sink (embedded trace FIFO). The driver complies with the
1569 generic implementation of the component without special enhancement or
1570 added features.
dc161b9f
PP
1571
1572config CORESIGHT_SINK_TPIU
1573 bool "Coresight generic TPIU driver"
1574 depends on CORESIGHT_LINKS_AND_SINKS
1575 help
1576 This enables support for the Trace Port Interface Unit driver, responsible
1577 for bridging the gap between the on-chip coresight components and a trace
1578 port collection engine, typically connected to an external host for use
1579 case capturing more traces than the on-board coresight memory can handle.
fdfc0d8a
PP
1580
1581config CORESIGHT_SINK_ETBV10
1582 bool "Coresight ETBv1.0 driver"
1583 depends on CORESIGHT_LINKS_AND_SINKS
1584 help
1585 This enables support for the Embedded Trace Buffer version 1.0 driver
1586 that complies with the generic implementation of the component without
1587 special enhancement or added features.
a939fc5a
PP
1588
1589config CORESIGHT_SOURCE_ETM3X
1590 bool "CoreSight Embedded Trace Macrocell 3.x driver"
1591 select CORESIGHT_LINKS_AND_SINKS
1592 help
1593 This driver provides support for processor ETM3.x and PTM1.x modules,
1594 which allows tracing the instructions that a processor is executing
1595 This is primarily useful for instruction level tracing. Depending
1596 the ETM version data tracing may also be available.
bc4bf7fe 1597endif
1da177e4 1598endmenu