Merge tag 'samsung-dev' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux...
[cascardo/linux.git] / arch / arm / Kconfig.debug
1 menu "Kernel hacking"
2
3 source "lib/Kconfig.debug"
4
5 config STRICT_DEVMEM
6         bool "Filter access to /dev/mem"
7         depends on MMU
8         ---help---
9           If this option is disabled, you allow userspace (root) access to all
10           of memory, including kernel and userspace memory. Accidental
11           access to this is obviously disastrous, but specific access can
12           be used by people debugging the kernel.
13
14           If this option is switched on, the /dev/mem file only allows
15           userspace access to memory mapped peripherals.
16
17           If in doubt, say Y.
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 AT91_DEBUG_LL_DBGU0
85                 bool "Kernel low-level debugging on rm9200, 9260/9g20, 9261/9g10 and 9rl"
86                 depends on HAVE_AT91_DBGU0
87
88         config AT91_DEBUG_LL_DBGU1
89                 bool "Kernel low-level debugging on 9263 and 9g45"
90                 depends on HAVE_AT91_DBGU1
91
92         config DEBUG_BCM2835
93                 bool "Kernel low-level debugging on BCM2835 PL011 UART"
94                 depends on ARCH_BCM2835
95                 select DEBUG_UART_PL01X
96
97         config DEBUG_BERLIN_UART
98                 bool "Marvell Berlin SoC Debug UART"
99                 depends on ARCH_BERLIN
100                 select DEBUG_UART_8250
101                 help
102                   Say Y here if you want kernel low-level debugging support
103                   on Marvell Berlin SoC based platforms.
104
105         config DEBUG_CLPS711X_UART1
106                 bool "Kernel low-level debugging messages via UART1"
107                 depends on ARCH_CLPS711X
108                 help
109                   Say Y here if you want the debug print routines to direct
110                   their output to the first serial port on these devices.
111
112         config DEBUG_CLPS711X_UART2
113                 bool "Kernel low-level debugging messages via UART2"
114                 depends on ARCH_CLPS711X
115                 help
116                   Say Y here if you want the debug print routines to direct
117                   their output to the second serial port on these devices.
118
119         config DEBUG_CNS3XXX
120                 bool "Kernel Kernel low-level debugging on Cavium Networks CNS3xxx"
121                 depends on ARCH_CNS3XXX
122                 select DEBUG_UART_PL01X
123                 help
124                   Say Y here if you want the debug print routines to direct
125                   their output to the CNS3xxx UART0.
126
127         config DEBUG_DAVINCI_DA8XX_UART1
128                 bool "Kernel low-level debugging on DaVinci DA8XX using UART1"
129                 depends on ARCH_DAVINCI_DA8XX
130                 select DEBUG_UART_8250
131                 help
132                   Say Y here if you want the debug print routines to direct
133                   their output to UART1 serial port on DaVinci DA8XX devices.
134
135         config DEBUG_DAVINCI_DA8XX_UART2
136                 bool "Kernel low-level debugging on DaVinci DA8XX using UART2"
137                 depends on ARCH_DAVINCI_DA8XX
138                 select DEBUG_UART_8250
139                 help
140                   Say Y here if you want the debug print routines to direct
141                   their output to UART2 serial port on DaVinci DA8XX devices.
142
143         config DEBUG_DAVINCI_DMx_UART0
144                 bool "Kernel low-level debugging on DaVinci DMx using UART0"
145                 depends on ARCH_DAVINCI_DMx
146                 select DEBUG_UART_8250
147                 help
148                   Say Y here if you want the debug print routines to direct
149                   their output to UART0 serial port on DaVinci DMx devices.
150
151         config DEBUG_DAVINCI_TNETV107X_UART1
152                 bool "Kernel low-level debugging on DaVinci TNETV107x using UART1"
153                 depends on ARCH_DAVINCI_TNETV107X
154                 select DEBUG_UART_8250
155                 help
156                   Say Y here if you want the debug print routines to direct
157                   their output to UART1 serial port on DaVinci TNETV107X
158                   devices.
159
160         config DEBUG_ZYNQ_UART0
161                 bool "Kernel low-level debugging on Xilinx Zynq using UART0"
162                 depends on ARCH_ZYNQ
163                 help
164                   Say Y here if you want the debug print routines to direct
165                   their output to UART0 on the Zynq platform.
166
167         config DEBUG_ZYNQ_UART1
168                 bool "Kernel low-level debugging on Xilinx Zynq using UART1"
169                 depends on ARCH_ZYNQ
170                 help
171                   Say Y here if you want the debug print routines to direct
172                   their output to UART1 on the Zynq platform.
173
174                   If you have a ZC702 board and want early boot messages to
175                   appear on the USB serial adaptor, select this option.
176
177         config DEBUG_DC21285_PORT
178                 bool "Kernel low-level debugging messages via footbridge serial port"
179                 depends on FOOTBRIDGE
180                 help
181                   Say Y here if you want the debug print routines to direct
182                   their output to the serial port in the DC21285 (Footbridge).
183
184         config DEBUG_FOOTBRIDGE_COM1
185                 bool "Kernel low-level debugging messages via footbridge 8250 at PCI COM1"
186                 depends on FOOTBRIDGE
187                 help
188                   Say Y here if you want the debug print routines to direct
189                   their output to the 8250 at PCI COM1.
190
191         config DEBUG_HI3620_UART
192                 bool "Hisilicon HI3620 Debug UART"
193                 depends on ARCH_HI3xxx
194                 select DEBUG_UART_PL01X
195                 help
196                   Say Y here if you want kernel low-level debugging support
197                   on HI3620 UART.
198
199         config DEBUG_HI3716_UART
200                 bool "Hisilicon Hi3716 Debug UART"
201                 depends on ARCH_HI3xxx
202                 select DEBUG_UART_PL01X
203                 help
204                   Say Y here if you want kernel low-level debugging support
205                   on HI3716 UART.
206
207         config DEBUG_HIGHBANK_UART
208                 bool "Kernel low-level debugging messages via Highbank UART"
209                 depends on ARCH_HIGHBANK
210                 select DEBUG_UART_PL01X
211                 help
212                   Say Y here if you want the debug print routines to direct
213                   their output to the UART on Highbank based devices.
214
215         config DEBUG_IMX1_UART
216                 bool "i.MX1 Debug UART"
217                 depends on SOC_IMX1
218                 help
219                   Say Y here if you want kernel low-level debugging support
220                   on i.MX1.
221
222         config DEBUG_IMX23_UART
223                 bool "i.MX23 Debug UART"
224                 depends on SOC_IMX23
225                 select DEBUG_UART_PL01X
226                 help
227                   Say Y here if you want kernel low-level debugging support
228                   on i.MX23.
229
230         config DEBUG_IMX25_UART
231                 bool "i.MX25 Debug UART"
232                 depends on SOC_IMX25
233                 help
234                   Say Y here if you want kernel low-level debugging support
235                   on i.MX25.
236
237         config DEBUG_IMX21_IMX27_UART
238                 bool "i.MX21 and i.MX27 Debug UART"
239                 depends on SOC_IMX21 || SOC_IMX27
240                 help
241                   Say Y here if you want kernel low-level debugging support
242                   on i.MX21 or i.MX27.
243
244         config DEBUG_IMX28_UART
245                 bool "i.MX28 Debug UART"
246                 depends on SOC_IMX28
247                 select DEBUG_UART_PL01X
248                 help
249                   Say Y here if you want kernel low-level debugging support
250                   on i.MX28.
251
252         config DEBUG_IMX31_UART
253                 bool "i.MX31 Debug UART"
254                 depends on SOC_IMX31
255                 help
256                   Say Y here if you want kernel low-level debugging support
257                   on i.MX31.
258
259         config DEBUG_IMX35_UART
260                 bool "i.MX35 Debug UART"
261                 depends on SOC_IMX35
262                 help
263                   Say Y here if you want kernel low-level debugging support
264                   on i.MX35.
265
266         config DEBUG_IMX51_UART
267                 bool "i.MX51 Debug UART"
268                 depends on SOC_IMX51
269                 help
270                   Say Y here if you want kernel low-level debugging support
271                   on i.MX51.
272
273         config DEBUG_IMX53_UART
274                 bool "i.MX53 Debug UART"
275                 depends on SOC_IMX53
276                 help
277                   Say Y here if you want kernel low-level debugging support
278                   on i.MX53.
279
280         config DEBUG_IMX6Q_UART
281                 bool "i.MX6Q/DL Debug UART"
282                 depends on SOC_IMX6Q
283                 help
284                   Say Y here if you want kernel low-level debugging support
285                   on i.MX6Q/DL.
286
287         config DEBUG_IMX6SL_UART
288                 bool "i.MX6SL Debug UART"
289                 depends on SOC_IMX6SL
290                 help
291                   Say Y here if you want kernel low-level debugging support
292                   on i.MX6SL.
293
294         config DEBUG_KEYSTONE_UART0
295                 bool "Kernel low-level debugging on KEYSTONE2 using UART0"
296                 depends on ARCH_KEYSTONE
297                 select DEBUG_UART_8250
298                 help
299                   Say Y here if you want the debug print routines to direct
300                   their output to UART0 serial port on KEYSTONE2 devices.
301
302         config DEBUG_KEYSTONE_UART1
303                 bool "Kernel low-level debugging on KEYSTONE2 using UART1"
304                 depends on ARCH_KEYSTONE
305                 select DEBUG_UART_8250
306                 help
307                   Say Y here if you want the debug print routines to direct
308                   their output to UART1 serial port on KEYSTONE2 devices.
309
310         config DEBUG_MMP_UART2
311                 bool "Kernel low-level debugging message via MMP UART2"
312                 depends on ARCH_MMP
313                 select DEBUG_UART_8250
314                 help
315                   Say Y here if you want kernel low-level debugging support
316                   on MMP UART2.
317
318         config DEBUG_MMP_UART3
319                 bool "Kernel low-level debugging message via MMP UART3"
320                 depends on ARCH_MMP
321                 select DEBUG_UART_8250
322                 help
323                   Say Y here if you want kernel low-level debugging support
324                   on MMP UART3.
325
326         config DEBUG_MSM_UART1
327                 bool "Kernel low-level debugging messages via MSM UART1"
328                 depends on ARCH_MSM7X00A || ARCH_MSM7X30 || ARCH_QSD8X50
329                 select DEBUG_MSM_UART
330                 help
331                   Say Y here if you want the debug print routines to direct
332                   their output to the first serial port on MSM devices.
333
334         config DEBUG_MSM_UART2
335                 bool "Kernel low-level debugging messages via MSM UART2"
336                 depends on ARCH_MSM7X00A || ARCH_MSM7X30 || ARCH_QSD8X50
337                 select DEBUG_MSM_UART
338                 help
339                   Say Y here if you want the debug print routines to direct
340                   their output to the second serial port on MSM devices.
341
342         config DEBUG_MSM_UART3
343                 bool "Kernel low-level debugging messages via MSM UART3"
344                 depends on ARCH_MSM7X00A || ARCH_MSM7X30 || ARCH_QSD8X50
345                 select DEBUG_MSM_UART
346                 help
347                   Say Y here if you want the debug print routines to direct
348                   their output to the third serial port on MSM devices.
349
350         config DEBUG_MSM8660_UART
351                 bool "Kernel low-level debugging messages via MSM 8660 UART"
352                 depends on ARCH_MSM8X60
353                 select MSM_HAS_DEBUG_UART_HS
354                 select DEBUG_MSM_UART
355                 help
356                   Say Y here if you want the debug print routines to direct
357                   their output to the serial port on MSM 8660 devices.
358
359         config DEBUG_MSM8960_UART
360                 bool "Kernel low-level debugging messages via MSM 8960 UART"
361                 depends on ARCH_MSM8960
362                 select MSM_HAS_DEBUG_UART_HS
363                 select DEBUG_MSM_UART
364                 help
365                   Say Y here if you want the debug print routines to direct
366                   their output to the serial port on MSM 8960 devices.
367
368         config DEBUG_MSM8974_UART
369                 bool "Kernel low-level debugging messages via MSM 8974 UART"
370                 depends on ARCH_MSM8974
371                 select MSM_HAS_DEBUG_UART_HS
372                 select DEBUG_MSM_UART
373                 help
374                   Say Y here if you want the debug print routines to direct
375                   their output to the serial port on MSM 8974 devices.
376
377         config DEBUG_MVEBU_UART
378                 bool "Kernel low-level debugging messages via MVEBU UART (old bootloaders)"
379                 depends on ARCH_MVEBU
380                 select DEBUG_UART_8250
381                 help
382                   Say Y here if you want kernel low-level debugging support
383                   on MVEBU based platforms.
384
385                   This option should be used with the old bootloaders
386                   that left the internal registers mapped at
387                   0xd0000000. As of today, this is the case on
388                   platforms such as the Globalscale Mirabox or the
389                   Plathome OpenBlocks AX3, when using the original
390                   bootloader.
391
392                   If the wrong DEBUG_MVEBU_UART* option is selected,
393                   when u-boot hands over to the kernel, the system
394                   silently crashes, with no serial output at all.
395
396         config DEBUG_MVEBU_UART_ALTERNATE
397                 bool "Kernel low-level debugging messages via MVEBU UART (new bootloaders)"
398                 depends on ARCH_MVEBU
399                 select DEBUG_UART_8250
400                 help
401                   Say Y here if you want kernel low-level debugging support
402                   on MVEBU based platforms.
403
404                   This option should be used with the new bootloaders
405                   that remap the internal registers at 0xf1000000.
406
407                   If the wrong DEBUG_MVEBU_UART* option is selected,
408                   when u-boot hands over to the kernel, the system
409                   silently crashes, with no serial output at all.
410
411         config DEBUG_VF_UART
412                 bool "Vybrid UART"
413                 depends on SOC_VF610
414                 help
415                   Say Y here if you want kernel low-level debugging support
416                   on Vybrid based platforms.
417
418         config DEBUG_NOMADIK_UART
419                 bool "Kernel low-level debugging messages via NOMADIK UART"
420                 depends on ARCH_NOMADIK
421                 select DEBUG_UART_PL01X
422                 help
423                   Say Y here if you want kernel low-level debugging support
424                   on NOMADIK based platforms.
425
426         config DEBUG_NSPIRE_CLASSIC_UART
427                 bool "Kernel low-level debugging via TI-NSPIRE 8250 UART"
428                 depends on ARCH_NSPIRE
429                 select DEBUG_UART_8250
430                 help
431                   Say Y here if you want kernel low-level debugging support
432                   on TI-NSPIRE classic models.
433
434         config DEBUG_NSPIRE_CX_UART
435                 bool "Kernel low-level debugging via TI-NSPIRE PL011 UART"
436                 depends on ARCH_NSPIRE
437                 select DEBUG_UART_PL01X
438                 help
439                   Say Y here if you want kernel low-level debugging support
440                   on TI-NSPIRE CX models.
441
442         config DEBUG_OMAP2UART1
443                 bool "OMAP2/3/4 UART1 (omap2/3 sdp boards and some omap3 boards)"
444                 depends on ARCH_OMAP2PLUS
445                 select DEBUG_OMAP2PLUS_UART
446                 help
447                   This covers at least h4, 2430sdp, 3430sdp, 3630sdp,
448                   omap3 torpedo and 3530 lv som.
449
450         config DEBUG_OMAP2UART2
451                 bool "Kernel low-level debugging messages via OMAP2/3/4 UART2"
452                 depends on ARCH_OMAP2PLUS
453                 select DEBUG_OMAP2PLUS_UART
454
455         config DEBUG_OMAP2UART3
456                 bool "Kernel low-level debugging messages via OMAP2 UART3 (n8x0)"
457                 depends on ARCH_OMAP2PLUS
458                 select DEBUG_OMAP2PLUS_UART
459
460         config DEBUG_OMAP3UART3
461                 bool "Kernel low-level debugging messages via OMAP3 UART3 (most omap3 boards)"
462                 depends on ARCH_OMAP2PLUS
463                 select DEBUG_OMAP2PLUS_UART
464                 help
465                   This covers at least cm_t3x, beagle, crane, devkit8000,
466                   igep00x0, ldp, n900, n9(50), pandora, overo, touchbook,
467                   and 3517evm.
468
469         config DEBUG_OMAP4UART3
470                 bool "Kernel low-level debugging messages via OMAP4/5 UART3 (omap4 blaze, panda, omap5 sevm)"
471                 depends on ARCH_OMAP2PLUS
472                 select DEBUG_OMAP2PLUS_UART
473
474         config DEBUG_OMAP3UART4
475                 bool "Kernel low-level debugging messages via OMAP36XX UART4"
476                 depends on ARCH_OMAP2PLUS
477                 select DEBUG_OMAP2PLUS_UART
478
479         config DEBUG_OMAP4UART4
480                 bool "Kernel low-level debugging messages via OMAP4/5 UART4"
481                 depends on ARCH_OMAP2PLUS
482                 select DEBUG_OMAP2PLUS_UART
483
484         config DEBUG_TI81XXUART1
485                 bool "Kernel low-level debugging messages via TI81XX UART1 (ti8148evm)"
486                 depends on ARCH_OMAP2PLUS
487                 select DEBUG_OMAP2PLUS_UART
488
489         config DEBUG_TI81XXUART2
490                 bool "Kernel low-level debugging messages via TI81XX UART2"
491                 depends on ARCH_OMAP2PLUS
492                 select DEBUG_OMAP2PLUS_UART
493
494         config DEBUG_TI81XXUART3
495                 bool "Kernel low-level debugging messages via TI81XX UART3 (ti8168evm)"
496                 depends on ARCH_OMAP2PLUS
497                 select DEBUG_OMAP2PLUS_UART
498
499         config DEBUG_AM33XXUART1
500                 bool "Kernel low-level debugging messages via AM33XX UART1"
501                 depends on ARCH_OMAP2PLUS
502                 select DEBUG_OMAP2PLUS_UART
503
504         config DEBUG_ZOOM_UART
505                 bool "Kernel low-level debugging messages via Zoom2/3 UART"
506                 depends on ARCH_OMAP2PLUS
507                 select DEBUG_OMAP2PLUS_UART
508
509         config DEBUG_PICOXCELL_UART
510                 depends on ARCH_PICOXCELL
511                 bool "Use PicoXcell UART for low-level debug"
512                 select DEBUG_UART_8250
513                 help
514                   Say Y here if you want kernel low-level debugging support
515                   on PicoXcell based platforms.
516
517         config DEBUG_PXA_UART1
518                 depends on ARCH_PXA
519                 bool "Use PXA UART1 for low-level debug"
520                 select DEBUG_UART_8250
521                 help
522                   Say Y here if you want kernel low-level debugging support
523                   on PXA UART1.
524
525         config DEBUG_REALVIEW_STD_PORT
526                 bool "RealView Default UART"
527                 depends on ARCH_REALVIEW
528                 select DEBUG_UART_PL01X
529                 help
530                   Say Y here if you want the debug print routines to direct
531                   their output to the serial port on RealView EB, PB11MP, PBA8
532                   and PBX platforms.
533
534         config DEBUG_REALVIEW_PB1176_PORT
535                 bool "RealView PB1176 UART"
536                 depends on MACH_REALVIEW_PB1176
537                 select DEBUG_UART_PL01X
538                 help
539                   Say Y here if you want the debug print routines to direct
540                   their output to the standard serial port on the RealView
541                   PB1176 platform.
542
543         config DEBUG_RK29_UART0
544                 bool "Kernel low-level debugging messages via Rockchip RK29 UART0"
545                 depends on ARCH_ROCKCHIP
546                 select DEBUG_UART_8250
547                 help
548                   Say Y here if you want kernel low-level debugging support
549                   on Rockchip based platforms.
550
551         config DEBUG_RK29_UART1
552                 bool "Kernel low-level debugging messages via Rockchip RK29 UART1"
553                 depends on ARCH_ROCKCHIP
554                 select DEBUG_UART_8250
555                 help
556                   Say Y here if you want kernel low-level debugging support
557                   on Rockchip based platforms.
558
559         config DEBUG_RK29_UART2
560                 bool "Kernel low-level debugging messages via Rockchip RK29 UART2"
561                 depends on ARCH_ROCKCHIP
562                 select DEBUG_UART_8250
563                 help
564                   Say Y here if you want kernel low-level debugging support
565                   on Rockchip based platforms.
566
567         config DEBUG_RK3X_UART0
568                 bool "Kernel low-level debugging messages via Rockchip RK3X UART0"
569                 depends on ARCH_ROCKCHIP
570                 select DEBUG_UART_8250
571                 help
572                   Say Y here if you want kernel low-level debugging support
573                   on Rockchip based platforms.
574
575         config DEBUG_RK3X_UART1
576                 bool "Kernel low-level debugging messages via Rockchip RK3X UART1"
577                 depends on ARCH_ROCKCHIP
578                 select DEBUG_UART_8250
579                 help
580                   Say Y here if you want kernel low-level debugging support
581                   on Rockchip based platforms.
582
583         config DEBUG_RK3X_UART2
584                 bool "Kernel low-level debugging messages via Rockchip RK3X UART2"
585                 depends on ARCH_ROCKCHIP
586                 select DEBUG_UART_8250
587                 help
588                   Say Y here if you want kernel low-level debugging support
589                   on Rockchip based platforms.
590
591         config DEBUG_RK3X_UART3
592                 bool "Kernel low-level debugging messages via Rockchip RK3X UART3"
593                 depends on ARCH_ROCKCHIP
594                 select DEBUG_UART_8250
595                 help
596                   Say Y here if you want kernel low-level debugging support
597                   on Rockchip based platforms.
598
599         config DEBUG_S3C_UART0
600                 depends on PLAT_SAMSUNG
601                 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
602                 bool "Use S3C UART 0 for low-level debug"
603                 help
604                   Say Y here if you want the debug print routines to direct
605                   their output to UART 0. The port must have been initialised
606                   by the boot-loader before use.
607
608                   The uncompressor code port configuration is now handled
609                   by CONFIG_S3C_LOWLEVEL_UART_PORT.
610
611         config DEBUG_S3C_UART1
612                 depends on PLAT_SAMSUNG
613                 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
614                 bool "Use S3C UART 1 for low-level debug"
615                 help
616                   Say Y here if you want the debug print routines to direct
617                   their output to UART 1. The port must have been initialised
618                   by the boot-loader before use.
619
620                   The uncompressor code port configuration is now handled
621                   by CONFIG_S3C_LOWLEVEL_UART_PORT.
622
623         config DEBUG_S3C_UART2
624                 depends on PLAT_SAMSUNG
625                 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
626                 bool "Use S3C UART 2 for low-level debug"
627                 help
628                   Say Y here if you want the debug print routines to direct
629                   their output to UART 2. The port must have been initialised
630                   by the boot-loader before use.
631
632                   The uncompressor code port configuration is now handled
633                   by CONFIG_S3C_LOWLEVEL_UART_PORT.
634
635         config DEBUG_S3C_UART3
636                 depends on PLAT_SAMSUNG && ARCH_EXYNOS
637                 select DEBUG_EXYNOS_UART
638                 bool "Use S3C UART 3 for low-level debug"
639                 help
640                   Say Y here if you want the debug print routines to direct
641                   their output to UART 3. The port must have been initialised
642                   by the boot-loader before use.
643
644                   The uncompressor code port configuration is now handled
645                   by CONFIG_S3C_LOWLEVEL_UART_PORT.
646
647         config DEBUG_SOCFPGA_UART
648                 depends on ARCH_SOCFPGA
649                 bool "Use SOCFPGA UART for low-level debug"
650                 select DEBUG_UART_8250
651                 help
652                   Say Y here if you want kernel low-level debugging support
653                   on SOCFPGA based platforms.
654
655         config DEBUG_SUNXI_UART0
656                 bool "Kernel low-level debugging messages via sunXi UART0"
657                 depends on ARCH_SUNXI
658                 select DEBUG_UART_8250
659                 help
660                   Say Y here if you want kernel low-level debugging support
661                   on Allwinner A1X based platforms on the UART0.
662
663         config DEBUG_SUNXI_UART1
664                 bool "Kernel low-level debugging messages via sunXi UART1"
665                 depends on ARCH_SUNXI
666                 select DEBUG_UART_8250
667                 help
668                   Say Y here if you want kernel low-level debugging support
669                   on Allwinner A1X based platforms on the UART1.
670
671         config TEGRA_DEBUG_UART_AUTO_ODMDATA
672                 bool "Kernel low-level debugging messages via Tegra UART via ODMDATA"
673                 depends on ARCH_TEGRA
674                 select DEBUG_TEGRA_UART
675                 help
676                   Automatically determines which UART to use for low-level
677                   debug based on the ODMDATA value. This value is part of
678                   the BCT, and is written to the boot memory device using
679                   nvflash, or other flashing tool.  When bits 19:18 are 3,
680                   then bits 17:15 indicate which UART to use; 0/1/2/3/4
681                   are UART A/B/C/D/E.
682
683         config TEGRA_DEBUG_UARTA
684                 bool "Kernel low-level debugging messages via Tegra UART A"
685                 depends on ARCH_TEGRA
686                 select DEBUG_TEGRA_UART
687                 help
688                   Say Y here if you want kernel low-level debugging support
689                   on Tegra based platforms.
690
691         config TEGRA_DEBUG_UARTB
692                 bool "Kernel low-level debugging messages via Tegra UART B"
693                 depends on ARCH_TEGRA
694                 select DEBUG_TEGRA_UART
695                 help
696                   Say Y here if you want kernel low-level debugging support
697                   on Tegra based platforms.
698
699         config TEGRA_DEBUG_UARTC
700                 bool "Kernel low-level debugging messages via Tegra UART C"
701                 depends on ARCH_TEGRA
702                 select DEBUG_TEGRA_UART
703                 help
704                   Say Y here if you want kernel low-level debugging support
705                   on Tegra based platforms.
706
707         config TEGRA_DEBUG_UARTD
708                 bool "Kernel low-level debugging messages via Tegra UART D"
709                 depends on ARCH_TEGRA
710                 select DEBUG_TEGRA_UART
711                 help
712                   Say Y here if you want kernel low-level debugging support
713                   on Tegra based platforms.
714
715         config TEGRA_DEBUG_UARTE
716                 bool "Kernel low-level debugging messages via Tegra UART E"
717                 depends on ARCH_TEGRA
718                 select DEBUG_TEGRA_UART
719                 help
720                   Say Y here if you want kernel low-level debugging support
721                   on Tegra based platforms.
722
723         config DEBUG_SIRFPRIMA2_UART1
724                 bool "Kernel low-level debugging messages via SiRFprimaII UART1"
725                 depends on ARCH_PRIMA2
726                 help
727                   Say Y here if you want the debug print routines to direct
728                   their output to the uart1 port on SiRFprimaII devices.
729
730         config DEBUG_SIRFMARCO_UART1
731                 bool "Kernel low-level debugging messages via SiRFmarco UART1"
732                 depends on ARCH_MARCO
733                 help
734                   Say Y here if you want the debug print routines to direct
735                   their output to the uart1 port on SiRFmarco devices.
736
737         config STIH41X_DEBUG_ASC2
738                 bool "Use StiH415/416 ASC2 UART for low-level debug"
739                 depends on ARCH_STI
740                 select DEBUG_STI_UART
741                 help
742                   Say Y here if you want kernel low-level debugging support
743                   on STiH415/416 based platforms like b2000, which has
744                   default UART wired up to ASC2.
745
746                   If unsure, say N.
747
748         config STIH41X_DEBUG_SBC_ASC1
749                 bool "Use StiH415/416 SBC ASC1 UART for low-level debug"
750                 depends on ARCH_STI
751                 select DEBUG_STI_UART
752                 help
753                   Say Y here if you want kernel low-level debugging support
754                   on STiH415/416 based platforms like b2020. which has
755                   default UART wired up to SBC ASC1.
756
757                   If unsure, say N.
758
759         config DEBUG_U300_UART
760                 bool "Kernel low-level debugging messages via U300 UART0"
761                 depends on ARCH_U300
762                 select DEBUG_UART_PL01X
763                 help
764                   Say Y here if you want the debug print routines to direct
765                   their output to the uart port on U300 devices.
766
767         config DEBUG_UX500_UART
768                 depends on ARCH_U8500
769                 bool "Use Ux500 UART for low-level debug"
770                 help
771                   Say Y here if you want kernel low-level debugging support
772                   on Ux500 based platforms.
773
774         config DEBUG_VEXPRESS_UART0_DETECT
775                 bool "Autodetect UART0 on Versatile Express Cortex-A core tiles"
776                 depends on ARCH_VEXPRESS && CPU_CP15_MMU
777                 help
778                   This option enables a simple heuristic which tries to determine
779                   the motherboard's memory map variant (original or RS1) and then
780                   choose the relevant UART0 base address.
781
782                   Note that this will only work with standard A-class core tiles,
783                   and may fail with non-standard SMM or custom software models.
784
785         config DEBUG_VEXPRESS_UART0_CA9
786                 bool "Use PL011 UART0 at 0x10009000 (V2P-CA9 core tile)"
787                 depends on ARCH_VEXPRESS
788                 select DEBUG_UART_PL01X
789                 help
790                   This option selects UART0 at 0x10009000. Except for custom models,
791                   this applies only to the V2P-CA9 tile.
792
793         config DEBUG_VEXPRESS_UART0_RS1
794                 bool "Use PL011 UART0 at 0x1c090000 (RS1 complaint tiles)"
795                 depends on ARCH_VEXPRESS
796                 select DEBUG_UART_PL01X
797                 help
798                   This option selects UART0 at 0x1c090000. This applies to most
799                   of the tiles using the RS1 memory map, including all new A-class
800                   core tiles, FPGA-based SMMs and software models.
801
802         config DEBUG_VEXPRESS_UART0_CRX
803                 bool "Use PL011 UART0 at 0xb0090000 (Cortex-R compliant tiles)"
804                 depends on ARCH_VEXPRESS && !MMU
805                 select DEBUG_UART_PL01X
806                 help
807                   This option selects UART0 at 0xb0090000. This is appropriate for
808                   Cortex-R series tiles and SMMs, such as Cortex-R5 and Cortex-R7
809
810         config DEBUG_VT8500_UART0
811                 bool "Use UART0 on VIA/Wondermedia SoCs"
812                 depends on ARCH_VT8500
813                 help
814                   This option selects UART0 on VIA/Wondermedia System-on-a-chip
815                   devices, including VT8500, WM8505, WM8650 and WM8850.
816
817         config DEBUG_LL_UART_NONE
818                 bool "No low-level debugging UART"
819                 depends on !ARCH_MULTIPLATFORM
820                 help
821                   Say Y here if your platform doesn't provide a UART option
822                   above. This relies on your platform choosing the right UART
823                   definition internally in order for low-level debugging to
824                   work.
825
826         config DEBUG_ICEDCC
827                 bool "Kernel low-level debugging via EmbeddedICE DCC channel"
828                 help
829                   Say Y here if you want the debug print routines to direct
830                   their output to the EmbeddedICE macrocell's DCC channel using
831                   co-processor 14. This is known to work on the ARM9 style ICE
832                   channel and on the XScale with the PEEDI.
833
834                   Note that the system will appear to hang during boot if there
835                   is nothing connected to read from the DCC.
836
837         config DEBUG_SEMIHOSTING
838                 bool "Kernel low-level debug output via semihosting I/O"
839                 help
840                   Semihosting enables code running on an ARM target to use
841                   the I/O facilities on a host debugger/emulator through a
842                   simple SVC call. The host debugger or emulator must have
843                   semihosting enabled for the special svc call to be trapped
844                   otherwise the kernel will crash.
845
846                   This is known to work with OpenOCD, as well as
847                   ARM's Fast Models, or any other controlling environment
848                   that implements semihosting.
849
850                   For more details about semihosting, please see
851                   chapter 8 of DUI0203I_rvct_developer_guide.pdf from ARM Ltd.
852
853         config DEBUG_LL_UART_8250
854                 bool "Kernel low-level debugging via 8250 UART"
855                 help
856                   Say Y here if you wish the debug print routes to direct
857                   their output to an 8250 UART.  You can use this option
858                   to provide the parameters for the 8250 UART rather than
859                   selecting one of the platform specific options above if
860                   you know the parameters for the port.
861
862                   This option is preferred over the platform specific
863                   options; the platform specific options are deprecated
864                   and will be soon removed.
865
866         config DEBUG_LL_UART_EFM32
867                 bool "Kernel low-level debugging via efm32 UART"
868                 depends on ARCH_EFM32
869                 help
870                   Say Y here if you want the debug print routines to direct
871                   their output to an UART or USART port on efm32 based
872                   machines. Use the following addresses for DEBUG_UART_PHYS:
873
874                     0x4000c000 | USART0
875                     0x4000c400 | USART1
876                     0x4000c800 | USART2
877                     0x4000e000 | UART0
878                     0x4000e400 | UART1
879
880         config DEBUG_LL_UART_PL01X
881                 bool "Kernel low-level debugging via ARM Ltd PL01x Primecell UART"
882                 help
883                   Say Y here if you wish the debug print routes to direct
884                   their output to a PL01x Primecell UART.  You can use
885                   this option to provide the parameters for the UART
886                   rather than selecting one of the platform specific
887                   options above if you know the parameters for the port.
888
889                   This option is preferred over the platform specific
890                   options; the platform specific options are deprecated
891                   and will be soon removed.
892
893 endchoice
894
895 config DEBUG_EXYNOS_UART
896         bool
897
898 config DEBUG_OMAP2PLUS_UART
899         bool
900         depends on ARCH_OMAP2PLUS
901
902 config DEBUG_IMX_UART_PORT
903         int "i.MX Debug UART Port Selection" if DEBUG_IMX1_UART || \
904                                                 DEBUG_IMX25_UART || \
905                                                 DEBUG_IMX21_IMX27_UART || \
906                                                 DEBUG_IMX31_UART || \
907                                                 DEBUG_IMX35_UART || \
908                                                 DEBUG_IMX51_UART || \
909                                                 DEBUG_IMX53_UART || \
910                                                 DEBUG_IMX6Q_UART || \
911                                                 DEBUG_IMX6SL_UART
912         default 1
913         depends on ARCH_MXC
914         help
915           Choose UART port on which kernel low-level debug messages
916           should be output.
917
918 config DEBUG_TEGRA_UART
919         bool
920         depends on ARCH_TEGRA
921
922 config DEBUG_STI_UART
923         bool
924         depends on ARCH_STI
925
926 config DEBUG_MSM_UART
927         bool
928         depends on ARCH_MSM
929
930 config DEBUG_LL_INCLUDE
931         string
932         default "debug/8250.S" if DEBUG_LL_UART_8250 || DEBUG_UART_8250
933         default "debug/pl01x.S" if DEBUG_LL_UART_PL01X || DEBUG_UART_PL01X
934         default "debug/exynos.S" if DEBUG_EXYNOS_UART
935         default "debug/efm32.S" if DEBUG_LL_UART_EFM32
936         default "debug/icedcc.S" if DEBUG_ICEDCC
937         default "debug/imx.S" if DEBUG_IMX1_UART || \
938                                  DEBUG_IMX25_UART || \
939                                  DEBUG_IMX21_IMX27_UART || \
940                                  DEBUG_IMX31_UART || \
941                                  DEBUG_IMX35_UART || \
942                                  DEBUG_IMX51_UART || \
943                                  DEBUG_IMX53_UART ||\
944                                  DEBUG_IMX6Q_UART || \
945                                  DEBUG_IMX6SL_UART
946         default "debug/msm.S" if DEBUG_MSM_UART
947         default "debug/omap2plus.S" if DEBUG_OMAP2PLUS_UART
948         default "debug/sirf.S" if DEBUG_SIRFPRIMA2_UART1 || DEBUG_SIRFMARCO_UART1
949         default "debug/sti.S" if DEBUG_STI_UART
950         default "debug/tegra.S" if DEBUG_TEGRA_UART
951         default "debug/ux500.S" if DEBUG_UX500_UART
952         default "debug/vexpress.S" if DEBUG_VEXPRESS_UART0_DETECT
953         default "debug/vf.S" if DEBUG_VF_UART
954         default "debug/vt8500.S" if DEBUG_VT8500_UART0
955         default "debug/zynq.S" if DEBUG_ZYNQ_UART0 || DEBUG_ZYNQ_UART1
956         default "mach/debug-macro.S"
957
958 # Compatibility options for PL01x
959 config DEBUG_UART_PL01X
960         def_bool ARCH_EP93XX || \
961                 ARCH_INTEGRATOR || \
962                 ARCH_SPEAR3XX || \
963                 ARCH_SPEAR6XX || \
964                 ARCH_SPEAR13XX || \
965                 ARCH_VERSATILE
966
967 # Compatibility options for 8250
968 config DEBUG_UART_8250
969         def_bool ARCH_DOVE || ARCH_EBSA110 || \
970                 (FOOTBRIDGE && !DEBUG_DC21285_PORT) || \
971                 ARCH_GEMINI || ARCH_IOP13XX || ARCH_IOP32X || \
972                 ARCH_IOP33X || ARCH_IXP4XX || ARCH_KIRKWOOD || \
973                 ARCH_LPC32XX || ARCH_MV78XX0 || ARCH_ORION5X || ARCH_RPC
974
975 config DEBUG_UART_PHYS
976         hex "Physical base address of debug UART"
977         default 0x01c20000 if DEBUG_DAVINCI_DMx_UART0
978         default 0x01c28000 if DEBUG_SUNXI_UART0
979         default 0x01c28400 if DEBUG_SUNXI_UART1
980         default 0x01d0c000 if DEBUG_DAVINCI_DA8XX_UART1
981         default 0x01d0d000 if DEBUG_DAVINCI_DA8XX_UART2
982         default 0x02530c00 if DEBUG_KEYSTONE_UART0
983         default 0x02531000 if DEBUG_KEYSTONE_UART1
984         default 0x03010fe0 if ARCH_RPC
985         default 0x08108300 if DEBUG_DAVINCI_TNETV107X_UART1
986         default 0x10009000 if DEBUG_REALVIEW_STD_PORT || DEBUG_CNS3XXX || \
987                                 DEBUG_VEXPRESS_UART0_CA9
988         default 0x1010c000 if DEBUG_REALVIEW_PB1176_PORT
989         default 0x10124000 if DEBUG_RK3X_UART0
990         default 0x10126000 if DEBUG_RK3X_UART1
991         default 0x101f1000 if ARCH_VERSATILE
992         default 0x101fb000 if DEBUG_NOMADIK_UART
993         default 0x16000000 if ARCH_INTEGRATOR
994         default 0x1c090000 if DEBUG_VEXPRESS_UART0_RS1
995         default 0x20060000 if DEBUG_RK29_UART0
996         default 0x20064000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
997         default 0x20068000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
998         default 0x20201000 if DEBUG_BCM2835
999         default 0x4000e400 if DEBUG_LL_UART_EFM32
1000         default 0x40090000 if ARCH_LPC32XX
1001         default 0x40100000 if DEBUG_PXA_UART1
1002         default 0x42000000 if ARCH_GEMINI
1003         default 0x7c0003f8 if FOOTBRIDGE
1004         default 0x80230000 if DEBUG_PICOXCELL_UART
1005         default 0x80070000 if DEBUG_IMX23_UART
1006         default 0x80074000 if DEBUG_IMX28_UART
1007         default 0x808c0000 if ARCH_EP93XX
1008         default 0x90020000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART
1009         default 0xb0090000 if DEBUG_VEXPRESS_UART0_CRX
1010         default 0xc0013000 if DEBUG_U300_UART
1011         default 0xc8000000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
1012         default 0xc8000003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
1013         default 0xd0000000 if ARCH_SPEAR3XX || ARCH_SPEAR6XX
1014         default 0xd0012000 if DEBUG_MVEBU_UART
1015         default 0xd4017000 if DEBUG_MMP_UART2
1016         default 0xd4018000 if DEBUG_MMP_UART3
1017         default 0xe0000000 if ARCH_SPEAR13XX
1018         default 0xf0000be0 if ARCH_EBSA110
1019         default 0xf1012000 if DEBUG_MVEBU_UART_ALTERNATE
1020         default 0xf1012000 if ARCH_DOVE || ARCH_KIRKWOOD || ARCH_MV78XX0 || \
1021                                 ARCH_ORION5X
1022         default 0xf7fc9000 if DEBUG_BERLIN_UART
1023         default 0xf8b00000 if DEBUG_HI3716_UART
1024         default 0xfcb00000 if DEBUG_HI3620_UART
1025         default 0xfe800000 if ARCH_IOP32X
1026         default 0xffc02000 if DEBUG_SOCFPGA_UART
1027         default 0xffd82340 if ARCH_IOP13XX
1028         default 0xfff36000 if DEBUG_HIGHBANK_UART
1029         default 0xfffff700 if ARCH_IOP33X
1030         depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
1031                 DEBUG_LL_UART_EFM32 || \
1032                 DEBUG_UART_8250 || DEBUG_UART_PL01X
1033
1034 config DEBUG_UART_VIRT
1035         hex "Virtual base address of debug UART"
1036         default 0xe0010fe0 if ARCH_RPC
1037         default 0xf0000be0 if ARCH_EBSA110
1038         default 0xf0009000 if DEBUG_CNS3XXX
1039         default 0xf01fb000 if DEBUG_NOMADIK_UART
1040         default 0xf0201000 if DEBUG_BCM2835
1041         default 0xf11f1000 if ARCH_VERSATILE
1042         default 0xf1600000 if ARCH_INTEGRATOR
1043         default 0xf1c28000 if DEBUG_SUNXI_UART0
1044         default 0xf1c28400 if DEBUG_SUNXI_UART1
1045         default 0xf2100000 if DEBUG_PXA_UART1
1046         default 0xf4090000 if ARCH_LPC32XX
1047         default 0xf4200000 if ARCH_GEMINI
1048         default 0xf7fc9000 if DEBUG_BERLIN_UART
1049         default 0xf8009000 if DEBUG_VEXPRESS_UART0_CA9
1050         default 0xf8090000 if DEBUG_VEXPRESS_UART0_RS1
1051         default 0xfb009000 if DEBUG_REALVIEW_STD_PORT
1052         default 0xfb10c000 if DEBUG_REALVIEW_PB1176_PORT
1053         default 0xfd000000 if ARCH_SPEAR3XX || ARCH_SPEAR6XX
1054         default 0xfd000000 if ARCH_SPEAR13XX
1055         default 0xfd012000 if ARCH_MV78XX0
1056         default 0xfde12000 if ARCH_DOVE
1057         default 0xfe012000 if ARCH_ORION5X
1058         default 0xfe017000 if DEBUG_MMP_UART2
1059         default 0xfe018000 if DEBUG_MMP_UART3
1060         default 0xfe100000 if DEBUG_IMX23_UART || DEBUG_IMX28_UART
1061         default 0xfe230000 if DEBUG_PICOXCELL_UART
1062         default 0xfe800000 if ARCH_IOP32X
1063         default 0xfeb00000 if DEBUG_HI3620_UART || DEBUG_HI3716_UART
1064         default 0xfeb24000 if DEBUG_RK3X_UART0
1065         default 0xfeb26000 if DEBUG_RK3X_UART1
1066         default 0xfeb30c00 if DEBUG_KEYSTONE_UART0
1067         default 0xfeb31000 if DEBUG_KEYSTONE_UART1
1068         default 0xfec12000 if DEBUG_MVEBU_UART || DEBUG_MVEBU_UART_ALTERNATE
1069         default 0xfed60000 if DEBUG_RK29_UART0
1070         default 0xfed64000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
1071         default 0xfed68000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
1072         default 0xfec02000 if DEBUG_SOCFPGA_UART
1073         default 0xfec20000 if DEBUG_DAVINCI_DMx_UART0
1074         default 0xfed0c000 if DEBUG_DAVINCI_DA8XX_UART1
1075         default 0xfed0d000 if DEBUG_DAVINCI_DA8XX_UART2
1076         default 0xfed12000 if ARCH_KIRKWOOD
1077         default 0xfedc0000 if ARCH_EP93XX
1078         default 0xfee003f8 if FOOTBRIDGE
1079         default 0xfee08300 if DEBUG_DAVINCI_TNETV107X_UART1
1080         default 0xfee20000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART
1081         default 0xfef36000 if DEBUG_HIGHBANK_UART
1082         default 0xfee82340 if ARCH_IOP13XX
1083         default 0xfef00000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
1084         default 0xfef00003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
1085         default 0xfefff700 if ARCH_IOP33X
1086         default 0xff003000 if DEBUG_U300_UART
1087         default DEBUG_UART_PHYS if !MMU
1088         depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
1089                 DEBUG_UART_8250 || DEBUG_UART_PL01X
1090
1091 config DEBUG_UART_8250_SHIFT
1092         int "Register offset shift for the 8250 debug UART"
1093         depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
1094         default 0 if FOOTBRIDGE || ARCH_IOP32X
1095         default 2
1096
1097 config DEBUG_UART_8250_WORD
1098         bool "Use 32-bit accesses for 8250 UART"
1099         depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
1100         depends on DEBUG_UART_8250_SHIFT >= 2
1101         default y if DEBUG_PICOXCELL_UART || DEBUG_SOCFPGA_UART || \
1102                 ARCH_KEYSTONE || \
1103                 DEBUG_DAVINCI_DMx_UART0 || DEBUG_DAVINCI_DA8XX_UART1 || \
1104                 DEBUG_DAVINCI_DA8XX_UART2 || DEBUG_DAVINCI_TNETV107X_UART1
1105
1106 config DEBUG_UART_8250_FLOW_CONTROL
1107         bool "Enable flow control for 8250 UART"
1108         depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
1109         default y if ARCH_EBSA110 || FOOTBRIDGE || ARCH_GEMINI || ARCH_RPC
1110
1111 config DEBUG_UNCOMPRESS
1112         bool
1113         depends on ARCH_MULTIPLATFORM || ARCH_MSM
1114         default y if DEBUG_LL && !DEBUG_OMAP2PLUS_UART && \
1115                      (!DEBUG_TEGRA_UART || !ZBOOT_ROM)
1116         help
1117           This option influences the normal decompressor output for
1118           multiplatform kernels.  Normally, multiplatform kernels disable
1119           decompressor output because it is not possible to know where to
1120           send the decompressor output.
1121
1122           When this option is set, the selected DEBUG_LL output method
1123           will be re-used for normal decompressor output on multiplatform
1124           kernels.
1125           
1126
1127 config UNCOMPRESS_INCLUDE
1128         string
1129         default "debug/uncompress.h" if ARCH_MULTIPLATFORM || ARCH_MSM
1130         default "mach/uncompress.h"
1131
1132 config EARLY_PRINTK
1133         bool "Early printk"
1134         depends on DEBUG_LL
1135         help
1136           Say Y here if you want to have an early console using the
1137           kernel low-level debugging functions. Add earlyprintk to your
1138           kernel parameters to enable this console.
1139
1140 config OC_ETM
1141         bool "On-chip ETM and ETB"
1142         depends on ARM_AMBA
1143         help
1144           Enables the on-chip embedded trace macrocell and embedded trace
1145           buffer driver that will allow you to collect traces of the
1146           kernel code.
1147
1148 config ARM_KPROBES_TEST
1149         tristate "Kprobes test module"
1150         depends on KPROBES && MODULES
1151         help
1152           Perform tests of kprobes API and instruction set simulation.
1153
1154 config PID_IN_CONTEXTIDR
1155         bool "Write the current PID to the CONTEXTIDR register"
1156         depends on CPU_COPY_V6
1157         help
1158           Enabling this option causes the kernel to write the current PID to
1159           the PROCID field of the CONTEXTIDR register, at the expense of some
1160           additional instructions during context switch. Say Y here only if you
1161           are planning to use hardware trace tools with this kernel.
1162
1163 endmenu