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