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