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