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