Merge tag 'vfio-v4.13-rc1' of git://github.com/awilliam/linux-vfio
[sfrench/cifs-2.6.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_OMAP2PLUS_UART
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_OMAP2PLUS_UART
658
659         config DEBUG_OMAP2UART3
660                 bool "Kernel low-level debugging messages via OMAP2 UART3 (n8x0)"
661                 depends on ARCH_OMAP2PLUS
662                 select DEBUG_OMAP2PLUS_UART
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_OMAP2PLUS_UART
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_OMAP2PLUS_UART
677
678         config DEBUG_OMAP3UART4
679                 bool "Kernel low-level debugging messages via OMAP36XX UART4"
680                 depends on ARCH_OMAP2PLUS
681                 select DEBUG_OMAP2PLUS_UART
682
683         config DEBUG_OMAP4UART4
684                 bool "Kernel low-level debugging messages via OMAP4/5 UART4"
685                 depends on ARCH_OMAP2PLUS
686                 select DEBUG_OMAP2PLUS_UART
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_OMAP2PLUS_UART
716
717         config DEBUG_TI81XXUART2
718                 bool "Kernel low-level debugging messages via TI81XX UART2"
719                 depends on ARCH_OMAP2PLUS
720                 select DEBUG_OMAP2PLUS_UART
721
722         config DEBUG_TI81XXUART3
723                 bool "Kernel low-level debugging messages via TI81XX UART3 (ti8168evm)"
724                 depends on ARCH_OMAP2PLUS
725                 select DEBUG_OMAP2PLUS_UART
726
727         config DEBUG_AM33XXUART1
728                 bool "Kernel low-level debugging messages via AM33XX UART1"
729                 depends on ARCH_OMAP2PLUS
730                 select DEBUG_OMAP2PLUS_UART
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 R8A7790/R8A7791/R8A7792/R8A7793"
900                 depends on ARCH_R8A7790 || ARCH_R8A7791 || ARCH_R8A7792 || ARCH_R8A7793
901                 help
902                   Say Y here if you want kernel low-level debugging support
903                   via SCIF0 on Renesas R-Car H2 (R8A7790), M2-W (R8A7791), V2H
904                   (R8A7792), or M2-N (R8A7793).
905
906         config DEBUG_RCAR_GEN2_SCIF2
907                 bool "Kernel low-level debugging messages via SCIF2 on R8A7794"
908                 depends on ARCH_R8A7794
909                 help
910                   Say Y here if you want kernel low-level debugging support
911                   via SCIF2 on Renesas R-Car E2 (R8A7794).
912
913         config DEBUG_RMOBILE_SCIFA0
914                 bool "Kernel low-level debugging messages via SCIFA0 on R8A73A4"
915                 depends on ARCH_R8A73A4
916                 help
917                   Say Y here if you want kernel low-level debugging support
918                   via SCIFA0 on Renesas R-Mobile APE6 (R8A73A4).
919
920         config DEBUG_RMOBILE_SCIFA1
921                 bool "Kernel low-level debugging messages via SCIFA1 on R8A7740"
922                 depends on ARCH_R8A7740
923                 help
924                   Say Y here if you want kernel low-level debugging support
925                   via SCIFA1 on Renesas R-Mobile A1 (R8A7740).
926
927         config DEBUG_RMOBILE_SCIFA4
928                 bool "Kernel low-level debugging messages via SCIFA4 on SH73A0"
929                 depends on ARCH_SH73A0
930                 help
931                   Say Y here if you want kernel low-level debugging support
932                   via SCIFA4 on Renesas SH-Mobile AG5 (SH73A0).
933
934         config DEBUG_S3C_UART0
935                 depends on PLAT_SAMSUNG
936                 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
937                 select DEBUG_S3C24XX_UART if ARCH_S3C24XX
938                 select DEBUG_S3C64XX_UART if ARCH_S3C64XX
939                 select DEBUG_S5PV210_UART if ARCH_S5PV210
940                 bool "Use Samsung S3C UART 0 for low-level debug"
941                 help
942                   Say Y here if you want the debug print routines to direct
943                   their output to UART 0. The port must have been initialised
944                   by the boot-loader before use.
945
946         config DEBUG_S3C_UART1
947                 depends on PLAT_SAMSUNG
948                 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
949                 select DEBUG_S3C24XX_UART if ARCH_S3C24XX
950                 select DEBUG_S3C64XX_UART if ARCH_S3C64XX
951                 select DEBUG_S5PV210_UART if ARCH_S5PV210
952                 bool "Use Samsung S3C UART 1 for low-level debug"
953                 help
954                   Say Y here if you want the debug print routines to direct
955                   their output to UART 1. The port must have been initialised
956                   by the boot-loader before use.
957
958         config DEBUG_S3C_UART2
959                 depends on PLAT_SAMSUNG
960                 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
961                 select DEBUG_S3C24XX_UART if ARCH_S3C24XX
962                 select DEBUG_S3C64XX_UART if ARCH_S3C64XX
963                 select DEBUG_S5PV210_UART if ARCH_S5PV210
964                 bool "Use Samsung S3C UART 2 for low-level debug"
965                 help
966                   Say Y here if you want the debug print routines to direct
967                   their output to UART 2. The port must have been initialised
968                   by the boot-loader before use.
969
970         config DEBUG_S3C_UART3
971                 depends on PLAT_SAMSUNG && (ARCH_EXYNOS || ARCH_S5PV210)
972                 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
973                 select DEBUG_S3C64XX_UART if ARCH_S3C64XX
974                 select DEBUG_S5PV210_UART if ARCH_S5PV210
975                 bool "Use Samsung S3C UART 3 for low-level debug"
976                 help
977                   Say Y here if you want the debug print routines to direct
978                   their output to UART 3. The port must have been initialised
979                   by the boot-loader before use.
980
981         config DEBUG_S3C2410_UART0
982                 depends on ARCH_S3C24XX
983                 select DEBUG_S3C2410_UART
984                 bool "Use S3C2410/S3C2412 UART 0 for low-level debug"
985                 help
986                   Say Y here if you want the debug print routines to direct
987                   their output to UART 0. The port must have been initialised
988                   by the boot-loader before use.
989
990         config DEBUG_S3C2410_UART1
991                 depends on ARCH_S3C24XX
992                 select DEBUG_S3C2410_UART
993                 bool "Use S3C2410/S3C2412 UART 1 for low-level debug"
994                 help
995                   Say Y here if you want the debug print routines to direct
996                   their output to UART 1. The port must have been initialised
997                   by the boot-loader before use.
998
999         config DEBUG_S3C2410_UART2
1000                 depends on ARCH_S3C24XX
1001                 select DEBUG_S3C2410_UART
1002                 bool "Use S3C2410/S3C2412 UART 2 for low-level debug"
1003                 help
1004                   Say Y here if you want the debug print routines to direct
1005                   their output to UART 2. The port must have been initialised
1006                   by the boot-loader before use.
1007
1008         config DEBUG_SA1100
1009                 depends on ARCH_SA1100
1010                 bool "Use SA1100 UARTs for low-level debug"
1011                 help
1012                   Say Y here if you want kernel low-level debugging support
1013                   on SA-11x0 UART ports. The kernel will check for the first
1014                   enabled UART in a sequence 3-1-2.
1015
1016         config DEBUG_SOCFPGA_UART0
1017                 depends on ARCH_SOCFPGA
1018                 bool "Use SOCFPGA UART0 for low-level debug"
1019                 select DEBUG_UART_8250
1020                 help
1021                   Say Y here if you want kernel low-level debugging support
1022                   on SOCFPGA(Cyclone 5 and Arria 5) based platforms.
1023
1024         config DEBUG_SOCFPGA_UART1
1025                 depends on ARCH_SOCFPGA
1026                 bool "Use SOCFPGA UART1 for low-level debug"
1027                 select DEBUG_UART_8250
1028                 help
1029                   Say Y here if you want kernel low-level debugging support
1030                   on SOCFPGA(Arria 10) based platforms.
1031
1032
1033         config DEBUG_SUN9I_UART0
1034                 bool "Kernel low-level debugging messages via sun9i UART0"
1035                 depends on MACH_SUN9I
1036                 select DEBUG_UART_8250
1037                 help
1038                   Say Y here if you want kernel low-level debugging support
1039                   on Allwinner A80 based platforms on the UART0.
1040
1041         config DEBUG_SUNXI_UART0
1042                 bool "Kernel low-level debugging messages via sunXi UART0"
1043                 depends on ARCH_SUNXI
1044                 select DEBUG_UART_8250
1045                 help
1046                   Say Y here if you want kernel low-level debugging support
1047                   on Allwinner A1X based platforms on the UART0.
1048
1049         config DEBUG_SUNXI_UART1
1050                 bool "Kernel low-level debugging messages via sunXi UART1"
1051                 depends on ARCH_SUNXI
1052                 select DEBUG_UART_8250
1053                 help
1054                   Say Y here if you want kernel low-level debugging support
1055                   on Allwinner A1X based platforms on the UART1.
1056
1057         config DEBUG_SUNXI_R_UART
1058                 bool "Kernel low-level debugging messages via sunXi R_UART"
1059                 depends on MACH_SUN6I || MACH_SUN8I
1060                 select DEBUG_UART_8250
1061                 help
1062                   Say Y here if you want kernel low-level debugging support
1063                   on Allwinner A31/A23 based platforms on the R_UART.
1064
1065         config DEBUG_SIRFPRIMA2_UART1
1066                 bool "Kernel low-level debugging messages via SiRFprimaII UART1"
1067                 depends on ARCH_PRIMA2
1068                 select DEBUG_SIRFSOC_UART
1069                 help
1070                   Say Y here if you want the debug print routines to direct
1071                   their output to the uart1 port on SiRFprimaII devices.
1072
1073         config DEBUG_SIRFATLAS7_UART0
1074                 bool "Kernel low-level debugging messages via SiRFatlas7 UART0"
1075                 depends on ARCH_ATLAS7
1076                 select DEBUG_SIRFSOC_UART
1077                 help
1078                   Say Y here if you want the debug print routines to direct
1079                   their output to the uart0 port on SiRFATLAS7 devices.The uart0
1080                   is used on SiRFATLAS7 as a extra debug port.sometimes an extra
1081                   debug port can be very useful.
1082
1083         config DEBUG_SIRFATLAS7_UART1
1084                 bool "Kernel low-level debugging messages via SiRFatlas7 UART1"
1085                 depends on ARCH_ATLAS7
1086                 select DEBUG_SIRFSOC_UART
1087                 help
1088                   Say Y here if you want the debug print routines to direct
1089                   their output to the uart1 port on SiRFATLAS7 devices.
1090
1091         config DEBUG_SPEAR3XX
1092                 bool "Kernel low-level debugging messages via ST SPEAr 3xx/6xx UART"
1093                 depends on ARCH_SPEAR3XX || ARCH_SPEAR6XX
1094                 select DEBUG_UART_PL01X
1095                 help
1096                   Say Y here if you want kernel low-level debugging support
1097                   on ST SPEAr based platforms.
1098
1099         config DEBUG_SPEAR13XX
1100                 bool "Kernel low-level debugging messages via ST SPEAr 13xx UART"
1101                 depends on ARCH_SPEAR13XX
1102                 select DEBUG_UART_PL01X
1103                 help
1104                   Say Y here if you want kernel low-level debugging support
1105                   on ST SPEAr13xx based platforms.
1106
1107         config STIH41X_DEBUG_ASC2
1108                 bool "Use StiH415/416 ASC2 UART for low-level debug"
1109                 depends on ARCH_STI
1110                 select DEBUG_STI_UART
1111                 help
1112                   Say Y here if you want kernel low-level debugging support
1113                   on STiH415/416 based platforms like b2000, which has
1114                   default UART wired up to ASC2.
1115
1116                   If unsure, say N.
1117
1118         config STIH41X_DEBUG_SBC_ASC1
1119                 bool "Use StiH415/416 SBC ASC1 UART for low-level debug"
1120                 depends on ARCH_STI
1121                 select DEBUG_STI_UART
1122                 help
1123                   Say Y here if you want kernel low-level debugging support
1124                   on STiH415/416 based platforms like b2020. which has
1125                   default UART wired up to SBC ASC1.
1126
1127                   If unsure, say N.
1128
1129         config TEGRA_DEBUG_UART_AUTO_ODMDATA
1130                 bool "Kernel low-level debugging messages via Tegra UART via ODMDATA"
1131                 depends on ARCH_TEGRA
1132                 select DEBUG_TEGRA_UART
1133                 help
1134                   Automatically determines which UART to use for low-level
1135                   debug based on the ODMDATA value. This value is part of
1136                   the BCT, and is written to the boot memory device using
1137                   nvflash, or other flashing tool.  When bits 19:18 are 3,
1138                   then bits 17:15 indicate which UART to use; 0/1/2/3/4
1139                   are UART A/B/C/D/E.
1140
1141         config TEGRA_DEBUG_UARTA
1142                 bool "Kernel low-level debugging messages via Tegra UART A"
1143                 depends on ARCH_TEGRA
1144                 select DEBUG_TEGRA_UART
1145                 help
1146                   Say Y here if you want kernel low-level debugging support
1147                   on Tegra based platforms.
1148
1149         config TEGRA_DEBUG_UARTB
1150                 bool "Kernel low-level debugging messages via Tegra UART B"
1151                 depends on ARCH_TEGRA
1152                 select DEBUG_TEGRA_UART
1153                 help
1154                   Say Y here if you want kernel low-level debugging support
1155                   on Tegra based platforms.
1156
1157         config TEGRA_DEBUG_UARTC
1158                 bool "Kernel low-level debugging messages via Tegra UART C"
1159                 depends on ARCH_TEGRA
1160                 select DEBUG_TEGRA_UART
1161                 help
1162                   Say Y here if you want kernel low-level debugging support
1163                   on Tegra based platforms.
1164
1165         config TEGRA_DEBUG_UARTD
1166                 bool "Kernel low-level debugging messages via Tegra UART D"
1167                 depends on ARCH_TEGRA
1168                 select DEBUG_TEGRA_UART
1169                 help
1170                   Say Y here if you want kernel low-level debugging support
1171                   on Tegra based platforms.
1172
1173         config TEGRA_DEBUG_UARTE
1174                 bool "Kernel low-level debugging messages via Tegra UART E"
1175                 depends on ARCH_TEGRA
1176                 select DEBUG_TEGRA_UART
1177                 help
1178                   Say Y here if you want kernel low-level debugging support
1179                   on Tegra based platforms.
1180
1181         config DEBUG_U300_UART
1182                 bool "Kernel low-level debugging messages via U300 UART0"
1183                 depends on ARCH_U300
1184                 select DEBUG_UART_PL01X
1185                 help
1186                   Say Y here if you want the debug print routines to direct
1187                   their output to the uart port on U300 devices.
1188
1189         config DEBUG_UX500_UART
1190                 depends on ARCH_U8500
1191                 bool "Use Ux500 UART for low-level debug"
1192                 help
1193                   Say Y here if you want kernel low-level debugging support
1194                   on Ux500 based platforms.
1195
1196         config DEBUG_VERSATILE
1197                 bool "Kernel low-level debugging messages via ARM Versatile UART"
1198                 depends on ARCH_VERSATILE
1199                 select DEBUG_UART_PL01X
1200                 help
1201                   Say Y here if you want kernel low-level debugging support
1202                   on ARM Versatile platforms.
1203
1204         config DEBUG_VEXPRESS_UART0_DETECT
1205                 bool "Autodetect UART0 on Versatile Express Cortex-A core tiles"
1206                 depends on ARCH_VEXPRESS && CPU_CP15_MMU
1207                 help
1208                   This option enables a simple heuristic which tries to determine
1209                   the motherboard's memory map variant (original or RS1) and then
1210                   choose the relevant UART0 base address.
1211
1212                   Note that this will only work with standard A-class core tiles,
1213                   and may fail with non-standard SMM or custom software models.
1214
1215         config DEBUG_VEXPRESS_UART0_CA9
1216                 bool "Use PL011 UART0 at 0x10009000 (V2P-CA9 core tile)"
1217                 depends on ARCH_VEXPRESS
1218                 select DEBUG_UART_PL01X
1219                 help
1220                   This option selects UART0 at 0x10009000. Except for custom models,
1221                   this applies only to the V2P-CA9 tile.
1222
1223         config DEBUG_VEXPRESS_UART0_RS1
1224                 bool "Use PL011 UART0 at 0x1c090000 (RS1 complaint tiles)"
1225                 depends on ARCH_VEXPRESS
1226                 select DEBUG_UART_PL01X
1227                 help
1228                   This option selects UART0 at 0x1c090000. This applies to most
1229                   of the tiles using the RS1 memory map, including all new A-class
1230                   core tiles, FPGA-based SMMs and software models.
1231
1232         config DEBUG_VEXPRESS_UART0_CRX
1233                 bool "Use PL011 UART0 at 0xb0090000 (Cortex-R compliant tiles)"
1234                 depends on ARCH_VEXPRESS && !MMU
1235                 select DEBUG_UART_PL01X
1236                 help
1237                   This option selects UART0 at 0xb0090000. This is appropriate for
1238                   Cortex-R series tiles and SMMs, such as Cortex-R5 and Cortex-R7
1239
1240         config DEBUG_VF_UART
1241                 bool "Vybrid UART"
1242                 depends on SOC_VF610
1243                 help
1244                   Say Y here if you want kernel low-level debugging support
1245                   on Vybrid based platforms.
1246
1247         config DEBUG_VT8500_UART0
1248                 bool "Use UART0 on VIA/Wondermedia SoCs"
1249                 depends on ARCH_VT8500
1250                 help
1251                   This option selects UART0 on VIA/Wondermedia System-on-a-chip
1252                   devices, including VT8500, WM8505, WM8650 and WM8850.
1253
1254         config DEBUG_ZTE_ZX
1255                 bool "Use ZTE ZX UART"
1256                 select DEBUG_UART_PL01X
1257                 depends on ARCH_ZX
1258                 help
1259                   Say Y here if you are enabling ZTE ZX296702 SOC and need
1260                   debug uart support.
1261
1262                   This option is preferred over the platform specific
1263                   options; the platform specific options are deprecated
1264                   and will be soon removed.
1265
1266         config DEBUG_ZYNQ_UART0
1267                 bool "Kernel low-level debugging on Xilinx Zynq using UART0"
1268                 depends on ARCH_ZYNQ
1269                 help
1270                   Say Y here if you want the debug print routines to direct
1271                   their output to UART0 on the Zynq platform.
1272
1273         config DEBUG_ZYNQ_UART1
1274                 bool "Kernel low-level debugging on Xilinx Zynq using UART1"
1275                 depends on ARCH_ZYNQ
1276                 help
1277                   Say Y here if you want the debug print routines to direct
1278                   their output to UART1 on the Zynq platform.
1279
1280                   If you have a ZC702 board and want early boot messages to
1281                   appear on the USB serial adaptor, select this option.
1282
1283         config DEBUG_ICEDCC
1284                 bool "Kernel low-level debugging via EmbeddedICE DCC channel"
1285                 help
1286                   Say Y here if you want the debug print routines to direct
1287                   their output to the EmbeddedICE macrocell's DCC channel using
1288                   co-processor 14. This is known to work on the ARM9 style ICE
1289                   channel and on the XScale with the PEEDI.
1290
1291                   Note that the system will appear to hang during boot if there
1292                   is nothing connected to read from the DCC.
1293
1294         config DEBUG_SEMIHOSTING
1295                 bool "Kernel low-level debug output via semihosting I/O"
1296                 help
1297                   Semihosting enables code running on an ARM target to use
1298                   the I/O facilities on a host debugger/emulator through a
1299                   simple SVC call. The host debugger or emulator must have
1300                   semihosting enabled for the special svc call to be trapped
1301                   otherwise the kernel will crash.
1302
1303                   This is known to work with OpenOCD, as well as
1304                   ARM's Fast Models, or any other controlling environment
1305                   that implements semihosting.
1306
1307                   For more details about semihosting, please see
1308                   chapter 8 of DUI0203I_rvct_developer_guide.pdf from ARM Ltd.
1309
1310         config DEBUG_LL_UART_8250
1311                 bool "Kernel low-level debugging via 8250 UART"
1312                 help
1313                   Say Y here if you wish the debug print routes to direct
1314                   their output to an 8250 UART.  You can use this option
1315                   to provide the parameters for the 8250 UART rather than
1316                   selecting one of the platform specific options above if
1317                   you know the parameters for the port.
1318
1319                   This option is preferred over the platform specific
1320                   options; the platform specific options are deprecated
1321                   and will be soon removed.
1322
1323         config DEBUG_LL_UART_EFM32
1324                 bool "Kernel low-level debugging via efm32 UART"
1325                 depends on ARCH_EFM32
1326                 help
1327                   Say Y here if you want the debug print routines to direct
1328                   their output to an UART or USART port on efm32 based
1329                   machines. Use the following addresses for DEBUG_UART_PHYS:
1330
1331                     0x4000c000 | USART0
1332                     0x4000c400 | USART1
1333                     0x4000c800 | USART2
1334                     0x4000e000 | UART0
1335                     0x4000e400 | UART1
1336
1337         config DEBUG_LL_UART_PL01X
1338                 bool "Kernel low-level debugging via ARM Ltd PL01x Primecell UART"
1339                 help
1340                   Say Y here if you wish the debug print routes to direct
1341                   their output to a PL01x Primecell UART.  You can use
1342                   this option to provide the parameters for the UART
1343                   rather than selecting one of the platform specific
1344                   options above if you know the parameters for the port.
1345
1346                   This option is preferred over the platform specific
1347                   options; the platform specific options are deprecated
1348                   and will be soon removed.
1349
1350 endchoice
1351
1352 config DEBUG_AT91_UART
1353         bool
1354         depends on ARCH_AT91
1355
1356 config DEBUG_EXYNOS_UART
1357         bool
1358
1359 config DEBUG_S3C2410_UART
1360         bool
1361         select DEBUG_S3C24XX_UART
1362
1363 config DEBUG_S3C24XX_UART
1364         bool
1365
1366 config DEBUG_S3C64XX_UART
1367         bool
1368
1369 config DEBUG_S5PV210_UART
1370         bool
1371
1372 config DEBUG_OMAP2PLUS_UART
1373         bool
1374         depends on ARCH_OMAP2PLUS
1375
1376 config DEBUG_IMX_UART_PORT
1377         int "i.MX Debug UART Port Selection" if DEBUG_IMX1_UART || \
1378                                                 DEBUG_IMX25_UART || \
1379                                                 DEBUG_IMX21_IMX27_UART || \
1380                                                 DEBUG_IMX31_UART || \
1381                                                 DEBUG_IMX35_UART || \
1382                                                 DEBUG_IMX50_UART || \
1383                                                 DEBUG_IMX51_UART || \
1384                                                 DEBUG_IMX53_UART || \
1385                                                 DEBUG_IMX6Q_UART || \
1386                                                 DEBUG_IMX6SL_UART || \
1387                                                 DEBUG_IMX6SX_UART || \
1388                                                 DEBUG_IMX6UL_UART || \
1389                                                 DEBUG_IMX7D_UART
1390         default 1
1391         depends on ARCH_MXC
1392         help
1393           Choose UART port on which kernel low-level debug messages
1394           should be output.
1395
1396 config DEBUG_VF_UART_PORT
1397         int "Vybrid Debug UART Port Selection" if DEBUG_VF_UART
1398         default 1
1399         range 0 3
1400         depends on SOC_VF610
1401         help
1402           Choose UART port on which kernel low-level debug messages
1403           should be output.
1404
1405 config DEBUG_TEGRA_UART
1406         bool
1407         depends on ARCH_TEGRA
1408
1409 config DEBUG_STI_UART
1410         bool
1411         depends on ARCH_STI
1412
1413 config DEBUG_SIRFSOC_UART
1414         bool
1415         depends on ARCH_SIRF
1416
1417 config DEBUG_LL_INCLUDE
1418         string
1419         default "debug/sa1100.S" if DEBUG_SA1100
1420         default "debug/palmchip.S" if DEBUG_UART_8250_PALMCHIP
1421         default "debug/8250.S" if DEBUG_LL_UART_8250 || DEBUG_UART_8250
1422         default "debug/at91.S" if DEBUG_AT91_UART
1423         default "debug/asm9260.S" if DEBUG_ASM9260_UART
1424         default "debug/clps711x.S" if DEBUG_CLPS711X_UART1 || DEBUG_CLPS711X_UART2
1425         default "debug/dc21285.S" if DEBUG_DC21285_PORT
1426         default "debug/meson.S" if DEBUG_MESON_UARTAO
1427         default "debug/pl01x.S" if DEBUG_LL_UART_PL01X || DEBUG_UART_PL01X
1428         default "debug/exynos.S" if DEBUG_EXYNOS_UART
1429         default "debug/efm32.S" if DEBUG_LL_UART_EFM32
1430         default "debug/icedcc.S" if DEBUG_ICEDCC
1431         default "debug/imx.S" if DEBUG_IMX1_UART || \
1432                                  DEBUG_IMX25_UART || \
1433                                  DEBUG_IMX21_IMX27_UART || \
1434                                  DEBUG_IMX31_UART || \
1435                                  DEBUG_IMX35_UART || \
1436                                  DEBUG_IMX50_UART || \
1437                                  DEBUG_IMX51_UART || \
1438                                  DEBUG_IMX53_UART ||\
1439                                  DEBUG_IMX6Q_UART || \
1440                                  DEBUG_IMX6SL_UART || \
1441                                  DEBUG_IMX6SX_UART || \
1442                                  DEBUG_IMX6UL_UART || \
1443                                  DEBUG_IMX7D_UART
1444         default "debug/ks8695.S" if DEBUG_KS8695_UART
1445         default "debug/msm.S" if DEBUG_QCOM_UARTDM
1446         default "debug/netx.S" if DEBUG_NETX_UART
1447         default "debug/omap2plus.S" if DEBUG_OMAP2PLUS_UART
1448         default "debug/renesas-scif.S" if DEBUG_R7S72100_SCIF2
1449         default "debug/renesas-scif.S" if DEBUG_RCAR_GEN1_SCIF0
1450         default "debug/renesas-scif.S" if DEBUG_RCAR_GEN1_SCIF2
1451         default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF0
1452         default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF2
1453         default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA0
1454         default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA1
1455         default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA4
1456         default "debug/s3c24xx.S" if DEBUG_S3C24XX_UART || DEBUG_S3C64XX_UART
1457         default "debug/s5pv210.S" if DEBUG_S5PV210_UART
1458         default "debug/sirf.S" if DEBUG_SIRFSOC_UART
1459         default "debug/sti.S" if DEBUG_STI_UART
1460         default "debug/tegra.S" if DEBUG_TEGRA_UART
1461         default "debug/ux500.S" if DEBUG_UX500_UART
1462         default "debug/vexpress.S" if DEBUG_VEXPRESS_UART0_DETECT
1463         default "debug/vf.S" if DEBUG_VF_UART
1464         default "debug/vt8500.S" if DEBUG_VT8500_UART0
1465         default "debug/zynq.S" if DEBUG_ZYNQ_UART0 || DEBUG_ZYNQ_UART1
1466         default "debug/bcm63xx.S" if DEBUG_BCM63XX_UART
1467         default "debug/digicolor.S" if DEBUG_DIGICOLOR_UA0
1468         default "debug/brcmstb.S" if DEBUG_BRCMSTB_UART
1469         default "mach/debug-macro.S"
1470
1471 # Compatibility options for PL01x
1472 config DEBUG_UART_PL01X
1473         bool
1474
1475 # Compatibility options for 8250
1476 config DEBUG_UART_8250
1477         def_bool ARCH_EBSA110 || \
1478                 ARCH_IOP13XX || ARCH_IOP32X || ARCH_IOP33X || ARCH_IXP4XX || \
1479                 ARCH_RPC
1480
1481 config DEBUG_UART_PHYS
1482         hex "Physical base address of debug UART"
1483         default 0x00100a00 if DEBUG_NETX_UART
1484         default 0x01c20000 if DEBUG_DAVINCI_DMx_UART0
1485         default 0x01c28000 if DEBUG_SUNXI_UART0
1486         default 0x01c28400 if DEBUG_SUNXI_UART1
1487         default 0x01d0c000 if DEBUG_DAVINCI_DA8XX_UART1
1488         default 0x01d0d000 if DEBUG_DAVINCI_DA8XX_UART2
1489         default 0x01f02800 if DEBUG_SUNXI_R_UART
1490         default 0x02530c00 if DEBUG_KEYSTONE_UART0
1491         default 0x02531000 if DEBUG_KEYSTONE_UART1
1492         default 0x03010fe0 if ARCH_RPC
1493         default 0x07000000 if DEBUG_SUN9I_UART0
1494         default 0x09405000 if DEBUG_ZTE_ZX
1495         default 0x10009000 if DEBUG_REALVIEW_STD_PORT || \
1496                                 DEBUG_VEXPRESS_UART0_CA9
1497         default 0x1010c000 if DEBUG_REALVIEW_PB1176_PORT
1498         default 0x10124000 if DEBUG_RK3X_UART0
1499         default 0x10126000 if DEBUG_RK3X_UART1
1500         default 0x101f1000 if DEBUG_VERSATILE
1501         default 0x101fb000 if DEBUG_NOMADIK_UART
1502         default 0x10210000 if DEBUG_RV1108_UART2
1503         default 0x10220000 if DEBUG_RV1108_UART1
1504         default 0x10230000 if DEBUG_RV1108_UART0
1505         default 0x11002000 if DEBUG_MT8127_UART0
1506         default 0x11006000 if DEBUG_MT6589_UART0
1507         default 0x11009000 if DEBUG_MT8135_UART3
1508         default 0x16000000 if DEBUG_INTEGRATOR
1509         default 0x18000300 if DEBUG_BCM_5301X
1510         default 0x18010000 if DEBUG_SIRFATLAS7_UART0
1511         default 0x18020000 if DEBUG_SIRFATLAS7_UART1
1512         default 0x1c090000 if DEBUG_VEXPRESS_UART0_RS1
1513         default 0x20001000 if DEBUG_HIP01_UART
1514         default 0x20060000 if DEBUG_RK29_UART0
1515         default 0x20064000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
1516         default 0x20068000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
1517         default 0x20201000 if DEBUG_BCM2835
1518         default 0x3f201000 if DEBUG_BCM2836
1519         default 0x3e000000 if DEBUG_BCM_KONA_UART
1520         default 0x4000e400 if DEBUG_LL_UART_EFM32
1521         default 0x40028000 if DEBUG_AT91_SAMV7_USART1
1522         default 0x40081000 if DEBUG_LPC18XX_UART0
1523         default 0x40090000 if DEBUG_LPC32XX
1524         default 0x40100000 if DEBUG_PXA_UART1
1525         default 0x42000000 if DEBUG_GEMINI
1526         default 0x50000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \
1527                                 DEBUG_S3C2410_UART0)
1528         default 0x50004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \
1529                                 DEBUG_S3C2410_UART1)
1530         default 0x50008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \
1531                                 DEBUG_S3C2410_UART2)
1532         default 0x78000000 if DEBUG_CNS3XXX
1533         default 0x7c0003f8 if DEBUG_FOOTBRIDGE_COM1
1534         default 0x7f005000 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART0
1535         default 0x7f005400 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART1
1536         default 0x7f005800 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART2
1537         default 0x7f005c00 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART3
1538         default 0x80010000 if DEBUG_ASM9260_UART
1539         default 0x80070000 if DEBUG_IMX23_UART
1540         default 0x80074000 if DEBUG_IMX28_UART
1541         default 0x80230000 if DEBUG_PICOXCELL_UART
1542         default 0x808c0000 if DEBUG_EP93XX || ARCH_EP93XX
1543         default 0x90020000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART
1544         default 0xb0060000 if DEBUG_SIRFPRIMA2_UART1
1545         default 0xb0090000 if DEBUG_VEXPRESS_UART0_CRX
1546         default 0xc0013000 if DEBUG_U300_UART
1547         default 0xc8000000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
1548         default 0xc8000003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
1549         default 0xd0000000 if DEBUG_SPEAR3XX
1550         default 0xd0012000 if DEBUG_MVEBU_UART0
1551         default 0xc81004c0 if DEBUG_MESON_UARTAO
1552         default 0xd4017000 if DEBUG_MMP_UART2
1553         default 0xd4018000 if DEBUG_MMP_UART3
1554         default 0xe0000000 if DEBUG_SPEAR13XX
1555         default 0xe4007000 if DEBUG_HIP04_UART
1556         default 0xe6c40000 if DEBUG_RMOBILE_SCIFA0
1557         default 0xe6c50000 if DEBUG_RMOBILE_SCIFA1
1558         default 0xe6c80000 if DEBUG_RMOBILE_SCIFA4
1559         default 0xe6e58000 if DEBUG_RCAR_GEN2_SCIF2
1560         default 0xe6e60000 if DEBUG_RCAR_GEN2_SCIF0
1561         default 0xe8008000 if DEBUG_R7S72100_SCIF2
1562         default 0xf0000be0 if ARCH_EBSA110
1563         default 0xf1012000 if DEBUG_MVEBU_UART0_ALTERNATE
1564         default 0xf1012100 if DEBUG_MVEBU_UART1_ALTERNATE
1565         default 0xf7fc9000 if DEBUG_BERLIN_UART
1566         default 0xf8020000 if DEBUG_AT91_SAMA5D2_UART1
1567         default 0xf8b00000 if DEBUG_HIX5HD2_UART
1568         default 0xf991e000 if DEBUG_QCOM_UARTDM
1569         default 0xfc00c000 if DEBUG_AT91_SAMA5D4_USART3
1570         default 0xfcb00000 if DEBUG_HI3620_UART
1571         default 0xfd883000 if DEBUG_ALPINE_UART0
1572         default 0xfe800000 if ARCH_IOP32X
1573         default 0xff690000 if DEBUG_RK32_UART2
1574         default 0xffc02000 if DEBUG_SOCFPGA_UART0
1575         default 0xffc02100 if DEBUG_SOCFPGA_UART1
1576         default 0xffd82340 if ARCH_IOP13XX
1577         default 0xffe40000 if DEBUG_RCAR_GEN1_SCIF0
1578         default 0xffe42000 if DEBUG_RCAR_GEN1_SCIF2
1579         default 0xfff36000 if DEBUG_HIGHBANK_UART
1580         default 0xfffb0000 if DEBUG_OMAP1UART1 || DEBUG_OMAP7XXUART1
1581         default 0xfffb0800 if DEBUG_OMAP1UART2 || DEBUG_OMAP7XXUART2
1582         default 0xfffb9800 if DEBUG_OMAP1UART3 || DEBUG_OMAP7XXUART3
1583         default 0xfffe8600 if DEBUG_BCM63XX_UART
1584         default 0xffffee00 if DEBUG_AT91_SAM9263_DBGU
1585         default 0xfffff200 if DEBUG_AT91_RM9200_DBGU
1586         default 0xfffff700 if ARCH_IOP33X
1587         depends on ARCH_EP93XX || \
1588                 DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
1589                 DEBUG_LL_UART_EFM32 || \
1590                 DEBUG_UART_8250 || DEBUG_UART_PL01X || DEBUG_MESON_UARTAO || \
1591                 DEBUG_NETX_UART || \
1592                 DEBUG_QCOM_UARTDM || DEBUG_R7S72100_SCIF2 || \
1593                 DEBUG_RCAR_GEN1_SCIF0 || DEBUG_RCAR_GEN1_SCIF2 || \
1594                 DEBUG_RCAR_GEN2_SCIF0 || DEBUG_RCAR_GEN2_SCIF2 || \
1595                 DEBUG_RMOBILE_SCIFA0 || DEBUG_RMOBILE_SCIFA1 || \
1596                 DEBUG_RMOBILE_SCIFA4 || DEBUG_S3C24XX_UART || \
1597                 DEBUG_S3C64XX_UART || \
1598                 DEBUG_BCM63XX_UART || DEBUG_ASM9260_UART || \
1599                 DEBUG_SIRFSOC_UART || DEBUG_DIGICOLOR_UA0 || \
1600                 DEBUG_AT91_UART
1601
1602 config DEBUG_UART_VIRT
1603         hex "Virtual base address of debug UART"
1604         default 0xc881f000 if DEBUG_RV1108_UART2
1605         default 0xc8821000 if DEBUG_RV1108_UART1
1606         default 0xc8912000 if DEBUG_RV1108_UART0
1607         default 0xe0000a00 if DEBUG_NETX_UART
1608         default 0xe0010fe0 if ARCH_RPC
1609         default 0xf0000be0 if ARCH_EBSA110
1610         default 0xf0010000 if DEBUG_ASM9260_UART
1611         default 0xf01fb000 if DEBUG_NOMADIK_UART
1612         default 0xf0201000 if DEBUG_BCM2835 || DEBUG_BCM2836
1613         default 0xf1000300 if DEBUG_BCM_5301X
1614         default 0xf1002000 if DEBUG_MT8127_UART0
1615         default 0xf1006000 if DEBUG_MT6589_UART0
1616         default 0xf1009000 if DEBUG_MT8135_UART3
1617         default 0xf11f1000 if DEBUG_VERSATILE
1618         default 0xf1600000 if DEBUG_INTEGRATOR
1619         default 0xf1c28000 if DEBUG_SUNXI_UART0
1620         default 0xf1c28400 if DEBUG_SUNXI_UART1
1621         default 0xf1f02800 if DEBUG_SUNXI_R_UART
1622         default 0xf31004c0 if DEBUG_MESON_UARTAO
1623         default 0xf4090000 if DEBUG_LPC32XX
1624         default 0xf4200000 if DEBUG_GEMINI
1625         default 0xf6200000 if DEBUG_PXA_UART1
1626         default 0xf7000000 if DEBUG_SUN9I_UART0
1627         default 0xf7000000 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART0
1628         default 0xf7000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \
1629                                 DEBUG_S3C2410_UART0)
1630         default 0xf7000400 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART1
1631         default 0xf7000800 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART2
1632         default 0xf7000c00 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART3
1633         default 0xf7004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \
1634                                 DEBUG_S3C2410_UART1)
1635         default 0xf7008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \
1636                                 DEBUG_S3C2410_UART2)
1637         default 0xf7020000 if DEBUG_AT91_SAMA5D2_UART1
1638         default 0xf7fc9000 if DEBUG_BERLIN_UART
1639         default 0xf8007000 if DEBUG_HIP04_UART
1640         default 0xf8009000 if DEBUG_VEXPRESS_UART0_CA9
1641         default 0xf8090000 if DEBUG_VEXPRESS_UART0_RS1
1642         default 0xf8ffee00 if DEBUG_AT91_SAM9263_DBGU
1643         default 0xf8fff200 if DEBUG_AT91_RM9200_DBGU
1644         default 0xfa71e000 if DEBUG_QCOM_UARTDM
1645         default 0xfb002000 if DEBUG_CNS3XXX
1646         default 0xfb009000 if DEBUG_REALVIEW_STD_PORT
1647         default 0xfb00c000 if DEBUG_AT91_SAMA5D4_USART3
1648         default 0xfb10c000 if DEBUG_REALVIEW_PB1176_PORT
1649         default 0xfc705000 if DEBUG_ZTE_ZX
1650         default 0xfcfe8600 if DEBUG_BCM63XX_UART
1651         default 0xfd000000 if DEBUG_SPEAR3XX || DEBUG_SPEAR13XX
1652         default 0xfd012000 if DEBUG_MVEBU_UART0_ALTERNATE && ARCH_MV78XX0
1653         default 0xfd883000 if DEBUG_ALPINE_UART0
1654         default 0xfde12000 if DEBUG_MVEBU_UART0_ALTERNATE && ARCH_DOVE
1655         default 0xfe012000 if DEBUG_MVEBU_UART0_ALTERNATE && ARCH_ORION5X
1656         default 0xfe017000 if DEBUG_MMP_UART2
1657         default 0xfe018000 if DEBUG_MMP_UART3
1658         default 0xfe100000 if DEBUG_IMX23_UART || DEBUG_IMX28_UART
1659         default 0xfe230000 if DEBUG_PICOXCELL_UART
1660         default 0xfe300000 if DEBUG_BCM_KONA_UART
1661         default 0xfe800000 if ARCH_IOP32X
1662         default 0xfeb00000 if DEBUG_HI3620_UART || DEBUG_HIX5HD2_UART
1663         default 0xfeb24000 if DEBUG_RK3X_UART0
1664         default 0xfeb26000 if DEBUG_RK3X_UART1
1665         default 0xfeb30c00 if DEBUG_KEYSTONE_UART0
1666         default 0xfeb31000 if DEBUG_KEYSTONE_UART1
1667         default 0xfec02000 if DEBUG_SOCFPGA_UART0
1668         default 0xfec02100 if DEBUG_SOCFPGA_UART1
1669         default 0xfec12000 if (DEBUG_MVEBU_UART0 || DEBUG_MVEBU_UART0_ALTERNATE) && ARCH_MVEBU
1670         default 0xfec12100 if DEBUG_MVEBU_UART1_ALTERNATE
1671         default 0xfec10000 if DEBUG_SIRFATLAS7_UART0
1672         default 0xfec20000 if DEBUG_DAVINCI_DMx_UART0
1673         default 0xfec20000 if DEBUG_SIRFATLAS7_UART1
1674         default 0xfec60000 if DEBUG_SIRFPRIMA2_UART1
1675         default 0xfec90000 if DEBUG_RK32_UART2
1676         default 0xfed0c000 if DEBUG_DAVINCI_DA8XX_UART1
1677         default 0xfed0d000 if DEBUG_DAVINCI_DA8XX_UART2
1678         default 0xfed60000 if DEBUG_RK29_UART0
1679         default 0xfed64000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
1680         default 0xfed68000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
1681         default 0xfedc0000 if DEBUG_EP93XX
1682         default 0xfee003f8 if DEBUG_FOOTBRIDGE_COM1
1683         default 0xfee20000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART
1684         default 0xfee82340 if ARCH_IOP13XX
1685         default 0xfef00000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
1686         default 0xfef00003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
1687         default 0xfef36000 if DEBUG_HIGHBANK_UART
1688         default 0xfefb0000 if DEBUG_OMAP1UART1 || DEBUG_OMAP7XXUART1
1689         default 0xfefb0800 if DEBUG_OMAP1UART2 || DEBUG_OMAP7XXUART2
1690         default 0xfefb9800 if DEBUG_OMAP1UART3 || DEBUG_OMAP7XXUART3
1691         default 0xfefff700 if ARCH_IOP33X
1692         default 0xff003000 if DEBUG_U300_UART
1693         default 0xffd01000 if DEBUG_HIP01_UART
1694         default DEBUG_UART_PHYS if !MMU
1695         depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
1696                 DEBUG_UART_8250 || DEBUG_UART_PL01X || DEBUG_MESON_UARTAO || \
1697                 DEBUG_NETX_UART || \
1698                 DEBUG_QCOM_UARTDM || DEBUG_S3C24XX_UART || \
1699                 DEBUG_S3C64XX_UART || \
1700                 DEBUG_BCM63XX_UART || DEBUG_ASM9260_UART || \
1701                 DEBUG_SIRFSOC_UART || DEBUG_DIGICOLOR_UA0 || \
1702                 DEBUG_AT91_UART
1703
1704 config DEBUG_UART_8250_SHIFT
1705         int "Register offset shift for the 8250 debug UART"
1706         depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
1707         default 0 if DEBUG_FOOTBRIDGE_COM1 || ARCH_IOP32X || DEBUG_BCM_5301X || \
1708                 DEBUG_OMAP7XXUART1 || DEBUG_OMAP7XXUART2 || DEBUG_OMAP7XXUART3
1709         default 2
1710
1711 config DEBUG_UART_8250_WORD
1712         bool "Use 32-bit accesses for 8250 UART"
1713         depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
1714         depends on DEBUG_UART_8250_SHIFT >= 2
1715         default y if DEBUG_PICOXCELL_UART || \
1716                 DEBUG_SOCFPGA_UART0 || DEBUG_SOCFPGA_UART1 || \
1717                 DEBUG_KEYSTONE_UART0 || DEBUG_KEYSTONE_UART1 || \
1718                 DEBUG_ALPINE_UART0 || \
1719                 DEBUG_DAVINCI_DMx_UART0 || DEBUG_DAVINCI_DA8XX_UART1 || \
1720                 DEBUG_DAVINCI_DA8XX_UART2 || \
1721                 DEBUG_BCM_KONA_UART || DEBUG_RK32_UART2
1722
1723 config DEBUG_UART_8250_PALMCHIP
1724         bool "8250 UART is Palmchip BK-310x"
1725         depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
1726         help
1727           Palmchip provides a UART implementation compatible with 16550
1728           except for having a different register layout.  Say Y here if
1729           the debug UART is of this type.
1730
1731 config DEBUG_UART_8250_FLOW_CONTROL
1732         bool "Enable flow control for 8250 UART"
1733         depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
1734         default y if ARCH_EBSA110 || DEBUG_FOOTBRIDGE_COM1 || DEBUG_GEMINI || ARCH_RPC
1735
1736 config DEBUG_UNCOMPRESS
1737         bool
1738         depends on ARCH_MULTIPLATFORM || PLAT_SAMSUNG || ARM_SINGLE_ARMV7M
1739         default y if DEBUG_LL && !DEBUG_OMAP2PLUS_UART && \
1740                      (!DEBUG_TEGRA_UART || !ZBOOT_ROM) && \
1741                      !DEBUG_BRCMSTB_UART
1742         help
1743           This option influences the normal decompressor output for
1744           multiplatform kernels.  Normally, multiplatform kernels disable
1745           decompressor output because it is not possible to know where to
1746           send the decompressor output.
1747
1748           When this option is set, the selected DEBUG_LL output method
1749           will be re-used for normal decompressor output on multiplatform
1750           kernels.
1751           
1752
1753 config UNCOMPRESS_INCLUDE
1754         string
1755         default "debug/uncompress.h" if ARCH_MULTIPLATFORM || ARCH_MSM || \
1756                                         PLAT_SAMSUNG || ARM_SINGLE_ARMV7M
1757         default "mach/uncompress.h"
1758
1759 config EARLY_PRINTK
1760         bool "Early printk"
1761         depends on DEBUG_LL
1762         help
1763           Say Y here if you want to have an early console using the
1764           kernel low-level debugging functions. Add earlyprintk to your
1765           kernel parameters to enable this console.
1766
1767 config ARM_KPROBES_TEST
1768         tristate "Kprobes test module"
1769         depends on KPROBES && MODULES
1770         help
1771           Perform tests of kprobes API and instruction set simulation.
1772
1773 config PID_IN_CONTEXTIDR
1774         bool "Write the current PID to the CONTEXTIDR register"
1775         depends on CPU_COPY_V6
1776         help
1777           Enabling this option causes the kernel to write the current PID to
1778           the PROCID field of the CONTEXTIDR register, at the expense of some
1779           additional instructions during context switch. Say Y here only if you
1780           are planning to use hardware trace tools with this kernel.
1781
1782 source "drivers/hwtracing/coresight/Kconfig"
1783
1784 endmenu