]> git.kernelconcepts.de Git - karo-tx-linux.git/blob - arch/arm/Kconfig.debug
ARM: debug: fix wording error in DEBUG_LL_UART_NONE option help
[karo-tx-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
96         config DEBUG_CLPS711X_UART1
97                 bool "Kernel low-level debugging messages via UART1"
98                 depends on ARCH_CLPS711X
99                 help
100                   Say Y here if you want the debug print routines to direct
101                   their output to the first serial port on these devices.
102
103         config DEBUG_CLPS711X_UART2
104                 bool "Kernel low-level debugging messages via UART2"
105                 depends on ARCH_CLPS711X
106                 help
107                   Say Y here if you want the debug print routines to direct
108                   their output to the second serial port on these devices.
109
110         config DEBUG_CNS3XXX
111                 bool "Kernel Kernel low-level debugging on Cavium Networks CNS3xxx"
112                 depends on ARCH_CNS3XXX
113                 help
114                   Say Y here if you want the debug print routines to direct
115                   their output to the CNS3xxx UART0.
116
117         config DEBUG_DAVINCI_DA8XX_UART1
118                 bool "Kernel low-level debugging on DaVinci DA8XX using UART1"
119                 depends on ARCH_DAVINCI_DA8XX
120                 help
121                   Say Y here if you want the debug print routines to direct
122                   their output to UART1 serial port on DaVinci DA8XX devices.
123
124         config DEBUG_DAVINCI_DA8XX_UART2
125                 bool "Kernel low-level debugging on DaVinci DA8XX using UART2"
126                 depends on ARCH_DAVINCI_DA8XX
127                 help
128                   Say Y here if you want the debug print routines to direct
129                   their output to UART2 serial port on DaVinci DA8XX devices.
130
131         config DEBUG_DAVINCI_DMx_UART0
132                 bool "Kernel low-level debugging on DaVinci DMx using UART0"
133                 depends on ARCH_DAVINCI_DMx
134                 help
135                   Say Y here if you want the debug print routines to direct
136                   their output to UART0 serial port on DaVinci DMx devices.
137
138         config DEBUG_DAVINCI_TNETV107X_UART1
139                 bool "Kernel low-level debugging on DaVinci TNETV107x using UART1"
140                 depends on ARCH_DAVINCI_TNETV107X
141                 help
142                   Say Y here if you want the debug print routines to direct
143                   their output to UART1 serial port on DaVinci TNETV107X
144                   devices.
145
146         config DEBUG_ZYNQ_UART0
147                 bool "Kernel low-level debugging on Xilinx Zynq using UART0"
148                 depends on ARCH_ZYNQ
149                 help
150                   Say Y here if you want the debug print routines to direct
151                   their output to UART0 on the Zynq platform.
152
153         config DEBUG_ZYNQ_UART1
154                 bool "Kernel low-level debugging on Xilinx Zynq using UART1"
155                 depends on ARCH_ZYNQ
156                 help
157                   Say Y here if you want the debug print routines to direct
158                   their output to UART1 on the Zynq platform.
159
160                   If you have a ZC702 board and want early boot messages to
161                   appear on the USB serial adaptor, select this option.
162
163         config DEBUG_DC21285_PORT
164                 bool "Kernel low-level debugging messages via footbridge serial port"
165                 depends on FOOTBRIDGE
166                 help
167                   Say Y here if you want the debug print routines to direct
168                   their output to the serial port in the DC21285 (Footbridge).
169
170         config DEBUG_FOOTBRIDGE_COM1
171                 bool "Kernel low-level debugging messages via footbridge 8250 at PCI COM1"
172                 depends on FOOTBRIDGE
173                 help
174                   Say Y here if you want the debug print routines to direct
175                   their output to the 8250 at PCI COM1.
176
177         config DEBUG_HIGHBANK_UART
178                 bool "Kernel low-level debugging messages via Highbank UART"
179                 depends on ARCH_HIGHBANK
180                 help
181                   Say Y here if you want the debug print routines to direct
182                   their output to the UART on Highbank based devices.
183
184         config DEBUG_IMX1_UART
185                 bool "i.MX1 Debug UART"
186                 depends on SOC_IMX1
187                 help
188                   Say Y here if you want kernel low-level debugging support
189                   on i.MX1.
190
191         config DEBUG_IMX23_UART
192                 bool "i.MX23 Debug UART"
193                 depends on SOC_IMX23
194                 help
195                   Say Y here if you want kernel low-level debugging support
196                   on i.MX23.
197
198         config DEBUG_IMX25_UART
199                 bool "i.MX25 Debug UART"
200                 depends on SOC_IMX25
201                 help
202                   Say Y here if you want kernel low-level debugging support
203                   on i.MX25.
204
205         config DEBUG_IMX21_IMX27_UART
206                 bool "i.MX21 and i.MX27 Debug UART"
207                 depends on SOC_IMX21 || SOC_IMX27
208                 help
209                   Say Y here if you want kernel low-level debugging support
210                   on i.MX21 or i.MX27.
211
212         config DEBUG_IMX28_UART
213                 bool "i.MX28 Debug UART"
214                 depends on SOC_IMX28
215                 help
216                   Say Y here if you want kernel low-level debugging support
217                   on i.MX28.
218
219         config DEBUG_IMX31_UART
220                 bool "i.MX31 Debug UART"
221                 depends on SOC_IMX31
222                 help
223                   Say Y here if you want kernel low-level debugging support
224                   on i.MX31.
225
226         config DEBUG_IMX35_UART
227                 bool "i.MX35 Debug UART"
228                 depends on SOC_IMX35
229                 help
230                   Say Y here if you want kernel low-level debugging support
231                   on i.MX35.
232
233         config DEBUG_IMX51_UART
234                 bool "i.MX51 Debug UART"
235                 depends on SOC_IMX51
236                 help
237                   Say Y here if you want kernel low-level debugging support
238                   on i.MX51.
239
240         config DEBUG_IMX53_UART
241                 bool "i.MX53 Debug UART"
242                 depends on SOC_IMX53
243                 help
244                   Say Y here if you want kernel low-level debugging support
245                   on i.MX53.
246
247         config DEBUG_IMX6Q_UART
248                 bool "i.MX6Q/DL Debug UART"
249                 depends on SOC_IMX6Q
250                 help
251                   Say Y here if you want kernel low-level debugging support
252                   on i.MX6Q/DL.
253
254         config DEBUG_IMX6SL_UART
255                 bool "i.MX6SL Debug UART"
256                 depends on SOC_IMX6SL
257                 help
258                   Say Y here if you want kernel low-level debugging support
259                   on i.MX6SL.
260
261         config DEBUG_KEYSTONE_UART0
262                 bool "Kernel low-level debugging on KEYSTONE2 using UART0"
263                 depends on ARCH_KEYSTONE
264                 help
265                   Say Y here if you want the debug print routines to direct
266                   their output to UART0 serial port on KEYSTONE2 devices.
267
268         config DEBUG_KEYSTONE_UART1
269                 bool "Kernel low-level debugging on KEYSTONE2 using UART1"
270                 depends on ARCH_KEYSTONE
271                 help
272                   Say Y here if you want the debug print routines to direct
273                   their output to UART1 serial port on KEYSTONE2 devices.
274
275         config DEBUG_MMP_UART2
276                 bool "Kernel low-level debugging message via MMP UART2"
277                 depends on ARCH_MMP
278                 help
279                   Say Y here if you want kernel low-level debugging support
280                   on MMP UART2.
281
282         config DEBUG_MMP_UART3
283                 bool "Kernel low-level debugging message via MMP UART3"
284                 depends on ARCH_MMP
285                 help
286                   Say Y here if you want kernel low-level debugging support
287                   on MMP UART3.
288
289         config DEBUG_MSM_UART1
290                 bool "Kernel low-level debugging messages via MSM UART1"
291                 depends on ARCH_MSM7X00A || ARCH_MSM7X30 || ARCH_QSD8X50
292                 help
293                   Say Y here if you want the debug print routines to direct
294                   their output to the first serial port on MSM devices.
295
296         config DEBUG_MSM_UART2
297                 bool "Kernel low-level debugging messages via MSM UART2"
298                 depends on ARCH_MSM7X00A || ARCH_MSM7X30 || ARCH_QSD8X50
299                 help
300                   Say Y here if you want the debug print routines to direct
301                   their output to the second serial port on MSM devices.
302
303         config DEBUG_MSM_UART3
304                 bool "Kernel low-level debugging messages via MSM UART3"
305                 depends on ARCH_MSM7X00A || ARCH_MSM7X30 || ARCH_QSD8X50
306                 help
307                   Say Y here if you want the debug print routines to direct
308                   their output to the third serial port on MSM devices.
309
310         config DEBUG_MSM8660_UART
311                 bool "Kernel low-level debugging messages via MSM 8660 UART"
312                 depends on ARCH_MSM8X60
313                 select MSM_HAS_DEBUG_UART_HS
314                 help
315                   Say Y here if you want the debug print routines to direct
316                   their output to the serial port on MSM 8660 devices.
317
318         config DEBUG_MSM8960_UART
319                 bool "Kernel low-level debugging messages via MSM 8960 UART"
320                 depends on ARCH_MSM8960
321                 select MSM_HAS_DEBUG_UART_HS
322                 help
323                   Say Y here if you want the debug print routines to direct
324                   their output to the serial port on MSM 8960 devices.
325
326         config DEBUG_MVEBU_UART
327                 bool "Kernel low-level debugging messages via MVEBU UART (old bootloaders)"
328                 depends on ARCH_MVEBU
329                 help
330                   Say Y here if you want kernel low-level debugging support
331                   on MVEBU based platforms.
332
333                   This option should be used with the old bootloaders
334                   that left the internal registers mapped at
335                   0xd0000000. As of today, this is the case on
336                   platforms such as the Globalscale Mirabox or the
337                   Plathome OpenBlocks AX3, when using the original
338                   bootloader.
339
340                   If the wrong DEBUG_MVEBU_UART* option is selected,
341                   when u-boot hands over to the kernel, the system
342                   silently crashes, with no serial output at all.
343
344         config DEBUG_MVEBU_UART_ALTERNATE
345                 bool "Kernel low-level debugging messages via MVEBU UART (new bootloaders)"
346                 depends on ARCH_MVEBU
347                 help
348                   Say Y here if you want kernel low-level debugging support
349                   on MVEBU based platforms.
350
351                   This option should be used with the new bootloaders
352                   that remap the internal registers at 0xf1000000.
353
354                   If the wrong DEBUG_MVEBU_UART* option is selected,
355                   when u-boot hands over to the kernel, the system
356                   silently crashes, with no serial output at all.
357
358         config DEBUG_NOMADIK_UART
359                 bool "Kernel low-level debugging messages via NOMADIK UART"
360                 depends on ARCH_NOMADIK
361                 help
362                   Say Y here if you want kernel low-level debugging support
363                   on NOMADIK based platforms.
364
365         config DEBUG_NSPIRE_CLASSIC_UART
366                 bool "Kernel low-level debugging via TI-NSPIRE 8250 UART"
367                 depends on ARCH_NSPIRE
368                 help
369                   Say Y here if you want kernel low-level debugging support
370                   on TI-NSPIRE classic models.
371
372         config DEBUG_NSPIRE_CX_UART
373                 bool "Kernel low-level debugging via TI-NSPIRE PL011 UART"
374                 depends on ARCH_NSPIRE
375                 help
376                   Say Y here if you want kernel low-level debugging support
377                   on TI-NSPIRE CX models.
378
379         config DEBUG_OMAP2PLUS_UART
380                 bool "Kernel low-level debugging messages via OMAP2PLUS UART"
381                 depends on ARCH_OMAP2PLUS
382                 help
383                   Say Y here if you want kernel low-level debugging support
384                   on OMAP2PLUS based platforms.
385
386         config DEBUG_PICOXCELL_UART
387                 depends on ARCH_PICOXCELL
388                 bool "Use PicoXcell UART for low-level debug"
389                 help
390                   Say Y here if you want kernel low-level debugging support
391                   on PicoXcell based platforms.
392
393         config DEBUG_PXA_UART1
394                 depends on ARCH_PXA
395                 bool "Use PXA UART1 for low-level debug"
396                 help
397                   Say Y here if you want kernel low-level debugging support
398                   on PXA UART1.
399
400         config DEBUG_REALVIEW_STD_PORT
401                 bool "RealView Default UART"
402                 depends on ARCH_REALVIEW
403                 help
404                   Say Y here if you want the debug print routines to direct
405                   their output to the serial port on RealView EB, PB11MP, PBA8
406                   and PBX platforms.
407
408         config DEBUG_REALVIEW_PB1176_PORT
409                 bool "RealView PB1176 UART"
410                 depends on MACH_REALVIEW_PB1176
411                 help
412                   Say Y here if you want the debug print routines to direct
413                   their output to the standard serial port on the RealView
414                   PB1176 platform.
415
416         config DEBUG_ROCKCHIP_UART
417                 bool "Kernel low-level debugging messages via Rockchip UART"
418                 depends on ARCH_ROCKCHIP
419                 help
420                   Say Y here if you want kernel low-level debugging support
421                   on Rockchip based platforms.
422
423         config DEBUG_S3C_UART0
424                 depends on PLAT_SAMSUNG
425                 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
426                 bool "Use S3C UART 0 for low-level debug"
427                 help
428                   Say Y here if you want the debug print routines to direct
429                   their output to UART 0. The port must have been initialised
430                   by the boot-loader before use.
431
432                   The uncompressor code port configuration is now handled
433                   by CONFIG_S3C_LOWLEVEL_UART_PORT.
434
435         config DEBUG_S3C_UART1
436                 depends on PLAT_SAMSUNG
437                 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
438                 bool "Use S3C UART 1 for low-level debug"
439                 help
440                   Say Y here if you want the debug print routines to direct
441                   their output to UART 1. The port must have been initialised
442                   by the boot-loader before use.
443
444                   The uncompressor code port configuration is now handled
445                   by CONFIG_S3C_LOWLEVEL_UART_PORT.
446
447         config DEBUG_S3C_UART2
448                 depends on PLAT_SAMSUNG
449                 select DEBUG_EXYNOS_UART if ARCH_EXYNOS
450                 bool "Use S3C UART 2 for low-level debug"
451                 help
452                   Say Y here if you want the debug print routines to direct
453                   their output to UART 2. The port must have been initialised
454                   by the boot-loader before use.
455
456                   The uncompressor code port configuration is now handled
457                   by CONFIG_S3C_LOWLEVEL_UART_PORT.
458
459         config DEBUG_S3C_UART3
460                 depends on PLAT_SAMSUNG && ARCH_EXYNOS
461                 select DEBUG_EXYNOS_UART
462                 bool "Use S3C UART 3 for low-level debug"
463                 help
464                   Say Y here if you want the debug print routines to direct
465                   their output to UART 3. The port must have been initialised
466                   by the boot-loader before use.
467
468                   The uncompressor code port configuration is now handled
469                   by CONFIG_S3C_LOWLEVEL_UART_PORT.
470
471         config DEBUG_SOCFPGA_UART
472                 depends on ARCH_SOCFPGA
473                 bool "Use SOCFPGA UART for low-level debug"
474                 help
475                   Say Y here if you want kernel low-level debugging support
476                   on SOCFPGA based platforms.
477
478         config DEBUG_SUNXI_UART0
479                 bool "Kernel low-level debugging messages via sunXi UART0"
480                 depends on ARCH_SUNXI
481                 help
482                   Say Y here if you want kernel low-level debugging support
483                   on Allwinner A1X based platforms on the UART0.
484
485         config DEBUG_SUNXI_UART1
486                 bool "Kernel low-level debugging messages via sunXi UART1"
487                 depends on ARCH_SUNXI
488                 help
489                   Say Y here if you want kernel low-level debugging support
490                   on Allwinner A1X based platforms on the UART1.
491
492         config DEBUG_TEGRA_UART
493                 depends on ARCH_TEGRA
494                 bool "Use Tegra UART for low-level debug"
495                 help
496                   Say Y here if you want kernel low-level debugging support
497                   on Tegra based platforms.
498
499         config DEBUG_SIRFPRIMA2_UART1
500                 bool "Kernel low-level debugging messages via SiRFprimaII UART1"
501                 depends on ARCH_PRIMA2
502                 help
503                   Say Y here if you want the debug print routines to direct
504                   their output to the uart1 port on SiRFprimaII devices.
505
506         config DEBUG_SIRFMARCO_UART1
507                 bool "Kernel low-level debugging messages via SiRFmarco UART1"
508                 depends on ARCH_MARCO
509                 help
510                   Say Y here if you want the debug print routines to direct
511                   their output to the uart1 port on SiRFmarco devices.
512
513         config DEBUG_STI_UART
514                 depends on ARCH_STI
515                 bool "Use StiH415/416 ASC for low-level debug"
516                 help
517                   Say Y here if you want kernel low-level debugging support
518                   on StiH415/416 based platforms like B2000, B2020.
519                   It support UART2 and SBC_UART1.
520
521                   If unsure, say N.
522
523         config DEBUG_U300_UART
524                 bool "Kernel low-level debugging messages via U300 UART0"
525                 depends on ARCH_U300
526                 help
527                   Say Y here if you want the debug print routines to direct
528                   their output to the uart port on U300 devices.
529
530         config DEBUG_UX500_UART
531                 depends on ARCH_U8500
532                 bool "Use Ux500 UART for low-level debug"
533                 help
534                   Say Y here if you want kernel low-level debugging support
535                   on Ux500 based platforms.
536
537         config DEBUG_VEXPRESS_UART0_DETECT
538                 bool "Autodetect UART0 on Versatile Express Cortex-A core tiles"
539                 depends on ARCH_VEXPRESS && CPU_CP15_MMU
540                 help
541                   This option enables a simple heuristic which tries to determine
542                   the motherboard's memory map variant (original or RS1) and then
543                   choose the relevant UART0 base address.
544
545                   Note that this will only work with standard A-class core tiles,
546                   and may fail with non-standard SMM or custom software models.
547
548         config DEBUG_VEXPRESS_UART0_CA9
549                 bool "Use PL011 UART0 at 0x10009000 (V2P-CA9 core tile)"
550                 depends on ARCH_VEXPRESS
551                 help
552                   This option selects UART0 at 0x10009000. Except for custom models,
553                   this applies only to the V2P-CA9 tile.
554
555         config DEBUG_VEXPRESS_UART0_RS1
556                 bool "Use PL011 UART0 at 0x1c090000 (RS1 complaint tiles)"
557                 depends on ARCH_VEXPRESS
558                 help
559                   This option selects UART0 at 0x1c090000. This applies to most
560                   of the tiles using the RS1 memory map, including all new A-class
561                   core tiles, FPGA-based SMMs and software models.
562
563         config DEBUG_VEXPRESS_UART0_CRX
564                 bool "Use PL011 UART0 at 0xb0090000 (Cortex-R compliant tiles)"
565                 depends on ARCH_VEXPRESS && !MMU
566                 help
567                   This option selects UART0 at 0xb0090000. This is appropriate for
568                   Cortex-R series tiles and SMMs, such as Cortex-R5 and Cortex-R7
569
570         config DEBUG_VT8500_UART0
571                 bool "Use UART0 on VIA/Wondermedia SoCs"
572                 depends on ARCH_VT8500
573                 help
574                   This option selects UART0 on VIA/Wondermedia System-on-a-chip
575                   devices, including VT8500, WM8505, WM8650 and WM8850.
576
577         config DEBUG_LL_UART_NONE
578                 bool "No low-level debugging UART"
579                 depends on !ARCH_MULTIPLATFORM
580                 help
581                   Say Y here if your platform doesn't provide a UART option
582                   above. This relies on your platform choosing the right UART
583                   definition internally in order for low-level debugging to
584                   work.
585
586         config DEBUG_ICEDCC
587                 bool "Kernel low-level debugging via EmbeddedICE DCC channel"
588                 help
589                   Say Y here if you want the debug print routines to direct
590                   their output to the EmbeddedICE macrocell's DCC channel using
591                   co-processor 14. This is known to work on the ARM9 style ICE
592                   channel and on the XScale with the PEEDI.
593
594                   Note that the system will appear to hang during boot if there
595                   is nothing connected to read from the DCC.
596
597         config DEBUG_SEMIHOSTING
598                 bool "Kernel low-level debug output via semihosting I/O"
599                 help
600                   Semihosting enables code running on an ARM target to use
601                   the I/O facilities on a host debugger/emulator through a
602                   simple SVC call. The host debugger or emulator must have
603                   semihosting enabled for the special svc call to be trapped
604                   otherwise the kernel will crash.
605
606                   This is known to work with OpenOCD, as well as
607                   ARM's Fast Models, or any other controlling environment
608                   that implements semihosting.
609
610                   For more details about semihosting, please see
611                   chapter 8 of DUI0203I_rvct_developer_guide.pdf from ARM Ltd.
612
613 endchoice
614
615 config DEBUG_EXYNOS_UART
616         bool
617
618 config DEBUG_IMX_UART_PORT
619         int "i.MX Debug UART Port Selection" if DEBUG_IMX1_UART || \
620                                                 DEBUG_IMX25_UART || \
621                                                 DEBUG_IMX21_IMX27_UART || \
622                                                 DEBUG_IMX31_UART || \
623                                                 DEBUG_IMX35_UART || \
624                                                 DEBUG_IMX51_UART || \
625                                                 DEBUG_IMX53_UART || \
626                                                 DEBUG_IMX6Q_UART || \
627                                                 DEBUG_IMX6SL_UART
628         default 1
629         depends on ARCH_MXC
630         help
631           Choose UART port on which kernel low-level debug messages
632           should be output.
633
634 choice
635         prompt "Low-level debug console UART"
636         depends on DEBUG_OMAP2PLUS_UART
637
638         config DEBUG_OMAP2UART1
639                 bool "OMAP2/3/4 UART1 (omap2/3 sdp boards and some omap3 boards)"
640                 help
641                   This covers at least h4, 2430sdp, 3430sdp, 3630sdp,
642                   omap3 torpedo and 3530 lv som.
643
644         config DEBUG_OMAP2UART2
645                 bool "OMAP2/3/4 UART2"
646
647         config DEBUG_OMAP2UART3
648                 bool "OMAP2 UART3 (n8x0)"
649
650         config DEBUG_OMAP3UART3
651                 bool "OMAP3 UART3 (most omap3 boards)"
652                 help
653                   This covers at least cm_t3x, beagle, crane, devkit8000,
654                   igep00x0, ldp, n900, n9(50), pandora, overo, touchbook,
655                   and 3517evm.
656
657         config DEBUG_OMAP4UART3
658                 bool "OMAP4/5 UART3 (omap4 blaze, panda, omap5 sevm)"
659
660         config DEBUG_OMAP3UART4
661                 bool "OMAP36XX UART4"
662
663         config DEBUG_OMAP4UART4
664                 bool "OMAP4/5 UART4"
665
666         config DEBUG_TI81XXUART1
667                 bool "TI81XX UART1 (ti8148evm)"
668
669         config DEBUG_TI81XXUART2
670                 bool "TI81XX UART2"
671
672         config DEBUG_TI81XXUART3
673                 bool "TI81XX UART3 (ti8168evm)"
674
675         config DEBUG_AM33XXUART1
676                 bool "AM33XX UART1"
677
678         config DEBUG_ZOOM_UART
679                 bool "Zoom2/3 UART"
680 endchoice
681
682 choice
683         prompt "Low-level debug console UART"
684         depends on DEBUG_ROCKCHIP_UART
685
686         config DEBUG_RK29_UART0
687                 bool "RK29 UART0"
688
689         config DEBUG_RK29_UART1
690                 bool "RK29 UART1"
691
692         config DEBUG_RK29_UART2
693                 bool "RK29 UART2"
694
695         config DEBUG_RK3X_UART0
696                 bool "RK3X UART0"
697
698         config DEBUG_RK3X_UART1
699                 bool "RK3X UART1"
700
701         config DEBUG_RK3X_UART2
702                 bool "RK3X UART2"
703
704         config DEBUG_RK3X_UART3
705                 bool "RK3X UART3"
706 endchoice
707
708 choice
709         prompt "Low-level debug console UART"
710         depends on DEBUG_LL && DEBUG_TEGRA_UART
711
712         config TEGRA_DEBUG_UART_AUTO_ODMDATA
713         bool "Via ODMDATA"
714         help
715           Automatically determines which UART to use for low-level debug based
716           on the ODMDATA value. This value is part of the BCT, and is written
717           to the boot memory device using nvflash, or other flashing tool.
718           When bits 19:18 are 3, then bits 17:15 indicate which UART to use;
719           0/1/2/3/4 are UART A/B/C/D/E.
720
721         config TEGRA_DEBUG_UARTA
722                 bool "UART A"
723
724         config TEGRA_DEBUG_UARTB
725                 bool "UART B"
726
727         config TEGRA_DEBUG_UARTC
728                 bool "UART C"
729
730         config TEGRA_DEBUG_UARTD
731                 bool "UART D"
732
733         config TEGRA_DEBUG_UARTE
734                 bool "UART E"
735
736 endchoice
737
738 choice
739         prompt "Low-level debug console UART"
740         depends on DEBUG_LL && DEBUG_STI_UART
741
742         config STIH41X_DEBUG_ASC2
743                 bool "ASC2 UART"
744                 help
745                   Say Y here if you want kernel low-level debugging support
746                   on STiH415/416 based platforms like b2000, which has
747                   default UART wired up to ASC2.
748
749                   If unsure, say N.
750
751         config STIH41X_DEBUG_SBC_ASC1
752                 bool "SBC ASC1 UART"
753                 help
754                   Say Y here if you want kernel low-level debugging support
755                   on STiH415/416 based platforms like b2020. which has
756                   default UART wired up to SBC ASC1.
757
758                   If unsure, say N.
759
760 endchoice
761
762 config DEBUG_LL_INCLUDE
763         string
764         default "debug/bcm2835.S" if DEBUG_BCM2835
765         default "debug/cns3xxx.S" if DEBUG_CNS3XXX
766         default "debug/exynos.S" if DEBUG_EXYNOS_UART
767         default "debug/highbank.S" if DEBUG_HIGHBANK_UART
768         default "debug/icedcc.S" if DEBUG_ICEDCC
769         default "debug/imx.S" if DEBUG_IMX1_UART || \
770                                  DEBUG_IMX25_UART || \
771                                  DEBUG_IMX21_IMX27_UART || \
772                                  DEBUG_IMX31_UART || \
773                                  DEBUG_IMX35_UART || \
774                                  DEBUG_IMX51_UART || \
775                                  DEBUG_IMX53_UART ||\
776                                  DEBUG_IMX6Q_UART || \
777                                  DEBUG_IMX6SL_UART
778         default "debug/keystone.S" if DEBUG_KEYSTONE_UART0 || \
779                                       DEBUG_KEYSTONE_UART1
780         default "debug/mvebu.S" if DEBUG_MVEBU_UART || \
781                                    DEBUG_MVEBU_UART_ALTERNATE
782         default "debug/mxs.S" if DEBUG_IMX23_UART || DEBUG_IMX28_UART
783         default "debug/nomadik.S" if DEBUG_NOMADIK_UART
784         default "debug/nspire.S" if     DEBUG_NSPIRE_CX_UART || \
785                                         DEBUG_NSPIRE_CLASSIC_UART
786         default "debug/omap2plus.S" if DEBUG_OMAP2PLUS_UART
787         default "debug/picoxcell.S" if DEBUG_PICOXCELL_UART
788         default "debug/pxa.S" if DEBUG_PXA_UART1 || DEBUG_MMP_UART2 || \
789                                  DEBUG_MMP_UART3
790         default "debug/rockchip.S" if DEBUG_ROCKCHIP_UART
791         default "debug/sirf.S" if DEBUG_SIRFPRIMA2_UART1 || DEBUG_SIRFMARCO_UART1
792         default "debug/socfpga.S" if DEBUG_SOCFPGA_UART
793         default "debug/sti.S" if DEBUG_STI_UART
794         default "debug/sunxi.S" if DEBUG_SUNXI_UART0 || DEBUG_SUNXI_UART1
795         default "debug/tegra.S" if DEBUG_TEGRA_UART
796         default "debug/u300.S" if DEBUG_U300_UART
797         default "debug/ux500.S" if DEBUG_UX500_UART
798         default "debug/vexpress.S" if DEBUG_VEXPRESS_UART0_DETECT || \
799                 DEBUG_VEXPRESS_UART0_CA9 || DEBUG_VEXPRESS_UART0_RS1 || \
800                 DEBUG_VEXPRESS_UART0_CRX
801         default "debug/vt8500.S" if DEBUG_VT8500_UART0
802         default "debug/zynq.S" if DEBUG_ZYNQ_UART0 || DEBUG_ZYNQ_UART1
803         default "mach/debug-macro.S"
804
805 config DEBUG_UNCOMPRESS
806         bool
807         depends on ARCH_MULTIPLATFORM
808         default y if DEBUG_LL && !DEBUG_OMAP2PLUS_UART && \
809                      !DEBUG_TEGRA_UART
810         help
811           This option influences the normal decompressor output for
812           multiplatform kernels.  Normally, multiplatform kernels disable
813           decompressor output because it is not possible to know where to
814           send the decompressor output.
815
816           When this option is set, the selected DEBUG_LL output method
817           will be re-used for normal decompressor output on multiplatform
818           kernels.
819           
820
821 config UNCOMPRESS_INCLUDE
822         string
823         default "debug/uncompress.h" if ARCH_MULTIPLATFORM
824         default "mach/uncompress.h"
825
826 config EARLY_PRINTK
827         bool "Early printk"
828         depends on DEBUG_LL
829         help
830           Say Y here if you want to have an early console using the
831           kernel low-level debugging functions. Add earlyprintk to your
832           kernel parameters to enable this console.
833
834 config OC_ETM
835         bool "On-chip ETM and ETB"
836         depends on ARM_AMBA
837         help
838           Enables the on-chip embedded trace macrocell and embedded trace
839           buffer driver that will allow you to collect traces of the
840           kernel code.
841
842 config ARM_KPROBES_TEST
843         tristate "Kprobes test module"
844         depends on KPROBES && MODULES
845         help
846           Perform tests of kprobes API and instruction set simulation.
847
848 config PID_IN_CONTEXTIDR
849         bool "Write the current PID to the CONTEXTIDR register"
850         depends on CPU_COPY_V6
851         help
852           Enabling this option causes the kernel to write the current PID to
853           the PROCID field of the CONTEXTIDR register, at the expense of some
854           additional instructions during context switch. Say Y here only if you
855           are planning to use hardware trace tools with this kernel.
856
857 endmenu