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