blob: bee0ba1d1cfb721255ab7736cd98f1faadcdb506 [file] [log] [blame]
xjb04a4022021-11-25 15:01:52 +08001# SPDX-License-Identifier: GPL-2.0
2
3config ARM_PTDUMP_CORE
4 def_bool n
5
6config ARM_PTDUMP_DEBUGFS
7 bool "Export kernel pagetable layout to userspace via debugfs"
8 depends on DEBUG_KERNEL
9 depends on MMU
10 select ARM_PTDUMP_CORE
11 select DEBUG_FS
12 ---help---
13 Say Y here if you want to show the kernel pagetable layout in a
14 debugfs file. This information is only useful for kernel developers
15 who are working in architecture specific areas of the kernel.
16 It is probably not a good idea to enable this feature in a production
17 kernel.
18 If in doubt, say "N"
19
20config DEBUG_WX
21 bool "Warn on W+X mappings at boot"
22 depends on MMU
23 select ARM_PTDUMP_CORE
24 ---help---
25 Generate a warning if any W+X mappings are found at boot.
26
27 This is useful for discovering cases where the kernel is leaving
28 W+X mappings after applying NX, as such mappings are a security risk.
29
30 Look for a message in dmesg output like this:
31
32 arm/mm: Checked W+X mappings: passed, no W+X pages found.
33
34 or like this, if the check failed:
35
36 arm/mm: Checked W+X mappings: FAILED, <N> W+X pages found.
37
38 Note that even if the check fails, your kernel is possibly
39 still fine, as W+X mappings are not a security hole in
40 themselves, what they do is that they make the exploitation
41 of other unfixed kernel bugs easier.
42
43 There is no runtime or memory usage effect of this option
44 once the kernel has booted up - it's a one time check.
45
46 If in doubt, say "Y".
47
48# RMK wants arm kernels compiled with frame pointers or stack unwinding.
49# If you know what you are doing and are willing to live without stack
50# traces, you can get a slightly smaller kernel by setting this option to
51# n, but then RMK will have to kill you ;).
52config FRAME_POINTER
53 bool
54 depends on !THUMB2_KERNEL
55 default y if !ARM_UNWIND || FUNCTION_GRAPH_TRACER
56 help
57 If you say N here, the resulting kernel will be slightly smaller and
58 faster. However, if neither FRAME_POINTER nor ARM_UNWIND are enabled,
59 when a problem occurs with the kernel, the information that is
60 reported is severely limited.
61
62config ARM_UNWIND
63 bool "Enable stack unwinding support (EXPERIMENTAL)"
64 depends on AEABI
65 default y
66 help
67 This option enables stack unwinding support in the kernel
68 using the information automatically generated by the
69 compiler. The resulting kernel image is slightly bigger but
70 the performance is not affected. Currently, this feature
71 only works with EABI compilers. If unsure say Y.
72
73config OLD_MCOUNT
74 bool
75 depends on FUNCTION_TRACER && FRAME_POINTER
76 default y
77
78config DEBUG_USER
79 bool "Verbose user fault messages"
80 help
81 When a user program crashes due to an exception, the kernel can
82 print a brief message explaining what the problem was. This is
83 sometimes helpful for debugging but serves no purpose on a
84 production system. Most people should say N here.
85
86 In addition, you need to pass user_debug=N on the kernel command
87 line to enable this feature. N consists of the sum of:
88
89 1 - undefined instruction events
90 2 - system calls
91 4 - invalid data aborts
92 8 - SIGSEGV faults
93 16 - SIGBUS faults
94
95# These options are only for real kernel hackers who want to get their hands dirty.
96config DEBUG_LL
97 bool "Kernel low-level debugging functions (read help!)"
98 depends on DEBUG_KERNEL
99 help
100 Say Y here to include definitions of printascii, printch, printhex
101 in the kernel. This is helpful if you are debugging code that
102 executes before the console is initialized.
103
104 Note that selecting this option will limit the kernel to a single
105 UART definition, as specified below. Attempting to boot the kernel
106 image on a different platform *will not work*, so this option should
107 not be enabled for kernels that are intended to be portable.
108
109choice
110 prompt "Kernel low-level debugging port"
111 depends on DEBUG_LL
112
113 config DEBUG_ALPINE_UART0
114 bool "Kernel low-level debugging messages via Alpine UART0"
115 depends on ARCH_ALPINE
116 select DEBUG_UART_8250
117 help
118 Say Y here if you want kernel low-level debugging support
119 on Alpine based platforms.
120
121 config DEBUG_ASM9260_UART
122 bool "Kernel low-level debugging via asm9260 UART"
123 depends on MACH_ASM9260
124 help
125 Say Y here if you want the debug print routines to direct
126 their output to an UART or USART port on asm9260 based
127 machines.
128
129 DEBUG_UART_PHYS | DEBUG_UART_VIRT
130
131 0x80000000 | 0xf0000000 | UART0
132 0x80004000 | 0xf0004000 | UART1
133 0x80008000 | 0xf0008000 | UART2
134 0x8000c000 | 0xf000c000 | UART3
135 0x80010000 | 0xf0010000 | UART4
136 0x80014000 | 0xf0014000 | UART5
137 0x80018000 | 0xf0018000 | UART6
138 0x8001c000 | 0xf001c000 | UART7
139 0x80020000 | 0xf0020000 | UART8
140 0x80024000 | 0xf0024000 | UART9
141
142 config DEBUG_AT91_RM9200_DBGU
143 bool "Kernel low-level debugging on AT91RM9200, AT91SAM9 DBGU"
144 select DEBUG_AT91_UART
145 depends on SOC_AT91RM9200 || SOC_AT91SAM9
146 help
147 Say Y here if you want kernel low-level debugging support
148 on the DBGU port of:
149 at91rm9200, at91sam9260, at91sam9g20, at91sam9261,
150 at91sam9g10, at91sam9n12, at91sam9rl64, at91sam9x5
151
152 config DEBUG_AT91_SAM9263_DBGU
153 bool "Kernel low-level debugging on AT91SAM{9263,9G45,A5D3} DBGU"
154 select DEBUG_AT91_UART
155 depends on SOC_AT91SAM9 || SOC_SAMA5D3
156 help
157 Say Y here if you want kernel low-level debugging support
158 on the DBGU port of:
159 at91sam9263, at91sam9g45, at91sam9m10,
160 sama5d3
161
162 config DEBUG_AT91_SAMA5D2_UART1
163 bool "Kernel low-level debugging on SAMA5D2 UART1"
164 select DEBUG_AT91_UART
165 depends on SOC_SAMA5D2
166 help
167 Say Y here if you want kernel low-level debugging support
168 on the UART1 port of sama5d2.
169
170 config DEBUG_AT91_SAMA5D4_USART3
171 bool "Kernel low-level debugging on SAMA5D4 USART3"
172 select DEBUG_AT91_UART
173 depends on SOC_SAMA5D4
174 help
175 Say Y here if you want kernel low-level debugging support
176 on the USART3 port of sama5d4.
177
178 config DEBUG_AT91_SAMV7_USART1
179 bool "Kernel low-level debugging via SAMV7 USART1"
180 select DEBUG_AT91_UART
181 depends on SOC_SAMV7
182 help
183 Say Y here if you want the debug print routines to direct
184 their output to the USART1 port on SAMV7 based
185 machines.
186
187 config DEBUG_BCM2835
188 bool "Kernel low-level debugging on BCM2835 PL011 UART"
189 depends on ARCH_BCM2835 && ARCH_MULTI_V6
190 select DEBUG_UART_PL01X
191
192 config DEBUG_BCM2836
193 bool "Kernel low-level debugging on BCM2836 PL011 UART"
194 depends on ARCH_BCM2835 && ARCH_MULTI_V7
195 select DEBUG_UART_PL01X
196
197 config DEBUG_BCM_5301X
198 bool "Kernel low-level debugging on BCM5301X/NSP UART1"
199 depends on ARCH_BCM_5301X || ARCH_BCM_NSP
200 select DEBUG_UART_8250
201
202 config DEBUG_BCM_HR2
203 bool "Kernel low-level debugging on Hurricane 2 UART2"
204 depends on ARCH_BCM_HR2
205 select DEBUG_UART_8250
206
207 config DEBUG_BCM_IPROC_UART3
208 bool "Kernel low-level debugging on BCM IPROC UART3"
209 depends on ARCH_BCM_CYGNUS
210 select DEBUG_UART_8250
211 help
212 Say Y here if you want the debug print routines to direct
213 their output to the third serial port on these devices.
214
215 config DEBUG_BCM_KONA_UART
216 bool "Kernel low-level debugging messages via BCM KONA UART"
217 depends on ARCH_BCM_MOBILE
218 select DEBUG_UART_8250
219 help
220 Say Y here if you want kernel low-level debugging support
221 on Broadcom SoC platforms.
222 This low level debug works for Broadcom
223 mobile SoCs in the Kona family of chips (e.g. bcm28155,
224 bcm11351, etc...)
225
226 config DEBUG_BCM63XX_UART
227 bool "Kernel low-level debugging on BCM63XX UART"
228 depends on ARCH_BCM_63XX
229
230 config DEBUG_BERLIN_UART
231 bool "Marvell Berlin SoC Debug UART"
232 depends on ARCH_BERLIN
233 select DEBUG_UART_8250
234 help
235 Say Y here if you want kernel low-level debugging support
236 on Marvell Berlin SoC based platforms.
237
238 config DEBUG_BRCMSTB_UART
239 bool "Use BRCMSTB UART for low-level debug"
240 depends on ARCH_BRCMSTB
241 help
242 Say Y here if you want the debug print routines to direct
243 their output to the first serial port on these devices. The
244 UART physical and virtual address is automatically provided
245 based on the chip identification register value.
246
247 If you have a Broadcom STB chip and would like early print
248 messages to appear over the UART, select this option.
249
250 config DEBUG_CLPS711X_UART1
251 bool "Kernel low-level debugging messages via UART1"
252 depends on ARCH_CLPS711X
253 help
254 Say Y here if you want the debug print routines to direct
255 their output to the first serial port on these devices.
256
257 config DEBUG_CLPS711X_UART2
258 bool "Kernel low-level debugging messages via UART2"
259 depends on ARCH_CLPS711X
260 help
261 Say Y here if you want the debug print routines to direct
262 their output to the second serial port on these devices.
263
264 config DEBUG_CNS3XXX
265 bool "Kernel Kernel low-level debugging on Cavium Networks CNS3xxx"
266 depends on ARCH_CNS3XXX
267 select DEBUG_UART_8250
268 help
269 Say Y here if you want the debug print routines to direct
270 their output to the CNS3xxx UART0.
271
272 config DEBUG_DAVINCI_DA8XX_UART1
273 bool "Kernel low-level debugging on DaVinci DA8XX using UART1"
274 depends on ARCH_DAVINCI_DA8XX
275 select DEBUG_UART_8250
276 help
277 Say Y here if you want the debug print routines to direct
278 their output to UART1 serial port on DaVinci DA8XX devices.
279
280 config DEBUG_DAVINCI_DA8XX_UART2
281 bool "Kernel low-level debugging on DaVinci DA8XX using UART2"
282 depends on ARCH_DAVINCI_DA8XX
283 select DEBUG_UART_8250
284 help
285 Say Y here if you want the debug print routines to direct
286 their output to UART2 serial port on DaVinci DA8XX devices.
287
288 config DEBUG_DAVINCI_DMx_UART0
289 bool "Kernel low-level debugging on DaVinci DMx using UART0"
290 depends on ARCH_DAVINCI_DMx
291 select DEBUG_UART_8250
292 help
293 Say Y here if you want the debug print routines to direct
294 their output to UART0 serial port on DaVinci DMx devices.
295
296 config DEBUG_DC21285_PORT
297 bool "Kernel low-level debugging messages via footbridge serial port"
298 depends on FOOTBRIDGE
299 help
300 Say Y here if you want the debug print routines to direct
301 their output to the serial port in the DC21285 (Footbridge).
302
303 config DEBUG_DIGICOLOR_UA0
304 bool "Kernel low-level debugging messages via Digicolor UA0"
305 depends on ARCH_DIGICOLOR
306 help
307 Say Y here if you want the debug print routines to direct
308 their output to the UA0 serial port in the CX92755.
309
310 config DEBUG_EP93XX
311 bool "Kernel low-level debugging messages via ep93xx UART"
312 depends on ARCH_EP93XX
313 select DEBUG_UART_PL01X
314 help
315 Say Y here if you want kernel low-level debugging support
316 on Cirrus Logic EP93xx based platforms.
317
318 config DEBUG_FOOTBRIDGE_COM1
319 bool "Kernel low-level debugging messages via footbridge 8250 at PCI COM1"
320 depends on FOOTBRIDGE
321 select DEBUG_UART_8250
322 help
323 Say Y here if you want the debug print routines to direct
324 their output to the 8250 at PCI COM1.
325
326 config DEBUG_GEMINI
327 bool "Kernel low-level debugging messages via Cortina Systems Gemini UART"
328 depends on ARCH_GEMINI
329 select DEBUG_UART_8250
330 help
331 Say Y here if you want kernel low-level debugging support
332 on Cortina Gemini based platforms.
333
334 config DEBUG_HI3620_UART
335 bool "Hisilicon HI3620 Debug UART"
336 depends on ARCH_HI3xxx
337 select DEBUG_UART_PL01X
338 help
339 Say Y here if you want kernel low-level debugging support
340 on HI3620 UART.
341
342 config DEBUG_HIGHBANK_UART
343 bool "Kernel low-level debugging messages via Highbank UART"
344 depends on ARCH_HIGHBANK
345 select DEBUG_UART_PL01X
346 help
347 Say Y here if you want the debug print routines to direct
348 their output to the UART on Highbank based devices.
349
350 config DEBUG_HIP01_UART
351 bool "Hisilicon Hip01 Debug UART"
352 depends on ARCH_HIP01
353 select DEBUG_UART_8250
354 help
355 Say Y here if you want kernel low-level debugging support
356 on HIP01 UART.
357
358 config DEBUG_HIP04_UART
359 bool "Hisilicon HiP04 Debug UART"
360 depends on ARCH_HIP04
361 select DEBUG_UART_8250
362 help
363 Say Y here if you want kernel low-level debugging support
364 on HIP04 UART.
365
366 config DEBUG_HIX5HD2_UART
367 bool "Hisilicon Hix5hd2 Debug UART"
368 depends on ARCH_HIX5HD2
369 select DEBUG_UART_PL01X
370 help
371 Say Y here if you want kernel low-level debugging support
372 on Hix5hd2 UART.
373
374 config DEBUG_IMX1_UART
375 bool "i.MX1 Debug UART"
376 depends on SOC_IMX1
377 help
378 Say Y here if you want kernel low-level debugging support
379 on i.MX1.
380
381 config DEBUG_IMX23_UART
382 bool "i.MX23 Debug UART"
383 depends on SOC_IMX23
384 select DEBUG_UART_PL01X
385 help
386 Say Y here if you want kernel low-level debugging support
387 on i.MX23.
388
389 config DEBUG_IMX25_UART
390 bool "i.MX25 Debug UART"
391 depends on SOC_IMX25
392 help
393 Say Y here if you want kernel low-level debugging support
394 on i.MX25.
395
396 config DEBUG_IMX21_IMX27_UART
397 bool "i.MX21 and i.MX27 Debug UART"
398 depends on SOC_IMX21 || SOC_IMX27
399 help
400 Say Y here if you want kernel low-level debugging support
401 on i.MX21 or i.MX27.
402
403 config DEBUG_IMX28_UART
404 bool "i.MX28 Debug UART"
405 depends on SOC_IMX28
406 select DEBUG_UART_PL01X
407 help
408 Say Y here if you want kernel low-level debugging support
409 on i.MX28.
410
411 config DEBUG_IMX31_UART
412 bool "i.MX31 Debug UART"
413 depends on SOC_IMX31
414 help
415 Say Y here if you want kernel low-level debugging support
416 on i.MX31.
417
418 config DEBUG_IMX35_UART
419 bool "i.MX35 Debug UART"
420 depends on SOC_IMX35
421 help
422 Say Y here if you want kernel low-level debugging support
423 on i.MX35.
424
425 config DEBUG_IMX50_UART
426 bool "i.MX50 Debug UART"
427 depends on SOC_IMX50
428 help
429 Say Y here if you want kernel low-level debugging support
430 on i.MX50.
431
432 config DEBUG_IMX51_UART
433 bool "i.MX51 Debug UART"
434 depends on SOC_IMX51
435 help
436 Say Y here if you want kernel low-level debugging support
437 on i.MX51.
438
439 config DEBUG_IMX53_UART
440 bool "i.MX53 Debug UART"
441 depends on SOC_IMX53
442 help
443 Say Y here if you want kernel low-level debugging support
444 on i.MX53.
445
446 config DEBUG_IMX6Q_UART
447 bool "i.MX6Q/DL Debug UART"
448 depends on SOC_IMX6Q
449 help
450 Say Y here if you want kernel low-level debugging support
451 on i.MX6Q/DL.
452
453 config DEBUG_IMX6SL_UART
454 bool "i.MX6SL Debug UART"
455 depends on SOC_IMX6SL
456 help
457 Say Y here if you want kernel low-level debugging support
458 on i.MX6SL.
459
460 config DEBUG_IMX6SX_UART
461 bool "i.MX6SX Debug UART"
462 depends on SOC_IMX6SX
463 help
464 Say Y here if you want kernel low-level debugging support
465 on i.MX6SX.
466
467 config DEBUG_IMX6UL_UART
468 bool "i.MX6UL Debug UART"
469 depends on SOC_IMX6UL
470 help
471 Say Y here if you want kernel low-level debugging support
472 on i.MX6UL.
473
474 config DEBUG_IMX7D_UART
475 bool "i.MX7D Debug UART"
476 depends on SOC_IMX7D
477 help
478 Say Y here if you want kernel low-level debugging support
479 on i.MX7D.
480
481 config DEBUG_INTEGRATOR
482 bool "Kernel low-level debugging messages via ARM Integrator UART"
483 depends on ARCH_INTEGRATOR
484 select DEBUG_UART_PL01X
485 help
486 Say Y here if you want kernel low-level debugging support
487 on ARM Integrator platforms.
488
489 config DEBUG_KEYSTONE_UART0
490 bool "Kernel low-level debugging on KEYSTONE2 using UART0"
491 depends on ARCH_KEYSTONE
492 select DEBUG_UART_8250
493 help
494 Say Y here if you want the debug print routines to direct
495 their output to UART0 serial port on KEYSTONE2 devices.
496
497 config DEBUG_KEYSTONE_UART1
498 bool "Kernel low-level debugging on KEYSTONE2 using UART1"
499 depends on ARCH_KEYSTONE
500 select DEBUG_UART_8250
501 help
502 Say Y here if you want the debug print routines to direct
503 their output to UART1 serial port on KEYSTONE2 devices.
504
505 config DEBUG_KS8695_UART
506 bool "KS8695 Debug UART"
507 depends on ARCH_KS8695
508 help
509 Say Y here if you want kernel low-level debugging support
510 on KS8695.
511
512 config DEBUG_LPC18XX_UART0
513 bool "Kernel low-level debugging via LPC18xx/43xx UART0"
514 depends on ARCH_LPC18XX
515 select DEBUG_UART_8250
516 help
517 Say Y here if you want kernel low-level debugging support
518 on NXP LPC18xx/43xx UART0.
519
520 config DEBUG_LPC32XX
521 bool "Kernel low-level debugging messages via NXP LPC32xx UART"
522 depends on ARCH_LPC32XX
523 select DEBUG_UART_8250
524 help
525 Say Y here if you want kernel low-level debugging support
526 on NXP LPC32xx based platforms.
527
528 config DEBUG_MESON_UARTAO
529 bool "Kernel low-level debugging via Meson6 UARTAO"
530 depends on ARCH_MESON
531 help
532 Say Y here if you want kernel low-lever debugging support
533 on Amlogic Meson6 based platforms on the UARTAO.
534
535 config DEBUG_MMP_UART2
536 bool "Kernel low-level debugging message via MMP UART2"
537 depends on ARCH_MMP
538 select DEBUG_UART_8250
539 help
540 Say Y here if you want kernel low-level debugging support
541 on MMP UART2.
542
543 config DEBUG_MMP_UART3
544 bool "Kernel low-level debugging message via MMP UART3"
545 depends on ARCH_MMP
546 select DEBUG_UART_8250
547 help
548 Say Y here if you want kernel low-level debugging support
549 on MMP UART3.
550
551 config DEBUG_MVEBU_UART0
552 bool "Kernel low-level debugging messages via MVEBU UART0 (old bootloaders)"
553 depends on ARCH_MVEBU
554 depends on ARCH_MVEBU && CPU_V7
555 select DEBUG_UART_8250
556 help
557 Say Y here if you want kernel low-level debugging support
558 on MVEBU based platforms on UART0.
559
560 This option should be used with the old bootloaders
561 that left the internal registers mapped at
562 0xd0000000. As of today, this is the case on
563 platforms such as the Globalscale Mirabox or the
564 Plathome OpenBlocks AX3, when using the original
565 bootloader.
566
567 This option will not work on older Marvell platforms
568 (Kirkwood, Dove, MV78xx0, Orion5x), which should pick
569 the "new bootloader" variant.
570
571 If the wrong DEBUG_MVEBU_UART* option is selected,
572 when u-boot hands over to the kernel, the system
573 silently crashes, with no serial output at all.
574
575 config DEBUG_MVEBU_UART0_ALTERNATE
576 bool "Kernel low-level debugging messages via MVEBU UART0 (new bootloaders)"
577 depends on ARCH_MVEBU || ARCH_DOVE || ARCH_MV78XX0 || ARCH_ORION5X
578 select DEBUG_UART_8250
579 help
580 Say Y here if you want kernel low-level debugging support
581 on MVEBU based platforms on UART0. (Armada XP, Armada 3xx,
582 Kirkwood, Dove, MV78xx0, Orion5x).
583
584
585 This option should be used with the new bootloaders
586 that remap the internal registers at 0xf1000000.
587
588 If the wrong DEBUG_MVEBU_UART* option is selected,
589 when u-boot hands over to the kernel, the system
590 silently crashes, with no serial output at all.
591
592 config DEBUG_MVEBU_UART1_ALTERNATE
593 bool "Kernel low-level debugging messages via MVEBU UART1 (new bootloaders)"
594 depends on ARCH_MVEBU
595 select DEBUG_UART_8250
596 help
597 Say Y here if you want kernel low-level debugging support
598 on MVEBU based platforms on UART1. (Armada XP, Armada 3xx,
599 Kirkwood, Dove, MV78xx0, Orion5x).
600
601 This option should be used with the new bootloaders
602 that remap the internal registers at 0xf1000000.
603 All of the older (pre Armada XP/370) platforms also use
604 this address, regardless of the boot loader version.
605
606 If the wrong DEBUG_MVEBU_UART* option is selected,
607 when u-boot hands over to the kernel, the system
608 silently crashes, with no serial output at all.
609
610 config DEBUG_MT6589_UART0
611 bool "Mediatek mt6589 UART0"
612 depends on ARCH_MEDIATEK
613 select DEBUG_UART_8250
614 help
615 Say Y here if you want kernel low-level debugging support
616 for Mediatek mt6589 based platforms on UART0.
617
618 config DEBUG_MT8127_UART0
619 bool "Mediatek mt8127/mt6592 UART0"
620 depends on ARCH_MEDIATEK
621 select DEBUG_UART_8250
622 help
623 Say Y here if you want kernel low-level debugging support
624 for Mediatek mt8127 based platforms on UART0.
625
626 config DEBUG_MT8135_UART3
627 bool "Mediatek mt8135 UART3"
628 depends on ARCH_MEDIATEK
629 select DEBUG_UART_8250
630 help
631 Say Y here if you want kernel low-level debugging support
632 for Mediatek mt8135 based platforms on UART3.
633
634 config DEBUG_NETX_UART
635 bool "Kernel low-level debugging messages via NetX UART"
636 depends on ARCH_NETX
637 help
638 Say Y here if you want kernel low-level debugging support
639 on Hilscher NetX based platforms.
640
641 config DEBUG_NOMADIK_UART
642 bool "Kernel low-level debugging messages via NOMADIK UART"
643 depends on ARCH_NOMADIK
644 select DEBUG_UART_PL01X
645 help
646 Say Y here if you want kernel low-level debugging support
647 on NOMADIK based platforms.
648
649 config DEBUG_NSPIRE_CLASSIC_UART
650 bool "Kernel low-level debugging via TI-NSPIRE 8250 UART"
651 depends on ARCH_NSPIRE
652 select DEBUG_UART_8250
653 help
654 Say Y here if you want kernel low-level debugging support
655 on TI-NSPIRE classic models.
656
657 config DEBUG_NSPIRE_CX_UART
658 bool "Kernel low-level debugging via TI-NSPIRE PL011 UART"
659 depends on ARCH_NSPIRE
660 select DEBUG_UART_PL01X
661 help
662 Say Y here if you want kernel low-level debugging support
663 on TI-NSPIRE CX models.
664
665 config DEBUG_OMAP1UART1
666 bool "Kernel low-level debugging via OMAP1 UART1"
667 depends on ARCH_OMAP1
668 select DEBUG_UART_8250
669 help
670 Say Y here if you want kernel low-level debugging support
671 on OMAP1 based platforms (except OMAP730) on the UART1.
672
673 config DEBUG_OMAP1UART2
674 bool "Kernel low-level debugging via OMAP1 UART2"
675 depends on ARCH_OMAP1
676 select DEBUG_UART_8250
677 help
678 Say Y here if you want kernel low-level debugging support
679 on OMAP1 based platforms (except OMAP730) on the UART2.
680
681 config DEBUG_OMAP1UART3
682 bool "Kernel low-level debugging via OMAP1 UART3"
683 depends on ARCH_OMAP1
684 select DEBUG_UART_8250
685 help
686 Say Y here if you want kernel low-level debugging support
687 on OMAP1 based platforms (except OMAP730) on the UART3.
688
689 config DEBUG_OMAP2UART1
690 bool "OMAP2/3/4 UART1 (omap2/3 sdp boards and some omap3 boards)"
691 depends on ARCH_OMAP2PLUS
692 select DEBUG_UART_8250
693 help
694 This covers at least h4, 2430sdp, 3430sdp, 3630sdp,
695 omap3 torpedo and 3530 lv som.
696
697 config DEBUG_OMAP2UART2
698 bool "Kernel low-level debugging messages via OMAP2/3/4 UART2"
699 depends on ARCH_OMAP2PLUS
700 select DEBUG_UART_8250
701
702 config DEBUG_OMAP2UART3
703 bool "Kernel low-level debugging messages via OMAP2 UART3 (n8x0)"
704 depends on ARCH_OMAP2PLUS
705 select DEBUG_UART_8250
706
707 config DEBUG_OMAP3UART3
708 bool "Kernel low-level debugging messages via OMAP3 UART3 (most omap3 boards)"
709 depends on ARCH_OMAP2PLUS
710 select DEBUG_UART_8250
711 help
712 This covers at least cm_t3x, beagle, crane, devkit8000,
713 igep00x0, ldp, n900, n9(50), pandora, overo, touchbook,
714 and 3517evm.
715
716 config DEBUG_OMAP4UART3
717 bool "Kernel low-level debugging messages via OMAP4/5 UART3 (omap4 blaze, panda, omap5 sevm)"
718 depends on ARCH_OMAP2PLUS
719 select DEBUG_UART_8250
720
721 config DEBUG_OMAP3UART4
722 bool "Kernel low-level debugging messages via OMAP36XX UART4"
723 depends on ARCH_OMAP2PLUS
724 select DEBUG_UART_8250
725
726 config DEBUG_OMAP4UART4
727 bool "Kernel low-level debugging messages via OMAP4/5 UART4"
728 depends on ARCH_OMAP2PLUS
729 select DEBUG_UART_8250
730
731 config DEBUG_OMAP7XXUART1
732 bool "Kernel low-level debugging via OMAP730 UART1"
733 depends on ARCH_OMAP730
734 select DEBUG_UART_8250
735 help
736 Say Y here if you want kernel low-level debugging support
737 on OMAP730 based platforms on the UART1.
738
739 config DEBUG_OMAP7XXUART2
740 bool "Kernel low-level debugging via OMAP730 UART2"
741 depends on ARCH_OMAP730
742 select DEBUG_UART_8250
743 help
744 Say Y here if you want kernel low-level debugging support
745 on OMAP730 based platforms on the UART2.
746
747 config DEBUG_OMAP7XXUART3
748 bool "Kernel low-level debugging via OMAP730 UART3"
749 depends on ARCH_OMAP730
750 select DEBUG_UART_8250
751 help
752 Say Y here if you want kernel low-level debugging support
753 on OMAP730 based platforms on the UART3.
754
755 config DEBUG_TI81XXUART1
756 bool "Kernel low-level debugging messages via TI81XX UART1 (ti8148evm)"
757 depends on ARCH_OMAP2PLUS
758 select DEBUG_UART_8250
759
760 config DEBUG_TI81XXUART2
761 bool "Kernel low-level debugging messages via TI81XX UART2"
762 depends on ARCH_OMAP2PLUS
763 select DEBUG_UART_8250
764
765 config DEBUG_TI81XXUART3
766 bool "Kernel low-level debugging messages via TI81XX UART3 (ti8168evm)"
767 depends on ARCH_OMAP2PLUS
768 select DEBUG_UART_8250
769
770 config DEBUG_AM33XXUART1
771 bool "Kernel low-level debugging messages via AM33XX UART1"
772 depends on ARCH_OMAP2PLUS
773 select DEBUG_UART_8250
774
775 config DEBUG_ZOOM_UART
776 bool "Kernel low-level debugging messages via Zoom2/3 UART"
777 depends on ARCH_OMAP2PLUS
778 select DEBUG_OMAP2PLUS_UART
779
780 config DEBUG_PICOXCELL_UART
781 depends on ARCH_PICOXCELL
782 bool "Use PicoXcell UART for low-level debug"
783 select DEBUG_UART_8250
784 help
785 Say Y here if you want kernel low-level debugging support
786 on PicoXcell based platforms.
787
788 config DEBUG_PXA_UART1
789 depends on ARCH_PXA
790 bool "Use PXA UART1 for low-level debug"
791 select DEBUG_UART_8250
792 help
793 Say Y here if you want kernel low-level debugging support
794 on PXA UART1.
795
796 config DEBUG_QCOM_UARTDM
797 bool "Kernel low-level debugging messages via QCOM UARTDM"
798 depends on ARCH_QCOM
799 help
800 Say Y here if you want the debug print routines to direct
801 their output to the serial port on Qualcomm devices.
802
803 ARCH DEBUG_UART_PHYS DEBUG_UART_VIRT
804 APQ8064 0x16640000 0xf0040000
805 APQ8084 0xf995e000 0xfa75e000
806 IPQ4019 0x078af000 0xf78af000
807 MSM8X60 0x19c40000 0xf0040000
808 MSM8960 0x16440000 0xf0040000
809 MSM8974 0xf991e000 0xfa71e000
810
811 Please adjust DEBUG_UART_PHYS and DEBUG_UART_BASE configuration
812 options based on your needs.
813
814 config DEBUG_REALVIEW_STD_PORT
815 bool "RealView Default UART"
816 depends on ARCH_REALVIEW
817 select DEBUG_UART_PL01X
818 help
819 Say Y here if you want the debug print routines to direct
820 their output to the serial port on RealView EB, PB11MP, PBA8
821 and PBX platforms.
822
823 config DEBUG_REALVIEW_PB1176_PORT
824 bool "RealView PB1176 UART"
825 depends on MACH_REALVIEW_PB1176
826 select DEBUG_UART_PL01X
827 help
828 Say Y here if you want the debug print routines to direct
829 their output to the standard serial port on the RealView
830 PB1176 platform.
831
832 config DEBUG_RV1108_UART0
833 bool "Kernel low-level debugging messages via Rockchip RV1108 UART0"
834 depends on ARCH_ROCKCHIP
835 select DEBUG_UART_8250
836 help
837 Say Y here if you want kernel low-level debugging support
838 on Rockchip RV1108 based platforms.
839
840 config DEBUG_RV1108_UART1
841 bool "Kernel low-level debugging messages via Rockchip RV1108 UART1"
842 depends on ARCH_ROCKCHIP
843 select DEBUG_UART_8250
844 help
845 Say Y here if you want kernel low-level debugging support
846 on Rockchip RV1108 based platforms.
847
848 config DEBUG_RV1108_UART2
849 bool "Kernel low-level debugging messages via Rockchip RV1108 UART2"
850 depends on ARCH_ROCKCHIP
851 select DEBUG_UART_8250
852 help
853 Say Y here if you want kernel low-level debugging support
854 on Rockchip RV1108 based platforms.
855
856 config DEBUG_RK29_UART0
857 bool "Kernel low-level debugging messages via Rockchip RK29 UART0"
858 depends on ARCH_ROCKCHIP
859 select DEBUG_UART_8250
860 help
861 Say Y here if you want kernel low-level debugging support
862 on Rockchip based platforms.
863
864 config DEBUG_RK29_UART1
865 bool "Kernel low-level debugging messages via Rockchip RK29 UART1"
866 depends on ARCH_ROCKCHIP
867 select DEBUG_UART_8250
868 help
869 Say Y here if you want kernel low-level debugging support
870 on Rockchip based platforms.
871
872 config DEBUG_RK29_UART2
873 bool "Kernel low-level debugging messages via Rockchip RK29 UART2"
874 depends on ARCH_ROCKCHIP
875 select DEBUG_UART_8250
876 help
877 Say Y here if you want kernel low-level debugging support
878 on Rockchip based platforms.
879
880 config DEBUG_RK3X_UART0
881 bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART0"
882 depends on ARCH_ROCKCHIP
883 select DEBUG_UART_8250
884 help
885 Say Y here if you want kernel low-level debugging support
886 on Rockchip based platforms.
887
888 config DEBUG_RK3X_UART1
889 bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART1"
890 depends on ARCH_ROCKCHIP
891 select DEBUG_UART_8250
892 help
893 Say Y here if you want kernel low-level debugging support
894 on Rockchip based platforms.
895
896 config DEBUG_RK3X_UART2
897 bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART2"
898 depends on ARCH_ROCKCHIP
899 select DEBUG_UART_8250
900 help
901 Say Y here if you want kernel low-level debugging support
902 on Rockchip based platforms.
903
904 config DEBUG_RK3X_UART3
905 bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART3"
906 depends on ARCH_ROCKCHIP
907 select DEBUG_UART_8250
908 help
909 Say Y here if you want kernel low-level debugging support
910 on Rockchip based platforms.
911
912 config DEBUG_RK32_UART2
913 bool "Kernel low-level debugging messages via Rockchip RK32 UART2"
914 depends on ARCH_ROCKCHIP
915 select DEBUG_UART_8250
916 help
917 Say Y here if you want kernel low-level debugging support
918 on Rockchip RK32xx based platforms.
919
920 config DEBUG_R7S72100_SCIF2
921 bool "Kernel low-level debugging messages via SCIF2 on R7S72100"
922 depends on ARCH_R7S72100
923 help
924 Say Y here if you want kernel low-level debugging support
925 via SCIF2 on Renesas RZ/A1H (R7S72100).
926
927 config DEBUG_RCAR_GEN1_SCIF0
928 bool "Kernel low-level debugging messages via SCIF0 on R8A7778"
929 depends on ARCH_R8A7778
930 help
931 Say Y here if you want kernel low-level debugging support
932 via SCIF0 on Renesas R-Car M1A (R8A7778).
933
934 config DEBUG_RCAR_GEN1_SCIF2
935 bool "Kernel low-level debugging messages via SCIF2 on R8A7779"
936 depends on ARCH_R8A7779
937 help
938 Say Y here if you want kernel low-level debugging support
939 via SCIF2 on Renesas R-Car H1 (R8A7779).
940
941 config DEBUG_RCAR_GEN2_SCIF0
942 bool "Kernel low-level debugging messages via SCIF0 on R-Car Gen2 and RZ/G1"
943 depends on ARCH_R8A7743 || ARCH_R8A7790 || ARCH_R8A7791 || \
944 ARCH_R8A7792 || ARCH_R8A7793
945 help
946 Say Y here if you want kernel low-level debugging support
947 via SCIF0 on Renesas RZ/G1M (R8A7743), R-Car H2 (R8A7790),
948 M2-W (R8A7791), V2H (R8A7792), or M2-N (R8A7793).
949
950 config DEBUG_RCAR_GEN2_SCIF1
951 bool "Kernel low-level debugging messages via SCIF1 on R8A77470"
952 depends on ARCH_R8A77470
953 help
954 Say Y here if you want kernel low-level debugging support
955 via SCIF1 on Renesas RZ/G1C (R8A77470).
956
957 config DEBUG_RCAR_GEN2_SCIF2
958 bool "Kernel low-level debugging messages via SCIF2 on R8A7794"
959 depends on ARCH_R8A7794
960 help
961 Say Y here if you want kernel low-level debugging support
962 via SCIF2 on Renesas R-Car E2 (R8A7794).
963
964 config DEBUG_RCAR_GEN2_SCIF4
965 bool "Kernel low-level debugging messages via SCIF4 on R8A7745"
966 depends on ARCH_R8A7745
967 help
968 Say Y here if you want kernel low-level debugging support
969 via SCIF4 on Renesas RZ/G1E (R8A7745).
970
971 config DEBUG_RMOBILE_SCIFA0
972 bool "Kernel low-level debugging messages via SCIFA0 on R8A73A4"
973 depends on ARCH_R8A73A4
974 help
975 Say Y here if you want kernel low-level debugging support
976 via SCIFA0 on Renesas R-Mobile APE6 (R8A73A4).
977
978 config DEBUG_RMOBILE_SCIFA1
979 bool "Kernel low-level debugging messages via SCIFA1 on R8A7740"
980 depends on ARCH_R8A7740
981 help
982 Say Y here if you want kernel low-level debugging support
983 via SCIFA1 on Renesas R-Mobile A1 (R8A7740).
984
985 config DEBUG_RMOBILE_SCIFA4
986 bool "Kernel low-level debugging messages via SCIFA4 on SH73A0"
987 depends on ARCH_SH73A0
988 help
989 Say Y here if you want kernel low-level debugging support
990 via SCIFA4 on Renesas SH-Mobile AG5 (SH73A0).
991
992 config DEBUG_S3C_UART0
993 depends on PLAT_SAMSUNG
994 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
995 select DEBUG_S3C24XX_UART if ARCH_S3C24XX
996 select DEBUG_S3C64XX_UART if ARCH_S3C64XX
997 select DEBUG_S5PV210_UART if ARCH_S5PV210
998 bool "Use Samsung S3C UART 0 for low-level debug"
999 help
1000 Say Y here if you want the debug print routines to direct
1001 their output to UART 0. The port must have been initialised
1002 by the boot-loader before use.
1003
1004 config DEBUG_S3C_UART1
1005 depends on PLAT_SAMSUNG
1006 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
1007 select DEBUG_S3C24XX_UART if ARCH_S3C24XX
1008 select DEBUG_S3C64XX_UART if ARCH_S3C64XX
1009 select DEBUG_S5PV210_UART if ARCH_S5PV210
1010 bool "Use Samsung S3C UART 1 for low-level debug"
1011 help
1012 Say Y here if you want the debug print routines to direct
1013 their output to UART 1. The port must have been initialised
1014 by the boot-loader before use.
1015
1016 config DEBUG_S3C_UART2
1017 depends on PLAT_SAMSUNG
1018 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
1019 select DEBUG_S3C24XX_UART if ARCH_S3C24XX
1020 select DEBUG_S3C64XX_UART if ARCH_S3C64XX
1021 select DEBUG_S5PV210_UART if ARCH_S5PV210
1022 bool "Use Samsung S3C UART 2 for low-level debug"
1023 help
1024 Say Y here if you want the debug print routines to direct
1025 their output to UART 2. The port must have been initialised
1026 by the boot-loader before use.
1027
1028 config DEBUG_S3C_UART3
1029 depends on PLAT_SAMSUNG && (ARCH_EXYNOS || ARCH_S5PV210)
1030 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
1031 select DEBUG_S3C64XX_UART if ARCH_S3C64XX
1032 select DEBUG_S5PV210_UART if ARCH_S5PV210
1033 bool "Use Samsung S3C UART 3 for low-level debug"
1034 help
1035 Say Y here if you want the debug print routines to direct
1036 their output to UART 3. The port must have been initialised
1037 by the boot-loader before use.
1038
1039 config DEBUG_S3C2410_UART0
1040 depends on ARCH_S3C24XX
1041 select DEBUG_S3C2410_UART
1042 bool "Use S3C2410/S3C2412 UART 0 for low-level debug"
1043 help
1044 Say Y here if you want the debug print routines to direct
1045 their output to UART 0. The port must have been initialised
1046 by the boot-loader before use.
1047
1048 config DEBUG_S3C2410_UART1
1049 depends on ARCH_S3C24XX
1050 select DEBUG_S3C2410_UART
1051 bool "Use S3C2410/S3C2412 UART 1 for low-level debug"
1052 help
1053 Say Y here if you want the debug print routines to direct
1054 their output to UART 1. The port must have been initialised
1055 by the boot-loader before use.
1056
1057 config DEBUG_S3C2410_UART2
1058 depends on ARCH_S3C24XX
1059 select DEBUG_S3C2410_UART
1060 bool "Use S3C2410/S3C2412 UART 2 for low-level debug"
1061 help
1062 Say Y here if you want the debug print routines to direct
1063 their output to UART 2. The port must have been initialised
1064 by the boot-loader before use.
1065
1066 config DEBUG_SA1100
1067 depends on ARCH_SA1100
1068 bool "Use SA1100 UARTs for low-level debug"
1069 help
1070 Say Y here if you want kernel low-level debugging support
1071 on SA-11x0 UART ports. The kernel will check for the first
1072 enabled UART in a sequence 3-1-2.
1073
1074 config DEBUG_SOCFPGA_UART0
1075 depends on ARCH_SOCFPGA
1076 bool "Use SOCFPGA UART0 for low-level debug"
1077 select DEBUG_UART_8250
1078 help
1079 Say Y here if you want kernel low-level debugging support
1080 on SOCFPGA(Cyclone 5 and Arria 5) based platforms.
1081
1082 config DEBUG_SOCFPGA_ARRIA10_UART1
1083 depends on ARCH_SOCFPGA
1084 bool "Use SOCFPGA Arria10 UART1 for low-level debug"
1085 select DEBUG_UART_8250
1086 help
1087 Say Y here if you want kernel low-level debugging support
1088 on SOCFPGA(Arria 10) based platforms.
1089
1090 config DEBUG_SOCFPGA_CYCLONE5_UART1
1091 depends on ARCH_SOCFPGA
1092 bool "Use SOCFPGA Cyclone 5 UART1 for low-level debug"
1093 select DEBUG_UART_8250
1094 help
1095 Say Y here if you want kernel low-level debugging support
1096 on SOCFPGA(Cyclone 5 and Arria 5) based platforms.
1097
1098 config DEBUG_SUN9I_UART0
1099 bool "Kernel low-level debugging messages via sun9i UART0"
1100 depends on MACH_SUN9I
1101 select DEBUG_UART_8250
1102 help
1103 Say Y here if you want kernel low-level debugging support
1104 on Allwinner A80 based platforms on the UART0.
1105
1106 config DEBUG_SUNXI_UART0
1107 bool "Kernel low-level debugging messages via sunXi UART0"
1108 depends on ARCH_SUNXI
1109 select DEBUG_UART_8250
1110 help
1111 Say Y here if you want kernel low-level debugging support
1112 on Allwinner A1X based platforms on the UART0.
1113
1114 config DEBUG_SUNXI_UART1
1115 bool "Kernel low-level debugging messages via sunXi UART1"
1116 depends on ARCH_SUNXI
1117 select DEBUG_UART_8250
1118 help
1119 Say Y here if you want kernel low-level debugging support
1120 on Allwinner A1X based platforms on the UART1.
1121
1122 config DEBUG_SUNXI_R_UART
1123 bool "Kernel low-level debugging messages via sunXi R_UART"
1124 depends on MACH_SUN6I || MACH_SUN8I
1125 select DEBUG_UART_8250
1126 help
1127 Say Y here if you want kernel low-level debugging support
1128 on Allwinner A31/A23 based platforms on the R_UART.
1129
1130 config DEBUG_SIRFPRIMA2_UART1
1131 bool "Kernel low-level debugging messages via SiRFprimaII UART1"
1132 depends on ARCH_PRIMA2
1133 select DEBUG_SIRFSOC_UART
1134 help
1135 Say Y here if you want the debug print routines to direct
1136 their output to the uart1 port on SiRFprimaII devices.
1137
1138 config DEBUG_SIRFATLAS7_UART0
1139 bool "Kernel low-level debugging messages via SiRFatlas7 UART0"
1140 depends on ARCH_ATLAS7
1141 select DEBUG_SIRFSOC_UART
1142 help
1143 Say Y here if you want the debug print routines to direct
1144 their output to the uart0 port on SiRFATLAS7 devices.The uart0
1145 is used on SiRFATLAS7 as a extra debug port.sometimes an extra
1146 debug port can be very useful.
1147
1148 config DEBUG_SIRFATLAS7_UART1
1149 bool "Kernel low-level debugging messages via SiRFatlas7 UART1"
1150 depends on ARCH_ATLAS7
1151 select DEBUG_SIRFSOC_UART
1152 help
1153 Say Y here if you want the debug print routines to direct
1154 their output to the uart1 port on SiRFATLAS7 devices.
1155
1156 config DEBUG_SPEAR3XX
1157 bool "Kernel low-level debugging messages via ST SPEAr 3xx/6xx UART"
1158 depends on ARCH_SPEAR3XX || ARCH_SPEAR6XX
1159 select DEBUG_UART_PL01X
1160 help
1161 Say Y here if you want kernel low-level debugging support
1162 on ST SPEAr based platforms.
1163
1164 config DEBUG_SPEAR13XX
1165 bool "Kernel low-level debugging messages via ST SPEAr 13xx UART"
1166 depends on ARCH_SPEAR13XX
1167 select DEBUG_UART_PL01X
1168 help
1169 Say Y here if you want kernel low-level debugging support
1170 on ST SPEAr13xx based platforms.
1171
1172 config STIH41X_DEBUG_ASC2
1173 bool "Use StiH415/416 ASC2 UART for low-level debug"
1174 depends on ARCH_STI
1175 select DEBUG_STI_UART
1176 help
1177 Say Y here if you want kernel low-level debugging support
1178 on STiH415/416 based platforms like b2000, which has
1179 default UART wired up to ASC2.
1180
1181 If unsure, say N.
1182
1183 config STIH41X_DEBUG_SBC_ASC1
1184 bool "Use StiH415/416 SBC ASC1 UART for low-level debug"
1185 depends on ARCH_STI
1186 select DEBUG_STI_UART
1187 help
1188 Say Y here if you want kernel low-level debugging support
1189 on STiH415/416 based platforms like b2020. which has
1190 default UART wired up to SBC ASC1.
1191
1192 If unsure, say N.
1193
1194 config TEGRA_DEBUG_UART_AUTO_ODMDATA
1195 bool "Kernel low-level debugging messages via Tegra UART via ODMDATA"
1196 depends on ARCH_TEGRA
1197 select DEBUG_TEGRA_UART
1198 help
1199 Automatically determines which UART to use for low-level
1200 debug based on the ODMDATA value. This value is part of
1201 the BCT, and is written to the boot memory device using
1202 nvflash, or other flashing tool. When bits 19:18 are 3,
1203 then bits 17:15 indicate which UART to use; 0/1/2/3/4
1204 are UART A/B/C/D/E.
1205
1206 config TEGRA_DEBUG_UARTA
1207 bool "Kernel low-level debugging messages via Tegra UART A"
1208 depends on ARCH_TEGRA
1209 select DEBUG_TEGRA_UART
1210 help
1211 Say Y here if you want kernel low-level debugging support
1212 on Tegra based platforms.
1213
1214 config TEGRA_DEBUG_UARTB
1215 bool "Kernel low-level debugging messages via Tegra UART B"
1216 depends on ARCH_TEGRA
1217 select DEBUG_TEGRA_UART
1218 help
1219 Say Y here if you want kernel low-level debugging support
1220 on Tegra based platforms.
1221
1222 config TEGRA_DEBUG_UARTC
1223 bool "Kernel low-level debugging messages via Tegra UART C"
1224 depends on ARCH_TEGRA
1225 select DEBUG_TEGRA_UART
1226 help
1227 Say Y here if you want kernel low-level debugging support
1228 on Tegra based platforms.
1229
1230 config TEGRA_DEBUG_UARTD
1231 bool "Kernel low-level debugging messages via Tegra UART D"
1232 depends on ARCH_TEGRA
1233 select DEBUG_TEGRA_UART
1234 help
1235 Say Y here if you want kernel low-level debugging support
1236 on Tegra based platforms.
1237
1238 config TEGRA_DEBUG_UARTE
1239 bool "Kernel low-level debugging messages via Tegra UART E"
1240 depends on ARCH_TEGRA
1241 select DEBUG_TEGRA_UART
1242 help
1243 Say Y here if you want kernel low-level debugging support
1244 on Tegra based platforms.
1245
1246 config DEBUG_U300_UART
1247 bool "Kernel low-level debugging messages via U300 UART0"
1248 depends on ARCH_U300
1249 select DEBUG_UART_PL01X
1250 help
1251 Say Y here if you want the debug print routines to direct
1252 their output to the uart port on U300 devices.
1253
1254 config DEBUG_UX500_UART
1255 depends on ARCH_U8500
1256 bool "Use Ux500 UART for low-level debug"
1257 help
1258 Say Y here if you want kernel low-level debugging support
1259 on Ux500 based platforms.
1260
1261 config DEBUG_VERSATILE
1262 bool "Kernel low-level debugging messages via ARM Versatile UART"
1263 depends on ARCH_VERSATILE
1264 select DEBUG_UART_PL01X
1265 help
1266 Say Y here if you want kernel low-level debugging support
1267 on ARM Versatile platforms.
1268
1269 config DEBUG_VEXPRESS_UART0_DETECT
1270 bool "Autodetect UART0 on Versatile Express Cortex-A core tiles"
1271 depends on ARCH_VEXPRESS && CPU_CP15_MMU
1272 help
1273 This option enables a simple heuristic which tries to determine
1274 the motherboard's memory map variant (original or RS1) and then
1275 choose the relevant UART0 base address.
1276
1277 Note that this will only work with standard A-class core tiles,
1278 and may fail with non-standard SMM or custom software models.
1279
1280 config DEBUG_VEXPRESS_UART0_CA9
1281 bool "Use PL011 UART0 at 0x10009000 (V2P-CA9 core tile)"
1282 depends on ARCH_VEXPRESS
1283 select DEBUG_UART_PL01X
1284 help
1285 This option selects UART0 at 0x10009000. Except for custom models,
1286 this applies only to the V2P-CA9 tile.
1287
1288 config DEBUG_VEXPRESS_UART0_RS1
1289 bool "Use PL011 UART0 at 0x1c090000 (RS1 complaint tiles)"
1290 depends on ARCH_VEXPRESS
1291 select DEBUG_UART_PL01X
1292 help
1293 This option selects UART0 at 0x1c090000. This applies to most
1294 of the tiles using the RS1 memory map, including all new A-class
1295 core tiles, FPGA-based SMMs and software models.
1296
1297 config DEBUG_VEXPRESS_UART0_CRX
1298 bool "Use PL011 UART0 at 0xb0090000 (Cortex-R compliant tiles)"
1299 depends on ARCH_VEXPRESS && !MMU
1300 select DEBUG_UART_PL01X
1301 help
1302 This option selects UART0 at 0xb0090000. This is appropriate for
1303 Cortex-R series tiles and SMMs, such as Cortex-R5 and Cortex-R7
1304
1305 config DEBUG_VF_UART
1306 bool "Vybrid UART"
1307 depends on SOC_VF610
1308 help
1309 Say Y here if you want kernel low-level debugging support
1310 on Vybrid based platforms.
1311
1312 config DEBUG_VT8500_UART0
1313 bool "Use UART0 on VIA/Wondermedia SoCs"
1314 depends on ARCH_VT8500
1315 help
1316 This option selects UART0 on VIA/Wondermedia System-on-a-chip
1317 devices, including VT8500, WM8505, WM8650 and WM8850.
1318
1319 config DEBUG_ZTE_ZX
1320 bool "Use ZTE ZX UART"
1321 select DEBUG_UART_PL01X
1322 depends on ARCH_ZX
1323 help
1324 Say Y here if you are enabling ZTE ZX296702 SOC and need
1325 debug uart support.
1326
1327 This option is preferred over the platform specific
1328 options; the platform specific options are deprecated
1329 and will be soon removed.
1330
1331 config DEBUG_ZYNQ_UART0
1332 bool "Kernel low-level debugging on Xilinx Zynq using UART0"
1333 depends on ARCH_ZYNQ
1334 help
1335 Say Y here if you want the debug print routines to direct
1336 their output to UART0 on the Zynq platform.
1337
1338 config DEBUG_ZYNQ_UART1
1339 bool "Kernel low-level debugging on Xilinx Zynq using UART1"
1340 depends on ARCH_ZYNQ
1341 help
1342 Say Y here if you want the debug print routines to direct
1343 their output to UART1 on the Zynq platform.
1344
1345 If you have a ZC702 board and want early boot messages to
1346 appear on the USB serial adaptor, select this option.
1347
1348 config DEBUG_ICEDCC
1349 bool "Kernel low-level debugging via EmbeddedICE DCC channel"
1350 help
1351 Say Y here if you want the debug print routines to direct
1352 their output to the EmbeddedICE macrocell's DCC channel using
1353 co-processor 14. This is known to work on the ARM9 style ICE
1354 channel and on the XScale with the PEEDI.
1355
1356 Note that the system will appear to hang during boot if there
1357 is nothing connected to read from the DCC.
1358
1359 config DEBUG_SEMIHOSTING
1360 bool "Kernel low-level debug output via semihosting I/O"
1361 help
1362 Semihosting enables code running on an ARM target to use
1363 the I/O facilities on a host debugger/emulator through a
1364 simple SVC call. The host debugger or emulator must have
1365 semihosting enabled for the special svc call to be trapped
1366 otherwise the kernel will crash.
1367
1368 This is known to work with OpenOCD, as well as
1369 ARM's Fast Models, or any other controlling environment
1370 that implements semihosting.
1371
1372 For more details about semihosting, please see
1373 chapter 8 of DUI0203I_rvct_developer_guide.pdf from ARM Ltd.
1374
1375 config DEBUG_LL_UART_8250
1376 bool "Kernel low-level debugging via 8250 UART"
1377 help
1378 Say Y here if you wish the debug print routes to direct
1379 their output to an 8250 UART. You can use this option
1380 to provide the parameters for the 8250 UART rather than
1381 selecting one of the platform specific options above if
1382 you know the parameters for the port.
1383
1384 This option is preferred over the platform specific
1385 options; the platform specific options are deprecated
1386 and will be soon removed.
1387
1388 config DEBUG_LL_UART_EFM32
1389 bool "Kernel low-level debugging via efm32 UART"
1390 depends on ARCH_EFM32
1391 help
1392 Say Y here if you want the debug print routines to direct
1393 their output to an UART or USART port on efm32 based
1394 machines. Use the following addresses for DEBUG_UART_PHYS:
1395
1396 0x4000c000 | USART0
1397 0x4000c400 | USART1
1398 0x4000c800 | USART2
1399 0x4000e000 | UART0
1400 0x4000e400 | UART1
1401
1402 config DEBUG_LL_UART_PL01X
1403 bool "Kernel low-level debugging via ARM Ltd PL01x Primecell UART"
1404 help
1405 Say Y here if you wish the debug print routes to direct
1406 their output to a PL01x Primecell UART. You can use
1407 this option to provide the parameters for the UART
1408 rather than selecting one of the platform specific
1409 options above if you know the parameters for the port.
1410
1411 This option is preferred over the platform specific
1412 options; the platform specific options are deprecated
1413 and will be soon removed.
1414
1415endchoice
1416
1417config DEBUG_AT91_UART
1418 bool
1419 depends on ARCH_AT91
1420
1421config DEBUG_EXYNOS_UART
1422 bool
1423
1424config DEBUG_S3C2410_UART
1425 bool
1426 select DEBUG_S3C24XX_UART
1427
1428config DEBUG_S3C24XX_UART
1429 bool
1430
1431config DEBUG_S3C64XX_UART
1432 bool
1433
1434config DEBUG_S5PV210_UART
1435 bool
1436
1437config DEBUG_OMAP2PLUS_UART
1438 bool
1439 depends on ARCH_OMAP2PLUS
1440
1441config DEBUG_IMX_UART_PORT
1442 int "i.MX Debug UART Port Selection"
1443 depends on DEBUG_IMX1_UART || \
1444 DEBUG_IMX25_UART || \
1445 DEBUG_IMX21_IMX27_UART || \
1446 DEBUG_IMX31_UART || \
1447 DEBUG_IMX35_UART || \
1448 DEBUG_IMX50_UART || \
1449 DEBUG_IMX51_UART || \
1450 DEBUG_IMX53_UART || \
1451 DEBUG_IMX6Q_UART || \
1452 DEBUG_IMX6SL_UART || \
1453 DEBUG_IMX6SX_UART || \
1454 DEBUG_IMX6UL_UART || \
1455 DEBUG_IMX7D_UART
1456 default 1
1457 help
1458 Choose UART port on which kernel low-level debug messages
1459 should be output.
1460
1461config DEBUG_VF_UART_PORT
1462 int "Vybrid Debug UART Port Selection" if DEBUG_VF_UART
1463 default 1
1464 range 0 3
1465 depends on SOC_VF610
1466 help
1467 Choose UART port on which kernel low-level debug messages
1468 should be output.
1469
1470config DEBUG_TEGRA_UART
1471 bool
1472 depends on ARCH_TEGRA
1473
1474config DEBUG_STI_UART
1475 bool
1476 depends on ARCH_STI
1477
1478config DEBUG_SIRFSOC_UART
1479 bool
1480 depends on ARCH_SIRF
1481
1482config DEBUG_LL_INCLUDE
1483 string
1484 default "debug/sa1100.S" if DEBUG_SA1100
1485 default "debug/palmchip.S" if DEBUG_UART_8250_PALMCHIP
1486 default "debug/8250.S" if DEBUG_LL_UART_8250 || DEBUG_UART_8250
1487 default "debug/at91.S" if DEBUG_AT91_UART
1488 default "debug/asm9260.S" if DEBUG_ASM9260_UART
1489 default "debug/clps711x.S" if DEBUG_CLPS711X_UART1 || DEBUG_CLPS711X_UART2
1490 default "debug/dc21285.S" if DEBUG_DC21285_PORT
1491 default "debug/meson.S" if DEBUG_MESON_UARTAO
1492 default "debug/pl01x.S" if DEBUG_LL_UART_PL01X || DEBUG_UART_PL01X
1493 default "debug/exynos.S" if DEBUG_EXYNOS_UART
1494 default "debug/efm32.S" if DEBUG_LL_UART_EFM32
1495 default "debug/icedcc.S" if DEBUG_ICEDCC
1496 default "debug/imx.S" if DEBUG_IMX1_UART || \
1497 DEBUG_IMX25_UART || \
1498 DEBUG_IMX21_IMX27_UART || \
1499 DEBUG_IMX31_UART || \
1500 DEBUG_IMX35_UART || \
1501 DEBUG_IMX50_UART || \
1502 DEBUG_IMX51_UART || \
1503 DEBUG_IMX53_UART ||\
1504 DEBUG_IMX6Q_UART || \
1505 DEBUG_IMX6SL_UART || \
1506 DEBUG_IMX6SX_UART || \
1507 DEBUG_IMX6UL_UART || \
1508 DEBUG_IMX7D_UART
1509 default "debug/ks8695.S" if DEBUG_KS8695_UART
1510 default "debug/msm.S" if DEBUG_QCOM_UARTDM
1511 default "debug/netx.S" if DEBUG_NETX_UART
1512 default "debug/omap2plus.S" if DEBUG_OMAP2PLUS_UART
1513 default "debug/renesas-scif.S" if DEBUG_R7S72100_SCIF2
1514 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN1_SCIF0
1515 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN1_SCIF2
1516 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF0
1517 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF1
1518 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF2
1519 default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF4
1520 default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA0
1521 default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA1
1522 default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA4
1523 default "debug/s3c24xx.S" if DEBUG_S3C24XX_UART || DEBUG_S3C64XX_UART
1524 default "debug/s5pv210.S" if DEBUG_S5PV210_UART
1525 default "debug/sirf.S" if DEBUG_SIRFSOC_UART
1526 default "debug/sti.S" if DEBUG_STI_UART
1527 default "debug/tegra.S" if DEBUG_TEGRA_UART
1528 default "debug/ux500.S" if DEBUG_UX500_UART
1529 default "debug/vexpress.S" if DEBUG_VEXPRESS_UART0_DETECT
1530 default "debug/vf.S" if DEBUG_VF_UART
1531 default "debug/vt8500.S" if DEBUG_VT8500_UART0
1532 default "debug/zynq.S" if DEBUG_ZYNQ_UART0 || DEBUG_ZYNQ_UART1
1533 default "debug/bcm63xx.S" if DEBUG_BCM63XX_UART
1534 default "debug/digicolor.S" if DEBUG_DIGICOLOR_UA0
1535 default "debug/brcmstb.S" if DEBUG_BRCMSTB_UART
1536 default "mach/debug-macro.S"
1537
1538# Compatibility options for PL01x
1539config DEBUG_UART_PL01X
1540 bool
1541
1542# Compatibility options for 8250
1543config DEBUG_UART_8250
1544 def_bool ARCH_EBSA110 || \
1545 ARCH_IOP13XX || ARCH_IOP32X || ARCH_IOP33X || ARCH_IXP4XX || \
1546 ARCH_RPC
1547
1548config DEBUG_UART_PHYS
1549 hex "Physical base address of debug UART"
1550 default 0x00100a00 if DEBUG_NETX_UART
1551 default 0x01c20000 if DEBUG_DAVINCI_DMx_UART0
1552 default 0x01c28000 if DEBUG_SUNXI_UART0
1553 default 0x01c28400 if DEBUG_SUNXI_UART1
1554 default 0x01d0c000 if DEBUG_DAVINCI_DA8XX_UART1
1555 default 0x01d0d000 if DEBUG_DAVINCI_DA8XX_UART2
1556 default 0x01f02800 if DEBUG_SUNXI_R_UART
1557 default 0x02530c00 if DEBUG_KEYSTONE_UART0
1558 default 0x02531000 if DEBUG_KEYSTONE_UART1
1559 default 0x03010fe0 if ARCH_RPC
1560 default 0x07000000 if DEBUG_SUN9I_UART0
1561 default 0x09405000 if DEBUG_ZTE_ZX
1562 default 0x10009000 if DEBUG_REALVIEW_STD_PORT || \
1563 DEBUG_VEXPRESS_UART0_CA9
1564 default 0x1010c000 if DEBUG_REALVIEW_PB1176_PORT
1565 default 0x10124000 if DEBUG_RK3X_UART0
1566 default 0x10126000 if DEBUG_RK3X_UART1
1567 default 0x101f1000 if DEBUG_VERSATILE
1568 default 0x101fb000 if DEBUG_NOMADIK_UART
1569 default 0x10210000 if DEBUG_RV1108_UART2
1570 default 0x10220000 if DEBUG_RV1108_UART1
1571 default 0x10230000 if DEBUG_RV1108_UART0
1572 default 0x11002000 if DEBUG_MT8127_UART0
1573 default 0x11006000 if DEBUG_MT6589_UART0
1574 default 0x11009000 if DEBUG_MT8135_UART3
1575 default 0x16000000 if DEBUG_INTEGRATOR
1576 default 0x18000300 if DEBUG_BCM_5301X
1577 default 0x18000400 if DEBUG_BCM_HR2
1578 default 0x18010000 if DEBUG_SIRFATLAS7_UART0
1579 default 0x18020000 if DEBUG_SIRFATLAS7_UART1
1580 default 0x18023000 if DEBUG_BCM_IPROC_UART3
1581 default 0x1c090000 if DEBUG_VEXPRESS_UART0_RS1
1582 default 0x20001000 if DEBUG_HIP01_UART
1583 default 0x20060000 if DEBUG_RK29_UART0
1584 default 0x20064000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
1585 default 0x20068000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
1586 default 0x20201000 if DEBUG_BCM2835
1587 default 0x3e000000 if DEBUG_BCM_KONA_UART
1588 default 0x3f201000 if DEBUG_BCM2836
1589 default 0x4000e400 if DEBUG_LL_UART_EFM32
1590 default 0x40028000 if DEBUG_AT91_SAMV7_USART1
1591 default 0x40081000 if DEBUG_LPC18XX_UART0
1592 default 0x40090000 if DEBUG_LPC32XX
1593 default 0x40100000 if DEBUG_PXA_UART1
1594 default 0x42000000 if DEBUG_GEMINI
1595 default 0x44e09000 if DEBUG_AM33XXUART1
1596 default 0x48020000 if DEBUG_OMAP4UART3 || DEBUG_TI81XXUART1
1597 default 0x48022000 if DEBUG_TI81XXUART2
1598 default 0x48024000 if DEBUG_TI81XXUART3
1599 default 0x4806a000 if DEBUG_OMAP2UART1 || DEBUG_OMAP3UART1 || \
1600 DEBUG_OMAP4UART1 || DEBUG_OMAP5UART1
1601 default 0x4806c000 if DEBUG_OMAP2UART2 || DEBUG_OMAP3UART2 || \
1602 DEBUG_OMAP4UART2 || DEBUG_OMAP5UART2
1603 default 0x4806e000 if DEBUG_OMAP2UART3 || DEBUG_OMAP4UART4
1604 default 0x49020000 if DEBUG_OMAP3UART3
1605 default 0x49042000 if DEBUG_OMAP3UART4
1606 default 0x50000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \
1607 DEBUG_S3C2410_UART0)
1608 default 0x50004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \
1609 DEBUG_S3C2410_UART1)
1610 default 0x50008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \
1611 DEBUG_S3C2410_UART2)
1612 default 0x78000000 if DEBUG_CNS3XXX
1613 default 0x7c0003f8 if DEBUG_FOOTBRIDGE_COM1
1614 default 0x7f005000 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART0
1615 default 0x7f005400 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART1
1616 default 0x7f005800 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART2
1617 default 0x7f005c00 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART3
1618 default 0x80010000 if DEBUG_ASM9260_UART
1619 default 0x80070000 if DEBUG_IMX23_UART
1620 default 0x80074000 if DEBUG_IMX28_UART
1621 default 0x80230000 if DEBUG_PICOXCELL_UART
1622 default 0x808c0000 if DEBUG_EP93XX || ARCH_EP93XX
1623 default 0x90020000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART
1624 default 0xb0060000 if DEBUG_SIRFPRIMA2_UART1
1625 default 0xb0090000 if DEBUG_VEXPRESS_UART0_CRX
1626 default 0xc0013000 if DEBUG_U300_UART
1627 default 0xc8000000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
1628 default 0xc8000003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
1629 default 0xd0000000 if DEBUG_SPEAR3XX
1630 default 0xd0012000 if DEBUG_MVEBU_UART0
1631 default 0xc81004c0 if DEBUG_MESON_UARTAO
1632 default 0xd4017000 if DEBUG_MMP_UART2
1633 default 0xd4018000 if DEBUG_MMP_UART3
1634 default 0xe0000000 if DEBUG_SPEAR13XX
1635 default 0xe4007000 if DEBUG_HIP04_UART
1636 default 0xe6c40000 if DEBUG_RMOBILE_SCIFA0
1637 default 0xe6c50000 if DEBUG_RMOBILE_SCIFA1
1638 default 0xe6c80000 if DEBUG_RMOBILE_SCIFA4
1639 default 0xe6e58000 if DEBUG_RCAR_GEN2_SCIF2
1640 default 0xe6e60000 if DEBUG_RCAR_GEN2_SCIF0
1641 default 0xe6e68000 if DEBUG_RCAR_GEN2_SCIF1
1642 default 0xe6ee0000 if DEBUG_RCAR_GEN2_SCIF4
1643 default 0xe8008000 if DEBUG_R7S72100_SCIF2
1644 default 0xf0000be0 if ARCH_EBSA110
1645 default 0xf1012000 if DEBUG_MVEBU_UART0_ALTERNATE
1646 default 0xf1012100 if DEBUG_MVEBU_UART1_ALTERNATE
1647 default 0xf7fc9000 if DEBUG_BERLIN_UART
1648 default 0xf8020000 if DEBUG_AT91_SAMA5D2_UART1
1649 default 0xf8b00000 if DEBUG_HIX5HD2_UART
1650 default 0xf991e000 if DEBUG_QCOM_UARTDM
1651 default 0xfc00c000 if DEBUG_AT91_SAMA5D4_USART3
1652 default 0xfcb00000 if DEBUG_HI3620_UART
1653 default 0xfd883000 if DEBUG_ALPINE_UART0
1654 default 0xfe800000 if ARCH_IOP32X
1655 default 0xff690000 if DEBUG_RK32_UART2
1656 default 0xffc02000 if DEBUG_SOCFPGA_UART0
1657 default 0xffc02100 if DEBUG_SOCFPGA_ARRIA10_UART1
1658 default 0xffc03000 if DEBUG_SOCFPGA_CYCLONE5_UART1
1659 default 0xffd82340 if ARCH_IOP13XX
1660 default 0xffe40000 if DEBUG_RCAR_GEN1_SCIF0
1661 default 0xffe42000 if DEBUG_RCAR_GEN1_SCIF2
1662 default 0xfff36000 if DEBUG_HIGHBANK_UART
1663 default 0xfffb0000 if DEBUG_OMAP1UART1 || DEBUG_OMAP7XXUART1
1664 default 0xfffb0800 if DEBUG_OMAP1UART2 || DEBUG_OMAP7XXUART2
1665 default 0xfffb9800 if DEBUG_OMAP1UART3 || DEBUG_OMAP7XXUART3
1666 default 0xfffe8600 if DEBUG_BCM63XX_UART
1667 default 0xffffee00 if DEBUG_AT91_SAM9263_DBGU
1668 default 0xfffff200 if DEBUG_AT91_RM9200_DBGU
1669 default 0xfffff700 if ARCH_IOP33X
1670 depends on ARCH_EP93XX || \
1671 DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
1672 DEBUG_LL_UART_EFM32 || \
1673 DEBUG_UART_8250 || DEBUG_UART_PL01X || DEBUG_MESON_UARTAO || \
1674 DEBUG_NETX_UART || \
1675 DEBUG_QCOM_UARTDM || DEBUG_R7S72100_SCIF2 || \
1676 DEBUG_RCAR_GEN1_SCIF0 || DEBUG_RCAR_GEN1_SCIF2 || \
1677 DEBUG_RCAR_GEN2_SCIF0 || DEBUG_RCAR_GEN2_SCIF1 || \
1678 DEBUG_RCAR_GEN2_SCIF2 || DEBUG_RCAR_GEN2_SCIF4 || \
1679 DEBUG_RMOBILE_SCIFA0 || DEBUG_RMOBILE_SCIFA1 || \
1680 DEBUG_RMOBILE_SCIFA4 || DEBUG_S3C24XX_UART || \
1681 DEBUG_S3C64XX_UART || \
1682 DEBUG_BCM63XX_UART || DEBUG_ASM9260_UART || \
1683 DEBUG_SIRFSOC_UART || DEBUG_DIGICOLOR_UA0 || \
1684 DEBUG_AT91_UART
1685
1686config DEBUG_UART_VIRT
1687 hex "Virtual base address of debug UART"
1688 default 0xc881f000 if DEBUG_RV1108_UART2
1689 default 0xc8821000 if DEBUG_RV1108_UART1
1690 default 0xc8912000 if DEBUG_RV1108_UART0
1691 default 0xe0000a00 if DEBUG_NETX_UART
1692 default 0xe0010fe0 if ARCH_RPC
1693 default 0xf0000be0 if ARCH_EBSA110
1694 default 0xf0010000 if DEBUG_ASM9260_UART
1695 default 0xf01fb000 if DEBUG_NOMADIK_UART
1696 default 0xf0201000 if DEBUG_BCM2835 || DEBUG_BCM2836
1697 default 0xf1000300 if DEBUG_BCM_5301X
1698 default 0xf1000400 if DEBUG_BCM_HR2
1699 default 0xf1002000 if DEBUG_MT8127_UART0
1700 default 0xf1006000 if DEBUG_MT6589_UART0
1701 default 0xf1009000 if DEBUG_MT8135_UART3
1702 default 0xf1023000 if DEBUG_BCM_IPROC_UART3
1703 default 0xf11f1000 if DEBUG_VERSATILE
1704 default 0xf1600000 if DEBUG_INTEGRATOR
1705 default 0xf1c28000 if DEBUG_SUNXI_UART0
1706 default 0xf1c28400 if DEBUG_SUNXI_UART1
1707 default 0xf1f02800 if DEBUG_SUNXI_R_UART
1708 default 0xf31004c0 if DEBUG_MESON_UARTAO
1709 default 0xf4090000 if DEBUG_LPC32XX
1710 default 0xf4200000 if DEBUG_GEMINI
1711 default 0xf6200000 if DEBUG_PXA_UART1
1712 default 0xf7000000 if DEBUG_SUN9I_UART0
1713 default 0xf7000000 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART0
1714 default 0xf7000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \
1715 DEBUG_S3C2410_UART0)
1716 default 0xf7000400 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART1
1717 default 0xf7000800 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART2
1718 default 0xf7000c00 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART3
1719 default 0xf7004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \
1720 DEBUG_S3C2410_UART1)
1721 default 0xf7008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \
1722 DEBUG_S3C2410_UART2)
1723 default 0xf7020000 if DEBUG_AT91_SAMA5D2_UART1
1724 default 0xf7fc9000 if DEBUG_BERLIN_UART
1725 default 0xf8007000 if DEBUG_HIP04_UART
1726 default 0xf8009000 if DEBUG_VEXPRESS_UART0_CA9
1727 default 0xf8090000 if DEBUG_VEXPRESS_UART0_RS1
1728 default 0xf8ffee00 if DEBUG_AT91_SAM9263_DBGU
1729 default 0xf8fff200 if DEBUG_AT91_RM9200_DBGU
1730 default 0xf9e09000 if DEBUG_AM33XXUART1
1731 default 0xfa020000 if DEBUG_OMAP4UART3 || DEBUG_TI81XXUART1
1732 default 0xfa022000 if DEBUG_TI81XXUART2
1733 default 0xfa024000 if DEBUG_TI81XXUART3
1734 default 0xfa06a000 if DEBUG_OMAP2UART1 || DEBUG_OMAP3UART1 || \
1735 DEBUG_OMAP4UART1 || DEBUG_OMAP5UART1
1736 default 0xfa06c000 if DEBUG_OMAP2UART2 || DEBUG_OMAP3UART2 || \
1737 DEBUG_OMAP4UART2 || DEBUG_OMAP5UART2
1738 default 0xfa06e000 if DEBUG_OMAP2UART3 || DEBUG_OMAP4UART4
1739 default 0xfa71e000 if DEBUG_QCOM_UARTDM
1740 default 0xfb002000 if DEBUG_CNS3XXX
1741 default 0xfb009000 if DEBUG_REALVIEW_STD_PORT
1742 default 0xfb00c000 if DEBUG_AT91_SAMA5D4_USART3
1743 default 0xfb020000 if DEBUG_OMAP3UART3
1744 default 0xfb042000 if DEBUG_OMAP3UART4
1745 default 0xfb10c000 if DEBUG_REALVIEW_PB1176_PORT
1746 default 0xfc705000 if DEBUG_ZTE_ZX
1747 default 0xfcfe8600 if DEBUG_BCM63XX_UART
1748 default 0xfd000000 if DEBUG_SPEAR3XX || DEBUG_SPEAR13XX
1749 default 0xfd012000 if DEBUG_MVEBU_UART0_ALTERNATE && ARCH_MV78XX0
1750 default 0xfd883000 if DEBUG_ALPINE_UART0
1751 default 0xfde12000 if DEBUG_MVEBU_UART0_ALTERNATE && ARCH_DOVE
1752 default 0xfe012000 if DEBUG_MVEBU_UART0_ALTERNATE && ARCH_ORION5X
1753 default 0xfe017000 if DEBUG_MMP_UART2
1754 default 0xfe018000 if DEBUG_MMP_UART3
1755 default 0xfe100000 if DEBUG_IMX23_UART || DEBUG_IMX28_UART
1756 default 0xfe230000 if DEBUG_PICOXCELL_UART
1757 default 0xfe300000 if DEBUG_BCM_KONA_UART
1758 default 0xfe800000 if ARCH_IOP32X
1759 default 0xfeb00000 if DEBUG_HI3620_UART || DEBUG_HIX5HD2_UART
1760 default 0xfeb24000 if DEBUG_RK3X_UART0
1761 default 0xfeb26000 if DEBUG_RK3X_UART1
1762 default 0xfeb30c00 if DEBUG_KEYSTONE_UART0
1763 default 0xfeb31000 if DEBUG_KEYSTONE_UART1
1764 default 0xfec02000 if DEBUG_SOCFPGA_UART0
1765 default 0xfec02100 if DEBUG_SOCFPGA_ARRIA10_UART1
1766 default 0xfec03000 if DEBUG_SOCFPGA_CYCLONE5_UART1
1767 default 0xfec12000 if (DEBUG_MVEBU_UART0 || DEBUG_MVEBU_UART0_ALTERNATE) && ARCH_MVEBU
1768 default 0xfec12100 if DEBUG_MVEBU_UART1_ALTERNATE
1769 default 0xfec10000 if DEBUG_SIRFATLAS7_UART0
1770 default 0xfec20000 if DEBUG_DAVINCI_DMx_UART0
1771 default 0xfec20000 if DEBUG_SIRFATLAS7_UART1
1772 default 0xfec60000 if DEBUG_SIRFPRIMA2_UART1
1773 default 0xfec90000 if DEBUG_RK32_UART2
1774 default 0xfed0c000 if DEBUG_DAVINCI_DA8XX_UART1
1775 default 0xfed0d000 if DEBUG_DAVINCI_DA8XX_UART2
1776 default 0xfed60000 if DEBUG_RK29_UART0
1777 default 0xfed64000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
1778 default 0xfed68000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
1779 default 0xfedc0000 if DEBUG_EP93XX
1780 default 0xfee003f8 if DEBUG_FOOTBRIDGE_COM1
1781 default 0xfee20000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART
1782 default 0xfee82340 if ARCH_IOP13XX
1783 default 0xfef00000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
1784 default 0xfef00003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
1785 default 0xfef36000 if DEBUG_HIGHBANK_UART
1786 default 0xfefb0000 if DEBUG_OMAP1UART1 || DEBUG_OMAP7XXUART1
1787 default 0xfefb0800 if DEBUG_OMAP1UART2 || DEBUG_OMAP7XXUART2
1788 default 0xfefb9800 if DEBUG_OMAP1UART3 || DEBUG_OMAP7XXUART3
1789 default 0xfefff700 if ARCH_IOP33X
1790 default 0xff003000 if DEBUG_U300_UART
1791 default 0xffd01000 if DEBUG_HIP01_UART
1792 default DEBUG_UART_PHYS if !MMU
1793 depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
1794 DEBUG_UART_8250 || DEBUG_UART_PL01X || DEBUG_MESON_UARTAO || \
1795 DEBUG_NETX_UART || \
1796 DEBUG_QCOM_UARTDM || DEBUG_S3C24XX_UART || \
1797 DEBUG_S3C64XX_UART || \
1798 DEBUG_BCM63XX_UART || DEBUG_ASM9260_UART || \
1799 DEBUG_SIRFSOC_UART || DEBUG_DIGICOLOR_UA0 || \
1800 DEBUG_AT91_UART
1801
1802config DEBUG_UART_8250_SHIFT
1803 int "Register offset shift for the 8250 debug UART"
1804 depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
1805 default 0 if DEBUG_FOOTBRIDGE_COM1 || ARCH_IOP32X || DEBUG_BCM_5301X || \
1806 DEBUG_BCM_HR2 || DEBUG_OMAP7XXUART1 || DEBUG_OMAP7XXUART2 || \
1807 DEBUG_OMAP7XXUART3
1808 default 2
1809
1810config DEBUG_UART_8250_WORD
1811 bool "Use 32-bit accesses for 8250 UART"
1812 depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
1813 depends on DEBUG_UART_8250_SHIFT >= 2
1814 default y if DEBUG_PICOXCELL_UART || \
1815 DEBUG_SOCFPGA_UART0 || DEBUG_SOCFPGA_ARRIA10_UART1 || \
1816 DEBUG_SOCFPGA_CYCLONE5_UART1 || DEBUG_KEYSTONE_UART0 || \
1817 DEBUG_KEYSTONE_UART1 || DEBUG_ALPINE_UART0 || \
1818 DEBUG_DAVINCI_DMx_UART0 || DEBUG_DAVINCI_DA8XX_UART1 || \
1819 DEBUG_DAVINCI_DA8XX_UART2 || DEBUG_BCM_IPROC_UART3 || \
1820 DEBUG_BCM_KONA_UART || DEBUG_RK32_UART2
1821
1822config DEBUG_UART_8250_PALMCHIP
1823 bool "8250 UART is Palmchip BK-310x"
1824 depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
1825 help
1826 Palmchip provides a UART implementation compatible with 16550
1827 except for having a different register layout. Say Y here if
1828 the debug UART is of this type.
1829
1830config DEBUG_UART_8250_FLOW_CONTROL
1831 bool "Enable flow control for 8250 UART"
1832 depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
1833 default y if ARCH_EBSA110 || DEBUG_FOOTBRIDGE_COM1 || DEBUG_GEMINI || ARCH_RPC
1834
1835config DEBUG_UNCOMPRESS
1836 bool "Enable decompressor debugging via DEBUG_LL output"
1837 depends on ARCH_MULTIPLATFORM || PLAT_SAMSUNG || ARM_SINGLE_ARMV7M
1838 depends on DEBUG_LL && !DEBUG_OMAP2PLUS_UART && \
1839 (!DEBUG_TEGRA_UART || !ZBOOT_ROM) && \
1840 !DEBUG_BRCMSTB_UART
1841 help
1842 This option influences the normal decompressor output for
1843 multiplatform kernels. Normally, multiplatform kernels disable
1844 decompressor output because it is not possible to know where to
1845 send the decompressor output.
1846
1847 When this option is set, the selected DEBUG_LL output method
1848 will be re-used for normal decompressor output on multiplatform
1849 kernels.
1850
1851
1852config UNCOMPRESS_INCLUDE
1853 string
1854 default "debug/uncompress.h" if ARCH_MULTIPLATFORM || ARCH_MSM || \
1855 PLAT_SAMSUNG || ARM_SINGLE_ARMV7M
1856 default "mach/uncompress.h"
1857
1858config EARLY_PRINTK
1859 bool "Early printk"
1860 depends on DEBUG_LL
1861 help
1862 Say Y here if you want to have an early console using the
1863 kernel low-level debugging functions. Add earlyprintk to your
1864 kernel parameters to enable this console.
1865
1866config ARM_KPROBES_TEST
1867 tristate "Kprobes test module"
1868 depends on KPROBES && MODULES
1869 help
1870 Perform tests of kprobes API and instruction set simulation.
1871
1872config PID_IN_CONTEXTIDR
1873 bool "Write the current PID to the CONTEXTIDR register"
1874 depends on CPU_COPY_V6
1875 help
1876 Enabling this option causes the kernel to write the current PID to
1877 the PROCID field of the CONTEXTIDR register, at the expense of some
1878 additional instructions during context switch. Say Y here only if you
1879 are planning to use hardware trace tools with this kernel.
1880
1881source "drivers/hwtracing/coresight/Kconfig"