xref: /linux/arch/arm/Kconfig.debug (revision e6ae32c343981a50aa07c34767f2a967cc920edc)
11da177e4SLinus Torvaldsmenu "Kernel hacking"
21da177e4SLinus Torvalds
31da177e4SLinus Torvaldssource "lib/Kconfig.debug"
41da177e4SLinus Torvalds
51fd15b87SRussell Kingconfig ARM_PTDUMP
61fd15b87SRussell King	bool "Export kernel pagetable layout to userspace via debugfs"
71fd15b87SRussell King	depends on DEBUG_KERNEL
81fd15b87SRussell King	select DEBUG_FS
91fd15b87SRussell King	---help---
101fd15b87SRussell King	  Say Y here if you want to show the kernel pagetable layout in a
111fd15b87SRussell King	  debugfs file. This information is only useful for kernel developers
121fd15b87SRussell King	  who are working in architecture specific areas of the kernel.
131fd15b87SRussell King	  It is probably not a good idea to enable this feature in a production
141fd15b87SRussell King	  kernel.
151fd15b87SRussell King	  If in doubt, say "N"
161fd15b87SRussell King
17087aaffcSNicolas Pitreconfig STRICT_DEVMEM
18087aaffcSNicolas Pitre	bool "Filter access to /dev/mem"
19087aaffcSNicolas Pitre	depends on MMU
20087aaffcSNicolas Pitre	---help---
21087aaffcSNicolas Pitre	  If this option is disabled, you allow userspace (root) access to all
22087aaffcSNicolas Pitre	  of memory, including kernel and userspace memory. Accidental
23087aaffcSNicolas Pitre	  access to this is obviously disastrous, but specific access can
24087aaffcSNicolas Pitre	  be used by people debugging the kernel.
25087aaffcSNicolas Pitre
26087aaffcSNicolas Pitre	  If this option is switched on, the /dev/mem file only allows
27087aaffcSNicolas Pitre	  userspace access to memory mapped peripherals.
28087aaffcSNicolas Pitre
29087aaffcSNicolas Pitre          If in doubt, say Y.
30087aaffcSNicolas Pitre
31adf8b37bSCatalin Marinas# RMK wants arm kernels compiled with frame pointers or stack unwinding.
321da177e4SLinus Torvalds# If you know what you are doing and are willing to live without stack
331da177e4SLinus Torvalds# traces, you can get a slightly smaller kernel by setting this option to
341da177e4SLinus Torvalds# n, but then RMK will have to kill you ;).
351da177e4SLinus Torvaldsconfig FRAME_POINTER
361da177e4SLinus Torvalds	bool
3716c79651SCatalin Marinas	depends on !THUMB2_KERNEL
380e341af8SRabin Vincent	default y if !ARM_UNWIND || FUNCTION_GRAPH_TRACER
391da177e4SLinus Torvalds	help
401da177e4SLinus Torvalds	  If you say N here, the resulting kernel will be slightly smaller and
41adf8b37bSCatalin Marinas	  faster. However, if neither FRAME_POINTER nor ARM_UNWIND are enabled,
42adf8b37bSCatalin Marinas	  when a problem occurs with the kernel, the information that is
43adf8b37bSCatalin Marinas	  reported is severely limited.
44adf8b37bSCatalin Marinas
45adf8b37bSCatalin Marinasconfig ARM_UNWIND
464a50bfe3SRussell King	bool "Enable stack unwinding support (EXPERIMENTAL)"
47d6f94fa0SKees Cook	depends on AEABI
48adf8b37bSCatalin Marinas	default y
49adf8b37bSCatalin Marinas	help
50adf8b37bSCatalin Marinas	  This option enables stack unwinding support in the kernel
51adf8b37bSCatalin Marinas	  using the information automatically generated by the
52adf8b37bSCatalin Marinas	  compiler. The resulting kernel image is slightly bigger but
53adf8b37bSCatalin Marinas	  the performance is not affected. Currently, this feature
54adf8b37bSCatalin Marinas	  only works with EABI compilers. If unsure say Y.
551da177e4SLinus Torvalds
5609bfafacSRabin Vincentconfig OLD_MCOUNT
5709bfafacSRabin Vincent	bool
5809bfafacSRabin Vincent	depends on FUNCTION_TRACER && FRAME_POINTER
5909bfafacSRabin Vincent	default y
6009bfafacSRabin Vincent
611da177e4SLinus Torvaldsconfig DEBUG_USER
621da177e4SLinus Torvalds	bool "Verbose user fault messages"
631da177e4SLinus Torvalds	help
641da177e4SLinus Torvalds	  When a user program crashes due to an exception, the kernel can
651da177e4SLinus Torvalds	  print a brief message explaining what the problem was. This is
661da177e4SLinus Torvalds	  sometimes helpful for debugging but serves no purpose on a
671da177e4SLinus Torvalds	  production system. Most people should say N here.
681da177e4SLinus Torvalds
691da177e4SLinus Torvalds	  In addition, you need to pass user_debug=N on the kernel command
701da177e4SLinus Torvalds	  line to enable this feature.  N consists of the sum of:
711da177e4SLinus Torvalds
721da177e4SLinus Torvalds	      1 - undefined instruction events
731da177e4SLinus Torvalds	      2 - system calls
741da177e4SLinus Torvalds	      4 - invalid data aborts
751da177e4SLinus Torvalds	      8 - SIGSEGV faults
761da177e4SLinus Torvalds	     16 - SIGBUS faults
771da177e4SLinus Torvalds
781da177e4SLinus Torvalds# These options are only for real kernel hackers who want to get their hands dirty.
791da177e4SLinus Torvaldsconfig DEBUG_LL
804f5ef922SWill Deacon	bool "Kernel low-level debugging functions (read help!)"
811da177e4SLinus Torvalds	depends on DEBUG_KERNEL
821da177e4SLinus Torvalds	help
8335efb606SRussell King	  Say Y here to include definitions of printascii, printch, printhex
841da177e4SLinus Torvalds	  in the kernel.  This is helpful if you are debugging code that
851da177e4SLinus Torvalds	  executes before the console is initialized.
861da177e4SLinus Torvalds
874f5ef922SWill Deacon	  Note that selecting this option will limit the kernel to a single
884f5ef922SWill Deacon	  UART definition, as specified below. Attempting to boot the kernel
894f5ef922SWill Deacon	  image on a different platform *will not work*, so this option should
904f5ef922SWill Deacon	  not be enabled for kernels that are intended to be portable.
914f5ef922SWill Deacon
9217916b28SWill Deaconchoice
9317916b28SWill Deacon	prompt "Kernel low-level debugging port"
9417916b28SWill Deacon	depends on DEBUG_LL
9517916b28SWill Deacon
963c215e64STsahee Zidenberg	config DEBUG_ALPINE_UART0
973c215e64STsahee Zidenberg		bool "Kernel low-level debugging messages via Alpine UART0"
983c215e64STsahee Zidenberg		depends on ARCH_ALPINE
993c215e64STsahee Zidenberg		select DEBUG_UART_8250
1003c215e64STsahee Zidenberg		help
1013c215e64STsahee Zidenberg		  Say Y here if you want kernel low-level debugging support
1023c215e64STsahee Zidenberg		  on Alpine based platforms.
1033c215e64STsahee Zidenberg
104d5bd4e8dSOleksij Rempel	config DEBUG_ASM9260_UART
105d5bd4e8dSOleksij Rempel		bool "Kernel low-level debugging via asm9260 UART"
106d5bd4e8dSOleksij Rempel		depends on MACH_ASM9260
107d5bd4e8dSOleksij Rempel		help
108d5bd4e8dSOleksij Rempel		  Say Y here if you want the debug print routines to direct
109d5bd4e8dSOleksij Rempel		  their output to an UART or USART port on asm9260 based
110d5bd4e8dSOleksij Rempel		  machines.
111d5bd4e8dSOleksij Rempel
112d5bd4e8dSOleksij Rempel		    DEBUG_UART_PHYS | DEBUG_UART_VIRT
113d5bd4e8dSOleksij Rempel
114d5bd4e8dSOleksij Rempel		    0x80000000      | 0xf0000000     | UART0
115d5bd4e8dSOleksij Rempel		    0x80004000      | 0xf0004000     | UART1
116d5bd4e8dSOleksij Rempel		    0x80008000      | 0xf0008000     | UART2
117d5bd4e8dSOleksij Rempel		    0x8000c000      | 0xf000c000     | UART3
118d5bd4e8dSOleksij Rempel		    0x80010000      | 0xf0010000     | UART4
119d5bd4e8dSOleksij Rempel		    0x80014000      | 0xf0014000     | UART5
120d5bd4e8dSOleksij Rempel		    0x80018000      | 0xf0018000     | UART6
121d5bd4e8dSOleksij Rempel		    0x8001c000      | 0xf001c000     | UART7
122d5bd4e8dSOleksij Rempel		    0x80020000      | 0xf0020000     | UART8
123d5bd4e8dSOleksij Rempel		    0x80024000      | 0xf0024000     | UART9
124d5bd4e8dSOleksij Rempel
12513079a73SJean-Christophe PLAGNIOL-VILLARD	config AT91_DEBUG_LL_DBGU0
1265f58c970SAlexandre Belloni		bool "Kernel low-level debugging on rm9200, 9260/9g20, 9261/9g10, 9rl, 9x5, 9n12"
1275f58c970SAlexandre Belloni		select DEBUG_AT91_UART
12842dfd1e1SNicolas Ferre		depends on ARCH_AT91
129ae57d0c6SAlexandre Belloni		depends on SOC_AT91RM9200 || SOC_AT91SAM9
13013079a73SJean-Christophe PLAGNIOL-VILLARD
13113079a73SJean-Christophe PLAGNIOL-VILLARD	config AT91_DEBUG_LL_DBGU1
1325f58c970SAlexandre Belloni		bool "Kernel low-level debugging on 9263, 9g45 and sama5d3"
1335f58c970SAlexandre Belloni		select DEBUG_AT91_UART
13442dfd1e1SNicolas Ferre		depends on ARCH_AT91
135ae57d0c6SAlexandre Belloni		depends on SOC_AT91SAM9 || SOC_SAMA5
13613079a73SJean-Christophe PLAGNIOL-VILLARD
1372dc850b6SNicolas Ferre	config AT91_DEBUG_LL_DBGU2
1382dc850b6SNicolas Ferre		bool "Kernel low-level debugging on sama5d4"
1395f58c970SAlexandre Belloni		select DEBUG_AT91_UART
14042dfd1e1SNicolas Ferre		depends on ARCH_AT91
141ae57d0c6SAlexandre Belloni		depends on SOC_SAMA5
1422dc850b6SNicolas Ferre
143f1ac922dSStephen Warren	config DEBUG_BCM2835
144f1ac922dSStephen Warren		bool "Kernel low-level debugging on BCM2835 PL011 UART"
145f1ac922dSStephen Warren		depends on ARCH_BCM2835
1465c972af4SRussell King		select DEBUG_UART_PL01X
147f1ac922dSStephen Warren
14806580275SHauke Mehrtens	config DEBUG_BCM_5301X
14906580275SHauke Mehrtens		bool "Kernel low-level debugging on BCM5301X UART1"
15006580275SHauke Mehrtens		depends on ARCH_BCM_5301X
151140bd603SHauke Mehrtens		select DEBUG_UART_8250
15206580275SHauke Mehrtens
153753d1243SChristian Daudt	config DEBUG_BCM_KONA_UART
154753d1243SChristian Daudt		bool "Kernel low-level debugging messages via BCM KONA UART"
1557aa2077bSFlorian Fainelli		depends on ARCH_BCM_MOBILE
156753d1243SChristian Daudt		select DEBUG_UART_8250
157753d1243SChristian Daudt		help
158753d1243SChristian Daudt		  Say Y here if you want kernel low-level debugging support
159753d1243SChristian Daudt		  on Broadcom SoC platforms.
160753d1243SChristian Daudt		  This low level debug works for Broadcom
161753d1243SChristian Daudt		  mobile SoCs in the Kona family of chips (e.g. bcm28155,
162753d1243SChristian Daudt		  bcm11351, etc...)
163753d1243SChristian Daudt
164b51312beSFlorian Fainelli	config DEBUG_BCM63XX
165b51312beSFlorian Fainelli		bool "Kernel low-level debugging on BCM63XX UART"
166b51312beSFlorian Fainelli		depends on ARCH_BCM_63XX
167b51312beSFlorian Fainelli		select DEBUG_UART_BCM63XX
168b51312beSFlorian Fainelli
169caad0b41SSebastian Hesselbarth	config DEBUG_BERLIN_UART
170caad0b41SSebastian Hesselbarth		bool "Marvell Berlin SoC Debug UART"
171caad0b41SSebastian Hesselbarth		depends on ARCH_BERLIN
172caad0b41SSebastian Hesselbarth		select DEBUG_UART_8250
173caad0b41SSebastian Hesselbarth		help
174caad0b41SSebastian Hesselbarth		  Say Y here if you want kernel low-level debugging support
175caad0b41SSebastian Hesselbarth		  on Marvell Berlin SoC based platforms.
176caad0b41SSebastian Hesselbarth
17781b43a6eSMarc Carino	config DEBUG_BRCMSTB_UART
17881b43a6eSMarc Carino		bool "Use BRCMSTB UART for low-level debug"
17981b43a6eSMarc Carino		depends on ARCH_BRCMSTB
18081b43a6eSMarc Carino		select DEBUG_UART_8250
18181b43a6eSMarc Carino		help
18281b43a6eSMarc Carino		  Say Y here if you want the debug print routines to direct
18381b43a6eSMarc Carino		  their output to the first serial port on these devices.
18481b43a6eSMarc Carino
18581b43a6eSMarc Carino		  If you have a Broadcom STB chip and would like early print
18681b43a6eSMarc Carino		  messages to appear over the UART, select this option.
18781b43a6eSMarc Carino
188164acf96SStephen Boyd	config DEBUG_CLPS711X_UART1
189164acf96SStephen Boyd		bool "Kernel low-level debugging messages via UART1"
190164acf96SStephen Boyd		depends on ARCH_CLPS711X
191164acf96SStephen Boyd		help
192164acf96SStephen Boyd		  Say Y here if you want the debug print routines to direct
193164acf96SStephen Boyd		  their output to the first serial port on these devices.
19417916b28SWill Deacon
19517916b28SWill Deacon	config DEBUG_CLPS711X_UART2
19617916b28SWill Deacon		bool "Kernel low-level debugging messages via UART2"
19717916b28SWill Deacon		depends on ARCH_CLPS711X
19817916b28SWill Deacon		help
19917916b28SWill Deacon		  Say Y here if you want the debug print routines to direct
20017916b28SWill Deacon		  their output to the second serial port on these devices.
20117916b28SWill Deacon
20229c9b7beSArnd Bergmann	config DEBUG_CNS3XXX
20329c9b7beSArnd Bergmann		bool "Kernel Kernel low-level debugging on Cavium Networks CNS3xxx"
20429c9b7beSArnd Bergmann		depends on ARCH_CNS3XXX
205b125170aSKrzysztof Hałasa		select DEBUG_UART_8250
20629c9b7beSArnd Bergmann		help
20729c9b7beSArnd Bergmann		  Say Y here if you want the debug print routines to direct
20829c9b7beSArnd Bergmann                  their output to the CNS3xxx UART0.
20929c9b7beSArnd Bergmann
210477099f1SUwe Kleine-König	config DEBUG_DAVINCI_DA8XX_UART1
211477099f1SUwe Kleine-König		bool "Kernel low-level debugging on DaVinci DA8XX using UART1"
212477099f1SUwe Kleine-König		depends on ARCH_DAVINCI_DA8XX
21397bd1a48SRussell King		select DEBUG_UART_8250
214477099f1SUwe Kleine-König		help
215477099f1SUwe Kleine-König		  Say Y here if you want the debug print routines to direct
216477099f1SUwe Kleine-König		  their output to UART1 serial port on DaVinci DA8XX devices.
217477099f1SUwe Kleine-König
218477099f1SUwe Kleine-König	config DEBUG_DAVINCI_DA8XX_UART2
219477099f1SUwe Kleine-König		bool "Kernel low-level debugging on DaVinci DA8XX using UART2"
220477099f1SUwe Kleine-König		depends on ARCH_DAVINCI_DA8XX
22197bd1a48SRussell King		select DEBUG_UART_8250
222477099f1SUwe Kleine-König		help
223477099f1SUwe Kleine-König		  Say Y here if you want the debug print routines to direct
224477099f1SUwe Kleine-König		  their output to UART2 serial port on DaVinci DA8XX devices.
225477099f1SUwe Kleine-König
226477099f1SUwe Kleine-König	config DEBUG_DAVINCI_DMx_UART0
227477099f1SUwe Kleine-König		bool "Kernel low-level debugging on DaVinci DMx using UART0"
228477099f1SUwe Kleine-König		depends on ARCH_DAVINCI_DMx
22997bd1a48SRussell King		select DEBUG_UART_8250
230477099f1SUwe Kleine-König		help
231477099f1SUwe Kleine-König		  Say Y here if you want the debug print routines to direct
232477099f1SUwe Kleine-König		  their output to UART0 serial port on DaVinci DMx devices.
233477099f1SUwe Kleine-König
234aaf5e0beSNick Bowler	config DEBUG_ZYNQ_UART0
235aaf5e0beSNick Bowler		bool "Kernel low-level debugging on Xilinx Zynq using UART0"
236aaf5e0beSNick Bowler		depends on ARCH_ZYNQ
237aaf5e0beSNick Bowler		help
238aaf5e0beSNick Bowler		  Say Y here if you want the debug print routines to direct
239aaf5e0beSNick Bowler		  their output to UART0 on the Zynq platform.
240aaf5e0beSNick Bowler
241aaf5e0beSNick Bowler	config DEBUG_ZYNQ_UART1
242aaf5e0beSNick Bowler		bool "Kernel low-level debugging on Xilinx Zynq using UART1"
243aaf5e0beSNick Bowler		depends on ARCH_ZYNQ
244aaf5e0beSNick Bowler		help
245aaf5e0beSNick Bowler		  Say Y here if you want the debug print routines to direct
246aaf5e0beSNick Bowler		  their output to UART1 on the Zynq platform.
247aaf5e0beSNick Bowler
248aaf5e0beSNick Bowler		  If you have a ZC702 board and want early boot messages to
249aaf5e0beSNick Bowler		  appear on the USB serial adaptor, select this option.
250aaf5e0beSNick Bowler
251e76f4750SRussell King	config DEBUG_DC21285_PORT
252e76f4750SRussell King		bool "Kernel low-level debugging messages via footbridge serial port"
253e76f4750SRussell King		depends on FOOTBRIDGE
254e76f4750SRussell King		help
255e76f4750SRussell King		  Say Y here if you want the debug print routines to direct
256e76f4750SRussell King		  their output to the serial port in the DC21285 (Footbridge).
257e76f4750SRussell King
258e23814daSBaruch Siach	config DEBUG_DIGICOLOR_UA0
259e23814daSBaruch Siach		bool "Kernel low-level debugging messages via Digicolor UA0"
260e23814daSBaruch Siach		depends on ARCH_DIGICOLOR
261e23814daSBaruch Siach		help
262e23814daSBaruch Siach		  Say Y here if you want the debug print routines to direct
263e23814daSBaruch Siach		  their output to the UA0 serial port in the CX92755.
264e23814daSBaruch Siach
265e76f4750SRussell King	config DEBUG_FOOTBRIDGE_COM1
266e76f4750SRussell King		bool "Kernel low-level debugging messages via footbridge 8250 at PCI COM1"
267e76f4750SRussell King		depends on FOOTBRIDGE
268e76f4750SRussell King		help
269e76f4750SRussell King		  Say Y here if you want the debug print routines to direct
270e76f4750SRussell King		  their output to the 8250 at PCI COM1.
271e76f4750SRussell King
2728d258bebSHaojian Zhuang	config DEBUG_HI3620_UART
2738d258bebSHaojian Zhuang		bool "Hisilicon HI3620 Debug UART"
2748d258bebSHaojian Zhuang		depends on ARCH_HI3xxx
2758d258bebSHaojian Zhuang		select DEBUG_UART_PL01X
2768d258bebSHaojian Zhuang		help
2778d258bebSHaojian Zhuang		  Say Y here if you want kernel low-level debugging support
2788d258bebSHaojian Zhuang		  on HI3620 UART.
2798d258bebSHaojian Zhuang
2808d258bebSHaojian Zhuang	config DEBUG_HI3716_UART
2818d258bebSHaojian Zhuang		bool "Hisilicon Hi3716 Debug UART"
2828d258bebSHaojian Zhuang		depends on ARCH_HI3xxx
2838d258bebSHaojian Zhuang		select DEBUG_UART_PL01X
2848d258bebSHaojian Zhuang		help
2858d258bebSHaojian Zhuang		  Say Y here if you want kernel low-level debugging support
2868d258bebSHaojian Zhuang		  on HI3716 UART.
2878d258bebSHaojian Zhuang
288220e6cf7SRob Herring	config DEBUG_HIGHBANK_UART
289220e6cf7SRob Herring		bool "Kernel low-level debugging messages via Highbank UART"
290220e6cf7SRob Herring		depends on ARCH_HIGHBANK
2915c972af4SRussell King		select DEBUG_UART_PL01X
292220e6cf7SRob Herring		help
293220e6cf7SRob Herring		  Say Y here if you want the debug print routines to direct
294220e6cf7SRob Herring		  their output to the UART on Highbank based devices.
295220e6cf7SRob Herring
29627dafaa8SWang Long	config DEBUG_HIP01_UART
29727dafaa8SWang Long		bool "Hisilicon Hip01 Debug UART"
29827dafaa8SWang Long		depends on ARCH_HIP01
29927dafaa8SWang Long		select DEBUG_UART_8250
30027dafaa8SWang Long		help
30127dafaa8SWang Long		  Say Y here if you want kernel low-level debugging support
30227dafaa8SWang Long		  on HIP01 UART.
30327dafaa8SWang Long
304c9a1df48SHaojian Zhuang	config DEBUG_HIP04_UART
305c9a1df48SHaojian Zhuang		bool "Hisilicon HiP04 Debug UART"
306c9a1df48SHaojian Zhuang		depends on ARCH_HIP04
307c9a1df48SHaojian Zhuang		select DEBUG_UART_8250
308c9a1df48SHaojian Zhuang		help
309c9a1df48SHaojian Zhuang		  Say Y here if you want kernel low-level debugging support
310c9a1df48SHaojian Zhuang		  on HIP04 UART.
311c9a1df48SHaojian Zhuang
31237bdaf82SOlof Johansson	config DEBUG_HIX5HD2_UART
31337bdaf82SOlof Johansson		bool "Hisilicon Hix5hd2 Debug UART"
31437bdaf82SOlof Johansson		depends on ARCH_HIX5HD2
31593fd03a8SCatalin Marinas		select DEBUG_UART_PL01X
31693fd03a8SCatalin Marinas		help
31737bdaf82SOlof Johansson		  Say Y here if you want kernel low-level debugging support
31837bdaf82SOlof Johansson		  on Hix5hd2 UART.
3191da177e4SLinus Torvalds
320f350b861SShawn Guo	config DEBUG_IMX1_UART
321f350b861SShawn Guo		bool "i.MX1 Debug UART"
322f350b861SShawn Guo		depends on SOC_IMX1
323f350b861SShawn Guo		help
324f350b861SShawn Guo		  Say Y here if you want kernel low-level debugging support
325f350b861SShawn Guo		  on i.MX1.
326f350b861SShawn Guo
327f350b861SShawn Guo	config DEBUG_IMX23_UART
328f350b861SShawn Guo		bool "i.MX23 Debug UART"
329f350b861SShawn Guo		depends on SOC_IMX23
3305c972af4SRussell King		select DEBUG_UART_PL01X
331f350b861SShawn Guo		help
332f350b861SShawn Guo		  Say Y here if you want kernel low-level debugging support
333f350b861SShawn Guo		  on i.MX23.
334f350b861SShawn Guo
335f350b861SShawn Guo	config DEBUG_IMX25_UART
336f350b861SShawn Guo		bool "i.MX25 Debug UART"
337f350b861SShawn Guo		depends on SOC_IMX25
338f350b861SShawn Guo		help
339f350b861SShawn Guo		  Say Y here if you want kernel low-level debugging support
340f350b861SShawn Guo		  on i.MX25.
341f350b861SShawn Guo
342f350b861SShawn Guo	config DEBUG_IMX21_IMX27_UART
343f350b861SShawn Guo		bool "i.MX21 and i.MX27 Debug UART"
344f350b861SShawn Guo		depends on SOC_IMX21 || SOC_IMX27
345f350b861SShawn Guo		help
346f350b861SShawn Guo		  Say Y here if you want kernel low-level debugging support
347f350b861SShawn Guo		  on i.MX21 or i.MX27.
348f350b861SShawn Guo
349f350b861SShawn Guo	config DEBUG_IMX28_UART
350f350b861SShawn Guo		bool "i.MX28 Debug UART"
351f350b861SShawn Guo		depends on SOC_IMX28
3525c972af4SRussell King		select DEBUG_UART_PL01X
353f350b861SShawn Guo		help
354f350b861SShawn Guo		  Say Y here if you want kernel low-level debugging support
355f350b861SShawn Guo		  on i.MX28.
356f350b861SShawn Guo
3574ad625d4SShawn Guo	config DEBUG_IMX31_UART
3584ad625d4SShawn Guo		bool "i.MX31 Debug UART"
3594ad625d4SShawn Guo		depends on SOC_IMX31
360f350b861SShawn Guo		help
361f350b861SShawn Guo		  Say Y here if you want kernel low-level debugging support
3624ad625d4SShawn Guo		  on i.MX31.
3634ad625d4SShawn Guo
3644ad625d4SShawn Guo	config DEBUG_IMX35_UART
3654ad625d4SShawn Guo		bool "i.MX35 Debug UART"
3664ad625d4SShawn Guo		depends on SOC_IMX35
3674ad625d4SShawn Guo		help
3684ad625d4SShawn Guo		  Say Y here if you want kernel low-level debugging support
3694ad625d4SShawn Guo		  on i.MX35.
370f350b861SShawn Guo
371ad364a70SGreg Ungerer	config DEBUG_IMX50_UART
372ad364a70SGreg Ungerer		bool "i.MX50 Debug UART"
373ad364a70SGreg Ungerer		depends on SOC_IMX50
374ad364a70SGreg Ungerer		help
375ad364a70SGreg Ungerer		  Say Y here if you want kernel low-level debugging support
376ad364a70SGreg Ungerer		  on i.MX50.
377ad364a70SGreg Ungerer
378f350b861SShawn Guo	config DEBUG_IMX51_UART
379f350b861SShawn Guo		bool "i.MX51 Debug UART"
380f350b861SShawn Guo		depends on SOC_IMX51
381f350b861SShawn Guo		help
382f350b861SShawn Guo		  Say Y here if you want kernel low-level debugging support
383f350b861SShawn Guo		  on i.MX51.
384f350b861SShawn Guo
3857356420cSFabio Estevam	config DEBUG_IMX53_UART
3867356420cSFabio Estevam		bool "i.MX53 Debug UART"
3877356420cSFabio Estevam		depends on SOC_IMX53
388f350b861SShawn Guo		help
389f350b861SShawn Guo		  Say Y here if you want kernel low-level debugging support
3907356420cSFabio Estevam		  on i.MX53.
391f350b861SShawn Guo
39249c9e60eSShawn Guo	config DEBUG_IMX6Q_UART
3933c03a2feSShawn Guo		bool "i.MX6Q/DL Debug UART"
394785d7fabSDirk Behme		depends on SOC_IMX6Q
395785d7fabSDirk Behme		help
396785d7fabSDirk Behme		  Say Y here if you want kernel low-level debugging support
3973c03a2feSShawn Guo		  on i.MX6Q/DL.
398bac89d75SShawn Guo
39934e8a16bSShawn Guo	config DEBUG_IMX6SL_UART
40034e8a16bSShawn Guo		bool "i.MX6SL Debug UART"
40134e8a16bSShawn Guo		depends on SOC_IMX6SL
40234e8a16bSShawn Guo		help
40334e8a16bSShawn Guo		  Say Y here if you want kernel low-level debugging support
40434e8a16bSShawn Guo		  on i.MX6SL.
40534e8a16bSShawn Guo
40674368e81SShawn Guo	config DEBUG_IMX6SX_UART
40774368e81SShawn Guo		bool "i.MX6SX Debug UART"
40874368e81SShawn Guo		depends on SOC_IMX6SX
40974368e81SShawn Guo		help
41074368e81SShawn Guo		  Say Y here if you want kernel low-level debugging support
41174368e81SShawn Guo		  on i.MX6SX.
41274368e81SShawn Guo
413828989adSSantosh Shilimkar	config DEBUG_KEYSTONE_UART0
414828989adSSantosh Shilimkar		bool "Kernel low-level debugging on KEYSTONE2 using UART0"
415828989adSSantosh Shilimkar		depends on ARCH_KEYSTONE
416f2acf003SRussell King		select DEBUG_UART_8250
417828989adSSantosh Shilimkar		help
418828989adSSantosh Shilimkar		  Say Y here if you want the debug print routines to direct
419828989adSSantosh Shilimkar		  their output to UART0 serial port on KEYSTONE2 devices.
420828989adSSantosh Shilimkar
421828989adSSantosh Shilimkar	config DEBUG_KEYSTONE_UART1
422828989adSSantosh Shilimkar		bool "Kernel low-level debugging on KEYSTONE2 using UART1"
423828989adSSantosh Shilimkar		depends on ARCH_KEYSTONE
424f2acf003SRussell King		select DEBUG_UART_8250
425828989adSSantosh Shilimkar		help
426828989adSSantosh Shilimkar		  Say Y here if you want the debug print routines to direct
427828989adSSantosh Shilimkar		  their output to UART1 serial port on KEYSTONE2 devices.
428828989adSSantosh Shilimkar
429abbfb21eSDaniel Thompson	config DEBUG_KS8695_UART
430abbfb21eSDaniel Thompson		bool "KS8695 Debug UART"
431abbfb21eSDaniel Thompson		depends on ARCH_KS8695
432abbfb21eSDaniel Thompson		help
433abbfb21eSDaniel Thompson		  Say Y here if you want kernel low-level debugging support
434abbfb21eSDaniel Thompson		  on KS8695.
435abbfb21eSDaniel Thompson
436d8a00916SCarlo Caione	config DEBUG_MESON_UARTAO
437d8a00916SCarlo Caione		bool "Kernel low-level debugging via Meson6 UARTAO"
438d8a00916SCarlo Caione		depends on ARCH_MESON
439d8a00916SCarlo Caione		help
440d8a00916SCarlo Caione		  Say Y here if you want kernel low-lever debugging support
441d8a00916SCarlo Caione		  on Amlogic Meson6 based platforms on the UARTAO.
442d8a00916SCarlo Caione
443fa4cd2a8SHaojian Zhuang	config DEBUG_MMP_UART2
444fa4cd2a8SHaojian Zhuang		bool "Kernel low-level debugging message via MMP UART2"
445fa4cd2a8SHaojian Zhuang		depends on ARCH_MMP
4464a003647SRussell King		select DEBUG_UART_8250
447fa4cd2a8SHaojian Zhuang		help
448fa4cd2a8SHaojian Zhuang		  Say Y here if you want kernel low-level debugging support
449fa4cd2a8SHaojian Zhuang		  on MMP UART2.
450fa4cd2a8SHaojian Zhuang
451fa4cd2a8SHaojian Zhuang	config DEBUG_MMP_UART3
452fa4cd2a8SHaojian Zhuang		bool "Kernel low-level debugging message via MMP UART3"
453fa4cd2a8SHaojian Zhuang		depends on ARCH_MMP
4544a003647SRussell King		select DEBUG_UART_8250
455fa4cd2a8SHaojian Zhuang		help
456fa4cd2a8SHaojian Zhuang		  Say Y here if you want kernel low-level debugging support
457fa4cd2a8SHaojian Zhuang		  on MMP UART3.
458fa4cd2a8SHaojian Zhuang
4597098cff2SIvan T. Ivanov	config DEBUG_QCOM_UARTDM
4607098cff2SIvan T. Ivanov		bool "Kernel low-level debugging messages via QCOM UARTDM"
4617098cff2SIvan T. Ivanov		depends on ARCH_QCOM
462a3d3ef9dSStephen Boyd		help
463a3d3ef9dSStephen Boyd		  Say Y here if you want the debug print routines to direct
4647098cff2SIvan T. Ivanov		  their output to the serial port on Qualcomm devices.
465a3d3ef9dSStephen Boyd
46630cd6552SStephen Boyd		  ARCH      DEBUG_UART_PHYS   DEBUG_UART_VIRT
46730cd6552SStephen Boyd		  APQ8064   0x16640000        0xf0040000
4682f528dd3SGeorgi Djakov		  APQ8084   0xf995e000        0xfa75e000
4697098cff2SIvan T. Ivanov		  MSM8X60   0x19c40000        0xf0040000
4707098cff2SIvan T. Ivanov		  MSM8960   0x16440000        0xf0040000
4717098cff2SIvan T. Ivanov		  MSM8974   0xf991e000        0xfa71e000
4727098cff2SIvan T. Ivanov
4737098cff2SIvan T. Ivanov		  Please adjust DEBUG_UART_PHYS and DEBUG_UART_BASE configuration
4747098cff2SIvan T. Ivanov		  options based on your needs.
4753c8828f6SRohit Vaswani
476d91125ddSMaxime Ripard	config DEBUG_MVEBU_UART0
477d91125ddSMaxime Ripard		bool "Kernel low-level debugging messages via MVEBU UART0 (old bootloaders)"
478bfd5af99SRob Herring		depends on ARCH_MVEBU
4794a003647SRussell King		select DEBUG_UART_8250
480bfd5af99SRob Herring		help
481bfd5af99SRob Herring		  Say Y here if you want kernel low-level debugging support
482d91125ddSMaxime Ripard		  on MVEBU based platforms on UART0.
483bfd5af99SRob Herring
484c2804cd6SThomas Petazzoni		  This option should be used with the old bootloaders
485c2804cd6SThomas Petazzoni		  that left the internal registers mapped at
486c2804cd6SThomas Petazzoni		  0xd0000000. As of today, this is the case on
487c2804cd6SThomas Petazzoni		  platforms such as the Globalscale Mirabox or the
488c2804cd6SThomas Petazzoni		  Plathome OpenBlocks AX3, when using the original
489c2804cd6SThomas Petazzoni		  bootloader.
490c2804cd6SThomas Petazzoni
491c2804cd6SThomas Petazzoni		  If the wrong DEBUG_MVEBU_UART* option is selected,
492c2804cd6SThomas Petazzoni		  when u-boot hands over to the kernel, the system
493c2804cd6SThomas Petazzoni		  silently crashes, with no serial output at all.
494c2804cd6SThomas Petazzoni
495d91125ddSMaxime Ripard	config DEBUG_MVEBU_UART0_ALTERNATE
496d91125ddSMaxime Ripard		bool "Kernel low-level debugging messages via MVEBU UART0 (new bootloaders)"
497c2804cd6SThomas Petazzoni		depends on ARCH_MVEBU
4984a003647SRussell King		select DEBUG_UART_8250
499c2804cd6SThomas Petazzoni		help
500c2804cd6SThomas Petazzoni		  Say Y here if you want kernel low-level debugging support
501d91125ddSMaxime Ripard		  on MVEBU based platforms on UART0.
502c2804cd6SThomas Petazzoni
503c2804cd6SThomas Petazzoni		  This option should be used with the new bootloaders
504c2804cd6SThomas Petazzoni		  that remap the internal registers at 0xf1000000.
505c2804cd6SThomas Petazzoni
506c2804cd6SThomas Petazzoni		  If the wrong DEBUG_MVEBU_UART* option is selected,
507c2804cd6SThomas Petazzoni		  when u-boot hands over to the kernel, the system
508c2804cd6SThomas Petazzoni		  silently crashes, with no serial output at all.
509c2804cd6SThomas Petazzoni
510bd920490SMaxime Ripard	config DEBUG_MVEBU_UART1_ALTERNATE
511bd920490SMaxime Ripard		bool "Kernel low-level debugging messages via MVEBU UART1 (new bootloaders)"
512bd920490SMaxime Ripard		depends on ARCH_MVEBU
513bd920490SMaxime Ripard		select DEBUG_UART_8250
514bd920490SMaxime Ripard		help
515bd920490SMaxime Ripard		  Say Y here if you want kernel low-level debugging support
516bd920490SMaxime Ripard		  on MVEBU based platforms on UART1.
5171da177e4SLinus Torvalds
5181da177e4SLinus Torvalds		  This option should be used with the new bootloaders
5191da177e4SLinus Torvalds		  that remap the internal registers at 0xf1000000.
5201da177e4SLinus Torvalds
5211da177e4SLinus Torvalds		  If the wrong DEBUG_MVEBU_UART* option is selected,
5221da177e4SLinus Torvalds		  when u-boot hands over to the kernel, the system
5231da177e4SLinus Torvalds		  silently crashes, with no serial output at all.
5241da177e4SLinus Torvalds
525c7c3eac6SShawn Guo	config DEBUG_VF_UART
526c7c3eac6SShawn Guo		bool "Vybrid UART"
527c7c3eac6SShawn Guo		depends on SOC_VF610
528c7c3eac6SShawn Guo		help
529c7c3eac6SShawn Guo		  Say Y here if you want kernel low-level debugging support
530c7c3eac6SShawn Guo		  on Vybrid based platforms.
531c7c3eac6SShawn Guo
5324d31e664SDaniel Thompson	config DEBUG_NETX_UART
5334d31e664SDaniel Thompson		bool "Kernel low-level debugging messages via NetX UART"
5344d31e664SDaniel Thompson		depends on ARCH_NETX
5354d31e664SDaniel Thompson		help
5364d31e664SDaniel Thompson		  Say Y here if you want kernel low-level debugging support
5374d31e664SDaniel Thompson		  on Hilscher NetX based platforms.
5384d31e664SDaniel Thompson
539266c3479SLinus Walleij	config DEBUG_NOMADIK_UART
540266c3479SLinus Walleij		bool "Kernel low-level debugging messages via NOMADIK UART"
541266c3479SLinus Walleij		depends on ARCH_NOMADIK
5425c972af4SRussell King		select DEBUG_UART_PL01X
543266c3479SLinus Walleij		help
544266c3479SLinus Walleij		  Say Y here if you want kernel low-level debugging support
545266c3479SLinus Walleij		  on NOMADIK based platforms.
546266c3479SLinus Walleij
5479851ca57SDaniel Tang	config DEBUG_NSPIRE_CLASSIC_UART
5489851ca57SDaniel Tang		bool "Kernel low-level debugging via TI-NSPIRE 8250 UART"
5499851ca57SDaniel Tang		depends on ARCH_NSPIRE
5504a003647SRussell King		select DEBUG_UART_8250
5519851ca57SDaniel Tang		help
5529851ca57SDaniel Tang		  Say Y here if you want kernel low-level debugging support
5539851ca57SDaniel Tang		  on TI-NSPIRE classic models.
5549851ca57SDaniel Tang
5559851ca57SDaniel Tang	config DEBUG_NSPIRE_CX_UART
5569851ca57SDaniel Tang		bool "Kernel low-level debugging via TI-NSPIRE PL011 UART"
5579851ca57SDaniel Tang		depends on ARCH_NSPIRE
5585c972af4SRussell King		select DEBUG_UART_PL01X
5599851ca57SDaniel Tang		help
5609851ca57SDaniel Tang		  Say Y here if you want kernel low-level debugging support
5619851ca57SDaniel Tang		  on TI-NSPIRE CX models.
5629851ca57SDaniel Tang
563c26b9993SDaniel Thompson	config DEBUG_OMAP1UART1
564c26b9993SDaniel Thompson		bool "Kernel low-level debugging via OMAP1 UART1"
565c26b9993SDaniel Thompson		depends on ARCH_OMAP1
566c26b9993SDaniel Thompson		select DEBUG_UART_8250
567c26b9993SDaniel Thompson		help
568c26b9993SDaniel Thompson		  Say Y here if you want kernel low-level debugging support
569c26b9993SDaniel Thompson		  on OMAP1 based platforms (except OMAP730) on the UART1.
570c26b9993SDaniel Thompson
571c26b9993SDaniel Thompson	config DEBUG_OMAP1UART2
572c26b9993SDaniel Thompson		bool "Kernel low-level debugging via OMAP1 UART2"
573c26b9993SDaniel Thompson		depends on ARCH_OMAP1
574c26b9993SDaniel Thompson		select DEBUG_UART_8250
575c26b9993SDaniel Thompson		help
576c26b9993SDaniel Thompson		  Say Y here if you want kernel low-level debugging support
577c26b9993SDaniel Thompson		  on OMAP1 based platforms (except OMAP730) on the UART2.
578c26b9993SDaniel Thompson
579c26b9993SDaniel Thompson	config DEBUG_OMAP1UART3
580c26b9993SDaniel Thompson		bool "Kernel low-level debugging via OMAP1 UART3"
581c26b9993SDaniel Thompson		depends on ARCH_OMAP1
582c26b9993SDaniel Thompson		select DEBUG_UART_8250
583c26b9993SDaniel Thompson		help
584c26b9993SDaniel Thompson		  Say Y here if you want kernel low-level debugging support
585c26b9993SDaniel Thompson		  on OMAP1 based platforms (except OMAP730) on the UART3.
586c26b9993SDaniel Thompson
587cce278d2SRussell King	config DEBUG_OMAP2UART1
588cce278d2SRussell King		bool "OMAP2/3/4 UART1 (omap2/3 sdp boards and some omap3 boards)"
589808b7e07STony Lindgren		depends on ARCH_OMAP2PLUS
590cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
591808b7e07STony Lindgren		help
592cce278d2SRussell King		  This covers at least h4, 2430sdp, 3430sdp, 3630sdp,
593cce278d2SRussell King		  omap3 torpedo and 3530 lv som.
594cce278d2SRussell King
595cce278d2SRussell King	config DEBUG_OMAP2UART2
596cce278d2SRussell King		bool "Kernel low-level debugging messages via OMAP2/3/4 UART2"
597cce278d2SRussell King		depends on ARCH_OMAP2PLUS
598cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
599cce278d2SRussell King
600cce278d2SRussell King	config DEBUG_OMAP2UART3
601cce278d2SRussell King		bool "Kernel low-level debugging messages via OMAP2 UART3 (n8x0)"
602cce278d2SRussell King		depends on ARCH_OMAP2PLUS
603cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
604cce278d2SRussell King
605cce278d2SRussell King	config DEBUG_OMAP3UART3
606cce278d2SRussell King		bool "Kernel low-level debugging messages via OMAP3 UART3 (most omap3 boards)"
607cce278d2SRussell King		depends on ARCH_OMAP2PLUS
608cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
609cce278d2SRussell King		help
610cce278d2SRussell King		  This covers at least cm_t3x, beagle, crane, devkit8000,
611cce278d2SRussell King		  igep00x0, ldp, n900, n9(50), pandora, overo, touchbook,
612cce278d2SRussell King		  and 3517evm.
613cce278d2SRussell King
614cce278d2SRussell King	config DEBUG_OMAP4UART3
615cce278d2SRussell King		bool "Kernel low-level debugging messages via OMAP4/5 UART3 (omap4 blaze, panda, omap5 sevm)"
616cce278d2SRussell King		depends on ARCH_OMAP2PLUS
617cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
618cce278d2SRussell King
619cce278d2SRussell King	config DEBUG_OMAP3UART4
620cce278d2SRussell King		bool "Kernel low-level debugging messages via OMAP36XX UART4"
621cce278d2SRussell King		depends on ARCH_OMAP2PLUS
622cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
623cce278d2SRussell King
624cce278d2SRussell King	config DEBUG_OMAP4UART4
625cce278d2SRussell King		bool "Kernel low-level debugging messages via OMAP4/5 UART4"
626cce278d2SRussell King		depends on ARCH_OMAP2PLUS
627cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
628cce278d2SRussell King
629c26b9993SDaniel Thompson	config DEBUG_OMAP7XXUART1
630c26b9993SDaniel Thompson		bool "Kernel low-level debugging via OMAP730 UART1"
631c26b9993SDaniel Thompson		depends on ARCH_OMAP730
632c26b9993SDaniel Thompson		select DEBUG_UART_8250
633c26b9993SDaniel Thompson		help
634c26b9993SDaniel Thompson		  Say Y here if you want kernel low-level debugging support
635c26b9993SDaniel Thompson		  on OMAP730 based platforms on the UART1.
636c26b9993SDaniel Thompson
637c26b9993SDaniel Thompson	config DEBUG_OMAP7XXUART2
638c26b9993SDaniel Thompson		bool "Kernel low-level debugging via OMAP730 UART2"
639c26b9993SDaniel Thompson		depends on ARCH_OMAP730
640c26b9993SDaniel Thompson		select DEBUG_UART_8250
641c26b9993SDaniel Thompson		help
642c26b9993SDaniel Thompson		  Say Y here if you want kernel low-level debugging support
643c26b9993SDaniel Thompson		  on OMAP730 based platforms on the UART2.
644c26b9993SDaniel Thompson
645c26b9993SDaniel Thompson	config DEBUG_OMAP7XXUART3
646c26b9993SDaniel Thompson		bool "Kernel low-level debugging via OMAP730 UART3"
647c26b9993SDaniel Thompson		depends on ARCH_OMAP730
648c26b9993SDaniel Thompson		select DEBUG_UART_8250
649c26b9993SDaniel Thompson		help
650c26b9993SDaniel Thompson		  Say Y here if you want kernel low-level debugging support
651c26b9993SDaniel Thompson		  on OMAP730 based platforms on the UART3.
652c26b9993SDaniel Thompson
653cce278d2SRussell King	config DEBUG_TI81XXUART1
654cce278d2SRussell King		bool "Kernel low-level debugging messages via TI81XX UART1 (ti8148evm)"
655cce278d2SRussell King		depends on ARCH_OMAP2PLUS
656cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
657cce278d2SRussell King
658cce278d2SRussell King	config DEBUG_TI81XXUART2
659cce278d2SRussell King		bool "Kernel low-level debugging messages via TI81XX UART2"
660cce278d2SRussell King		depends on ARCH_OMAP2PLUS
661cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
662cce278d2SRussell King
663cce278d2SRussell King	config DEBUG_TI81XXUART3
664cce278d2SRussell King		bool "Kernel low-level debugging messages via TI81XX UART3 (ti8168evm)"
665cce278d2SRussell King		depends on ARCH_OMAP2PLUS
666cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
667cce278d2SRussell King
668cce278d2SRussell King	config DEBUG_AM33XXUART1
669cce278d2SRussell King		bool "Kernel low-level debugging messages via AM33XX UART1"
670cce278d2SRussell King		depends on ARCH_OMAP2PLUS
671cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
672cce278d2SRussell King
673cce278d2SRussell King	config DEBUG_ZOOM_UART
674cce278d2SRussell King		bool "Kernel low-level debugging messages via Zoom2/3 UART"
675cce278d2SRussell King		depends on ARCH_OMAP2PLUS
676cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
677808b7e07STony Lindgren
67859bba2a9SRob Herring	config DEBUG_PICOXCELL_UART
67959bba2a9SRob Herring		depends on ARCH_PICOXCELL
68059bba2a9SRob Herring		bool "Use PicoXcell UART for low-level debug"
6810b4cccbeSRussell King		select DEBUG_UART_8250
68259bba2a9SRob Herring		help
68359bba2a9SRob Herring		  Say Y here if you want kernel low-level debugging support
68459bba2a9SRob Herring		  on PicoXcell based platforms.
68559bba2a9SRob Herring
6860a43cd3bSHaojian Zhuang	config DEBUG_PXA_UART1
6870a43cd3bSHaojian Zhuang		depends on ARCH_PXA
6880a43cd3bSHaojian Zhuang		bool "Use PXA UART1 for low-level debug"
6894a003647SRussell King		select DEBUG_UART_8250
6900a43cd3bSHaojian Zhuang		help
6910a43cd3bSHaojian Zhuang		  Say Y here if you want kernel low-level debugging support
6920a43cd3bSHaojian Zhuang		  on PXA UART1.
6930a43cd3bSHaojian Zhuang
694e76f4750SRussell King	config DEBUG_REALVIEW_STD_PORT
695e76f4750SRussell King		bool "RealView Default UART"
696e76f4750SRussell King		depends on ARCH_REALVIEW
6975c972af4SRussell King		select DEBUG_UART_PL01X
698e76f4750SRussell King		help
699e76f4750SRussell King		  Say Y here if you want the debug print routines to direct
700e76f4750SRussell King		  their output to the serial port on RealView EB, PB11MP, PBA8
701e76f4750SRussell King		  and PBX platforms.
702e76f4750SRussell King
703e76f4750SRussell King	config DEBUG_REALVIEW_PB1176_PORT
704e76f4750SRussell King		bool "RealView PB1176 UART"
705e76f4750SRussell King		depends on MACH_REALVIEW_PB1176
7065c972af4SRussell King		select DEBUG_UART_PL01X
707e76f4750SRussell King		help
708e76f4750SRussell King		  Say Y here if you want the debug print routines to direct
709e76f4750SRussell King		  their output to the standard serial port on the RealView
710e76f4750SRussell King		  PB1176 platform.
711e76f4750SRussell King
712cce278d2SRussell King	config DEBUG_RK29_UART0
713cce278d2SRussell King		bool "Kernel low-level debugging messages via Rockchip RK29 UART0"
71438bd6892SHeiko Stuebner		depends on ARCH_ROCKCHIP
7154a003647SRussell King		select DEBUG_UART_8250
716cce278d2SRussell King		help
717cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
718cce278d2SRussell King		  on Rockchip based platforms.
719cce278d2SRussell King
720cce278d2SRussell King	config DEBUG_RK29_UART1
721cce278d2SRussell King		bool "Kernel low-level debugging messages via Rockchip RK29 UART1"
722cce278d2SRussell King		depends on ARCH_ROCKCHIP
7234a003647SRussell King		select DEBUG_UART_8250
724cce278d2SRussell King		help
725cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
726cce278d2SRussell King		  on Rockchip based platforms.
727cce278d2SRussell King
728cce278d2SRussell King	config DEBUG_RK29_UART2
729cce278d2SRussell King		bool "Kernel low-level debugging messages via Rockchip RK29 UART2"
730cce278d2SRussell King		depends on ARCH_ROCKCHIP
7314a003647SRussell King		select DEBUG_UART_8250
732cce278d2SRussell King		help
733cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
734cce278d2SRussell King		  on Rockchip based platforms.
735cce278d2SRussell King
736cce278d2SRussell King	config DEBUG_RK3X_UART0
737aa9c4f74SHeiko Stuebner		bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART0"
738cce278d2SRussell King		depends on ARCH_ROCKCHIP
7394a003647SRussell King		select DEBUG_UART_8250
740cce278d2SRussell King		help
741cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
742cce278d2SRussell King		  on Rockchip based platforms.
743cce278d2SRussell King
744cce278d2SRussell King	config DEBUG_RK3X_UART1
745aa9c4f74SHeiko Stuebner		bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART1"
746cce278d2SRussell King		depends on ARCH_ROCKCHIP
7474a003647SRussell King		select DEBUG_UART_8250
748cce278d2SRussell King		help
749cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
750cce278d2SRussell King		  on Rockchip based platforms.
751cce278d2SRussell King
752cce278d2SRussell King	config DEBUG_RK3X_UART2
753aa9c4f74SHeiko Stuebner		bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART2"
754cce278d2SRussell King		depends on ARCH_ROCKCHIP
7554a003647SRussell King		select DEBUG_UART_8250
756cce278d2SRussell King		help
757cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
758cce278d2SRussell King		  on Rockchip based platforms.
759cce278d2SRussell King
760cce278d2SRussell King	config DEBUG_RK3X_UART3
761aa9c4f74SHeiko Stuebner		bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART3"
762cce278d2SRussell King		depends on ARCH_ROCKCHIP
7634a003647SRussell King		select DEBUG_UART_8250
76438bd6892SHeiko Stuebner		help
76538bd6892SHeiko Stuebner		  Say Y here if you want kernel low-level debugging support
76638bd6892SHeiko Stuebner		  on Rockchip based platforms.
76738bd6892SHeiko Stuebner
768efd02ee9SHeiko Stuebner	config DEBUG_RK32_UART2
769efd02ee9SHeiko Stuebner		bool "Kernel low-level debugging messages via Rockchip RK32 UART2"
770efd02ee9SHeiko Stuebner		depends on ARCH_ROCKCHIP
771efd02ee9SHeiko Stuebner		select DEBUG_UART_8250
772efd02ee9SHeiko Stuebner		help
773efd02ee9SHeiko Stuebner		  Say Y here if you want kernel low-level debugging support
774efd02ee9SHeiko Stuebner		  on Rockchip RK32xx based platforms.
775efd02ee9SHeiko Stuebner
7767a2071c5SGeert Uytterhoeven	config DEBUG_R7S72100_SCIF2
7777a2071c5SGeert Uytterhoeven		bool "Kernel low-level debugging messages via SCIF2 on R7S72100"
7787a2071c5SGeert Uytterhoeven		depends on ARCH_R7S72100
7797a2071c5SGeert Uytterhoeven		help
7807a2071c5SGeert Uytterhoeven		  Say Y here if you want kernel low-level debugging support
7817a2071c5SGeert Uytterhoeven		  via SCIF2 on Renesas RZ/A1H (R7S72100).
7827a2071c5SGeert Uytterhoeven
7837a2071c5SGeert Uytterhoeven	config DEBUG_RCAR_GEN1_SCIF0
7847a2071c5SGeert Uytterhoeven		bool "Kernel low-level debugging messages via SCIF0 on R8A7778"
7857a2071c5SGeert Uytterhoeven		depends on ARCH_R8A7778
7867a2071c5SGeert Uytterhoeven		help
7877a2071c5SGeert Uytterhoeven		  Say Y here if you want kernel low-level debugging support
7887a2071c5SGeert Uytterhoeven		  via SCIF0 on Renesas R-Car M1A (R8A7778).
7897a2071c5SGeert Uytterhoeven
7907a2071c5SGeert Uytterhoeven	config DEBUG_RCAR_GEN1_SCIF2
7917a2071c5SGeert Uytterhoeven		bool "Kernel low-level debugging messages via SCIF2 on R8A7779"
7927a2071c5SGeert Uytterhoeven		depends on ARCH_R8A7779
7937a2071c5SGeert Uytterhoeven		help
7947a2071c5SGeert Uytterhoeven		  Say Y here if you want kernel low-level debugging support
7957a2071c5SGeert Uytterhoeven		  via SCIF2 on Renesas R-Car H1 (R8A7779).
7967a2071c5SGeert Uytterhoeven
7977a2071c5SGeert Uytterhoeven	config DEBUG_RCAR_GEN2_SCIF0
798e2fd51b7SGeert Uytterhoeven		bool "Kernel low-level debugging messages via SCIF0 on R8A7790/R8A7791/R8A7793"
7997a2071c5SGeert Uytterhoeven		depends on ARCH_R8A7790 || ARCH_R8A7791 || ARCH_R8A7793
8007a2071c5SGeert Uytterhoeven		help
8017a2071c5SGeert Uytterhoeven		  Say Y here if you want kernel low-level debugging support
8027a2071c5SGeert Uytterhoeven		  via SCIF0 on Renesas R-Car H2 (R8A7790), M2-W (R8A7791), or
8037a2071c5SGeert Uytterhoeven		  M2-N (R8A7793).
8047a2071c5SGeert Uytterhoeven
8057a2071c5SGeert Uytterhoeven	config DEBUG_RCAR_GEN2_SCIF2
8067a2071c5SGeert Uytterhoeven		bool "Kernel low-level debugging messages via SCIF2 on R8A7794"
8077a2071c5SGeert Uytterhoeven		depends on ARCH_R8A7794
8087a2071c5SGeert Uytterhoeven		help
8097a2071c5SGeert Uytterhoeven		  Say Y here if you want kernel low-level debugging support
8107a2071c5SGeert Uytterhoeven		  via SCIF2 on Renesas R-Car E2 (R8A7794).
8117a2071c5SGeert Uytterhoeven
8127a2071c5SGeert Uytterhoeven	config DEBUG_RMOBILE_SCIFA0
81359b89af1SMagnus Damm		bool "Kernel low-level debugging messages via SCIFA0 on R8A73A4"
81459b89af1SMagnus Damm		depends on ARCH_R8A73A4
8157a2071c5SGeert Uytterhoeven		help
8167a2071c5SGeert Uytterhoeven		  Say Y here if you want kernel low-level debugging support
81759b89af1SMagnus Damm		  via SCIFA0 on Renesas R-Mobile APE6 (R8A73A4).
8187a2071c5SGeert Uytterhoeven
8197a2071c5SGeert Uytterhoeven	config DEBUG_RMOBILE_SCIFA1
8207a2071c5SGeert Uytterhoeven		bool "Kernel low-level debugging messages via SCIFA1 on R8A7740"
8217a2071c5SGeert Uytterhoeven		depends on ARCH_R8A7740
8227a2071c5SGeert Uytterhoeven		help
8237a2071c5SGeert Uytterhoeven		  Say Y here if you want kernel low-level debugging support
8247a2071c5SGeert Uytterhoeven		  via SCIFA1 on Renesas R-Mobile A1 (R8A7740).
8257a2071c5SGeert Uytterhoeven
8267a2071c5SGeert Uytterhoeven	config DEBUG_RMOBILE_SCIFA4
8277a2071c5SGeert Uytterhoeven		bool "Kernel low-level debugging messages via SCIFA4 on SH73A0"
8287a2071c5SGeert Uytterhoeven		depends on ARCH_SH73A0
8297a2071c5SGeert Uytterhoeven		help
8307a2071c5SGeert Uytterhoeven		  Say Y here if you want kernel low-level debugging support
8317a2071c5SGeert Uytterhoeven		  via SCIFA4 on Renesas SH-Mobile AG5 (SH73A0).
8327a2071c5SGeert Uytterhoeven
833e76f4750SRussell King	config DEBUG_S3C_UART0
834e76f4750SRussell King		depends on PLAT_SAMSUNG
835a2e40710SArnd Bergmann		select DEBUG_EXYNOS_UART if ARCH_EXYNOS
8361899de28SHeiko Stuebner		select DEBUG_S3C24XX_UART if ARCH_S3C24XX
8377bab7d9eSTomasz Figa		select DEBUG_S5PV210_UART if ARCH_S5PV210
8385cc8a016SSachin Kamat		bool "Use Samsung S3C UART 0 for low-level debug"
839e76f4750SRussell King		help
840e76f4750SRussell King		  Say Y here if you want the debug print routines to direct
841e76f4750SRussell King		  their output to UART 0. The port must have been initialised
842e76f4750SRussell King		  by the boot-loader before use.
843e76f4750SRussell King
844e76f4750SRussell King	config DEBUG_S3C_UART1
845e76f4750SRussell King		depends on PLAT_SAMSUNG
846a2e40710SArnd Bergmann		select DEBUG_EXYNOS_UART if ARCH_EXYNOS
8471899de28SHeiko Stuebner		select DEBUG_S3C24XX_UART if ARCH_S3C24XX
8487bab7d9eSTomasz Figa		select DEBUG_S5PV210_UART if ARCH_S5PV210
8495cc8a016SSachin Kamat		bool "Use Samsung S3C UART 1 for low-level debug"
850e76f4750SRussell King		help
851e76f4750SRussell King		  Say Y here if you want the debug print routines to direct
852e76f4750SRussell King		  their output to UART 1. The port must have been initialised
853e76f4750SRussell King		  by the boot-loader before use.
854e76f4750SRussell King
855e76f4750SRussell King	config DEBUG_S3C_UART2
856e76f4750SRussell King		depends on PLAT_SAMSUNG
857a2e40710SArnd Bergmann		select DEBUG_EXYNOS_UART if ARCH_EXYNOS
8581899de28SHeiko Stuebner		select DEBUG_S3C24XX_UART if ARCH_S3C24XX
8597bab7d9eSTomasz Figa		select DEBUG_S5PV210_UART if ARCH_S5PV210
8605cc8a016SSachin Kamat		bool "Use Samsung S3C UART 2 for low-level debug"
861e76f4750SRussell King		help
862e76f4750SRussell King		  Say Y here if you want the debug print routines to direct
863e76f4750SRussell King		  their output to UART 2. The port must have been initialised
864e76f4750SRussell King		  by the boot-loader before use.
865e76f4750SRussell King
8665fa23ddeSOlof Johansson	config DEBUG_S3C_UART3
8677bab7d9eSTomasz Figa		depends on PLAT_SAMSUNG && (ARCH_EXYNOS || ARCH_S5PV210)
8687bab7d9eSTomasz Figa		select DEBUG_EXYNOS_UART if ARCH_EXYNOS
8697bab7d9eSTomasz Figa		select DEBUG_S5PV210_UART if ARCH_S5PV210
8705cc8a016SSachin Kamat		bool "Use Samsung S3C UART 3 for low-level debug"
8715fa23ddeSOlof Johansson		help
8725fa23ddeSOlof Johansson		  Say Y here if you want the debug print routines to direct
8735fa23ddeSOlof Johansson		  their output to UART 3. The port must have been initialised
8745fa23ddeSOlof Johansson		  by the boot-loader before use.
8755fa23ddeSOlof Johansson
876daf67dfcSHeiko Stuebner	config DEBUG_S3C2410_UART0
877daf67dfcSHeiko Stuebner		depends on ARCH_S3C24XX
878daf67dfcSHeiko Stuebner		select DEBUG_S3C2410_UART
879daf67dfcSHeiko Stuebner		bool "Use S3C2410/S3C2412 UART 0 for low-level debug"
880daf67dfcSHeiko Stuebner		help
881daf67dfcSHeiko Stuebner		  Say Y here if you want the debug print routines to direct
882daf67dfcSHeiko Stuebner		  their output to UART 0. The port must have been initialised
883daf67dfcSHeiko Stuebner		  by the boot-loader before use.
884daf67dfcSHeiko Stuebner
885daf67dfcSHeiko Stuebner	config DEBUG_S3C2410_UART1
886daf67dfcSHeiko Stuebner		depends on ARCH_S3C24XX
887daf67dfcSHeiko Stuebner		select DEBUG_S3C2410_UART
888daf67dfcSHeiko Stuebner		bool "Use S3C2410/S3C2412 UART 1 for low-level debug"
889daf67dfcSHeiko Stuebner		help
890daf67dfcSHeiko Stuebner		  Say Y here if you want the debug print routines to direct
891daf67dfcSHeiko Stuebner		  their output to UART 1. The port must have been initialised
892daf67dfcSHeiko Stuebner		  by the boot-loader before use.
893daf67dfcSHeiko Stuebner
894daf67dfcSHeiko Stuebner	config DEBUG_S3C2410_UART2
895daf67dfcSHeiko Stuebner		depends on ARCH_S3C24XX
896daf67dfcSHeiko Stuebner		select DEBUG_S3C2410_UART
897daf67dfcSHeiko Stuebner		bool "Use S3C2410/S3C2412 UART 2 for low-level debug"
898daf67dfcSHeiko Stuebner		help
899daf67dfcSHeiko Stuebner		  Say Y here if you want the debug print routines to direct
900daf67dfcSHeiko Stuebner		  their output to UART 2. The port must have been initialised
901daf67dfcSHeiko Stuebner		  by the boot-loader before use.
902daf67dfcSHeiko Stuebner
903e6131fa3SDmitry Eremin-Solenikov	config DEBUG_SA1100
904e6131fa3SDmitry Eremin-Solenikov		depends on ARCH_SA1100
905e6131fa3SDmitry Eremin-Solenikov		bool "Use SA1100 UARTs for low-level debug"
906e6131fa3SDmitry Eremin-Solenikov		help
907e6131fa3SDmitry Eremin-Solenikov		  Say Y here if you want kernel low-level debugging support
908e6131fa3SDmitry Eremin-Solenikov		  on SA-11x0 UART ports. The kernel will check for the first
909e6131fa3SDmitry Eremin-Solenikov		  enabled UART in a sequence 3-1-2.
910e6131fa3SDmitry Eremin-Solenikov
9116111bf7cSRob Herring	config DEBUG_SOCFPGA_UART
9126111bf7cSRob Herring		depends on ARCH_SOCFPGA
9136111bf7cSRob Herring		bool "Use SOCFPGA UART for low-level debug"
9140b4cccbeSRussell King		select DEBUG_UART_8250
9156111bf7cSRob Herring		help
9166111bf7cSRob Herring		  Say Y here if you want kernel low-level debugging support
9176111bf7cSRob Herring		  on SOCFPGA based platforms.
9186111bf7cSRob Herring
919d4da889aSChen-Yu Tsai	config DEBUG_SUN9I_UART0
920d4da889aSChen-Yu Tsai		bool "Kernel low-level debugging messages via sun9i UART0"
921d4da889aSChen-Yu Tsai		depends on MACH_SUN9I
922d4da889aSChen-Yu Tsai		select DEBUG_UART_8250
923d4da889aSChen-Yu Tsai		help
924d4da889aSChen-Yu Tsai		  Say Y here if you want kernel low-level debugging support
925d4da889aSChen-Yu Tsai		  on Allwinner A80 based platforms on the UART0.
926d4da889aSChen-Yu Tsai
927aa25115aSStefan Roese	config DEBUG_SUNXI_UART0
928aa25115aSStefan Roese		bool "Kernel low-level debugging messages via sunXi UART0"
929aa25115aSStefan Roese		depends on ARCH_SUNXI
9304a003647SRussell King		select DEBUG_UART_8250
931aa25115aSStefan Roese		help
932aa25115aSStefan Roese		  Say Y here if you want kernel low-level debugging support
933aa25115aSStefan Roese		  on Allwinner A1X based platforms on the UART0.
934aa25115aSStefan Roese
935cb84fa18SMaxime Ripard	config DEBUG_SUNXI_UART1
936cb84fa18SMaxime Ripard		bool "Kernel low-level debugging messages via sunXi UART1"
937cb84fa18SMaxime Ripard		depends on ARCH_SUNXI
9384a003647SRussell King		select DEBUG_UART_8250
939cb84fa18SMaxime Ripard		help
940cb84fa18SMaxime Ripard		  Say Y here if you want kernel low-level debugging support
941cb84fa18SMaxime Ripard		  on Allwinner A1X based platforms on the UART1.
942cb84fa18SMaxime Ripard
943c4718543SChen-Yu Tsai	config DEBUG_SUNXI_R_UART
944c4718543SChen-Yu Tsai		bool "Kernel low-level debugging messages via sunXi R_UART"
945c4718543SChen-Yu Tsai		depends on MACH_SUN6I || MACH_SUN8I
946c4718543SChen-Yu Tsai		select DEBUG_UART_8250
947c4718543SChen-Yu Tsai		help
948c4718543SChen-Yu Tsai		  Say Y here if you want kernel low-level debugging support
949c4718543SChen-Yu Tsai		  on Allwinner A31/A23 based platforms on the R_UART.
950c4718543SChen-Yu Tsai
951cce278d2SRussell King	config TEGRA_DEBUG_UART_AUTO_ODMDATA
952cce278d2SRussell King		bool "Kernel low-level debugging messages via Tegra UART via ODMDATA"
95346067803SStephen Warren		depends on ARCH_TEGRA
954cce278d2SRussell King		select DEBUG_TEGRA_UART
955cce278d2SRussell King		help
956cce278d2SRussell King		  Automatically determines which UART to use for low-level
957cce278d2SRussell King		  debug based on the ODMDATA value. This value is part of
958cce278d2SRussell King		  the BCT, and is written to the boot memory device using
959cce278d2SRussell King		  nvflash, or other flashing tool.  When bits 19:18 are 3,
960cce278d2SRussell King		  then bits 17:15 indicate which UART to use; 0/1/2/3/4
961cce278d2SRussell King		  are UART A/B/C/D/E.
962cce278d2SRussell King
963cce278d2SRussell King	config TEGRA_DEBUG_UARTA
964cce278d2SRussell King		bool "Kernel low-level debugging messages via Tegra UART A"
965cce278d2SRussell King		depends on ARCH_TEGRA
966cce278d2SRussell King		select DEBUG_TEGRA_UART
967cce278d2SRussell King		help
968cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
969cce278d2SRussell King		  on Tegra based platforms.
970cce278d2SRussell King
971cce278d2SRussell King	config TEGRA_DEBUG_UARTB
972cce278d2SRussell King		bool "Kernel low-level debugging messages via Tegra UART B"
973cce278d2SRussell King		depends on ARCH_TEGRA
974cce278d2SRussell King		select DEBUG_TEGRA_UART
975cce278d2SRussell King		help
976cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
977cce278d2SRussell King		  on Tegra based platforms.
978cce278d2SRussell King
979cce278d2SRussell King	config TEGRA_DEBUG_UARTC
980cce278d2SRussell King		bool "Kernel low-level debugging messages via Tegra UART C"
981cce278d2SRussell King		depends on ARCH_TEGRA
982cce278d2SRussell King		select DEBUG_TEGRA_UART
983cce278d2SRussell King		help
984cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
985cce278d2SRussell King		  on Tegra based platforms.
986cce278d2SRussell King
987cce278d2SRussell King	config TEGRA_DEBUG_UARTD
988cce278d2SRussell King		bool "Kernel low-level debugging messages via Tegra UART D"
989cce278d2SRussell King		depends on ARCH_TEGRA
990cce278d2SRussell King		select DEBUG_TEGRA_UART
991cce278d2SRussell King		help
992cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
993cce278d2SRussell King		  on Tegra based platforms.
994cce278d2SRussell King
995cce278d2SRussell King	config TEGRA_DEBUG_UARTE
996cce278d2SRussell King		bool "Kernel low-level debugging messages via Tegra UART E"
997cce278d2SRussell King		depends on ARCH_TEGRA
998cce278d2SRussell King		select DEBUG_TEGRA_UART
99946067803SStephen Warren		help
100046067803SStephen Warren		  Say Y here if you want kernel low-level debugging support
100146067803SStephen Warren		  on Tegra based platforms.
100246067803SStephen Warren
10037f46a107SBarry Song	config DEBUG_SIRFPRIMA2_UART1
10047f46a107SBarry Song		bool "Kernel low-level debugging messages via SiRFprimaII UART1"
10057f46a107SBarry Song		depends on ARCH_PRIMA2
100601ea63d9SGuo Zeng		select DEBUG_SIRFSOC_UART
10077f46a107SBarry Song		help
10087f46a107SBarry Song		  Say Y here if you want the debug print routines to direct
10097f46a107SBarry Song		  their output to the uart1 port on SiRFprimaII devices.
10107f46a107SBarry Song
101101ea63d9SGuo Zeng	config DEBUG_SIRFATLAS7_UART0
101201ea63d9SGuo Zeng		bool "Kernel low-level debugging messages via SiRFatlas7 UART0"
101301ea63d9SGuo Zeng		depends on ARCH_ATLAS7
101401ea63d9SGuo Zeng		select DEBUG_SIRFSOC_UART
10157f46a107SBarry Song		help
10167f46a107SBarry Song		  Say Y here if you want the debug print routines to direct
101701ea63d9SGuo Zeng		  their output to the uart0 port on SiRFATLAS7 devices.The uart0
101801ea63d9SGuo Zeng		  is used on SiRFATLAS7 as a extra debug port.sometimes an extra
101901ea63d9SGuo Zeng		  debug port can be very useful.
102001ea63d9SGuo Zeng
102101ea63d9SGuo Zeng	config DEBUG_SIRFATLAS7_UART1
102201ea63d9SGuo Zeng		bool "Kernel low-level debugging messages via SiRFatlas7 UART1"
102301ea63d9SGuo Zeng		depends on ARCH_ATLAS7
102401ea63d9SGuo Zeng		select DEBUG_SIRFSOC_UART
102501ea63d9SGuo Zeng		help
102601ea63d9SGuo Zeng		  Say Y here if you want the debug print routines to direct
102701ea63d9SGuo Zeng		  their output to the uart1 port on SiRFATLAS7 devices.
10287f46a107SBarry Song
1029cce278d2SRussell King	config STIH41X_DEBUG_ASC2
1030cce278d2SRussell King		bool "Use StiH415/416 ASC2 UART for low-level debug"
10315562b800SArnd Bergmann		depends on ARCH_STI
1032cce278d2SRussell King		select DEBUG_STI_UART
10335562b800SArnd Bergmann		help
10345562b800SArnd Bergmann		  Say Y here if you want kernel low-level debugging support
1035cce278d2SRussell King		  on STiH415/416 based platforms like b2000, which has
1036cce278d2SRussell King		  default UART wired up to ASC2.
1037cce278d2SRussell King
1038cce278d2SRussell King		  If unsure, say N.
1039cce278d2SRussell King
1040cce278d2SRussell King	config STIH41X_DEBUG_SBC_ASC1
1041cce278d2SRussell King		bool "Use StiH415/416 SBC ASC1 UART for low-level debug"
1042cce278d2SRussell King		depends on ARCH_STI
1043cce278d2SRussell King		select DEBUG_STI_UART
1044cce278d2SRussell King		help
1045cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
1046cce278d2SRussell King		  on STiH415/416 based platforms like b2020. which has
1047cce278d2SRussell King		  default UART wired up to SBC ASC1.
10485562b800SArnd Bergmann
10495562b800SArnd Bergmann		  If unsure, say N.
10505562b800SArnd Bergmann
1051dd324da7SLinus Walleij	config DEBUG_U300_UART
1052dd324da7SLinus Walleij		bool "Kernel low-level debugging messages via U300 UART0"
1053dd324da7SLinus Walleij		depends on ARCH_U300
10545c972af4SRussell King		select DEBUG_UART_PL01X
1055dd324da7SLinus Walleij		help
1056dd324da7SLinus Walleij		  Say Y here if you want the debug print routines to direct
1057dd324da7SLinus Walleij		  their output to the uart port on U300 devices.
1058dd324da7SLinus Walleij
1059f87b95ddSLinus Walleij	config DEBUG_UX500_UART
1060f87b95ddSLinus Walleij		depends on ARCH_U8500
1061f87b95ddSLinus Walleij		bool "Use Ux500 UART for low-level debug"
1062f87b95ddSLinus Walleij		help
1063f87b95ddSLinus Walleij		  Say Y here if you want kernel low-level debugging support
1064f87b95ddSLinus Walleij		  on Ux500 based platforms.
1065f87b95ddSLinus Walleij
1066d6682085SMatthias Brugger	config DEBUG_MT6589_UART0
1067d6682085SMatthias Brugger		bool "Mediatek mt6589 UART0"
1068d6682085SMatthias Brugger		depends on ARCH_MEDIATEK
1069d6682085SMatthias Brugger		select DEBUG_UART_8250
1070d6682085SMatthias Brugger		help
1071d6682085SMatthias Brugger		  Say Y here if you want kernel low-level debugging support
1072d6682085SMatthias Brugger		  for Mediatek mt6589 based platforms on UART0.
1073d6682085SMatthias Brugger
107465ec48c0SJoe.C	config DEBUG_MT8127_UART0
107560851d7aSMatthias Brugger		bool "Mediatek mt8127/mt6592 UART0"
107665ec48c0SJoe.C		depends on ARCH_MEDIATEK
107765ec48c0SJoe.C		select DEBUG_UART_8250
107865ec48c0SJoe.C		help
107965ec48c0SJoe.C		  Say Y here if you want kernel low-level debugging support
108065ec48c0SJoe.C		  for Mediatek mt8127 based platforms on UART0.
108165ec48c0SJoe.C
108265ec48c0SJoe.C	config DEBUG_MT8135_UART3
108365ec48c0SJoe.C		bool "Mediatek mt8135 UART3"
108465ec48c0SJoe.C		depends on ARCH_MEDIATEK
108565ec48c0SJoe.C		select DEBUG_UART_8250
108665ec48c0SJoe.C		help
108765ec48c0SJoe.C		  Say Y here if you want kernel low-level debugging support
108865ec48c0SJoe.C		  for Mediatek mt8135 based platforms on UART3.
108965ec48c0SJoe.C
10901b820eafSPawel Moll	config DEBUG_VEXPRESS_UART0_DETECT
10911b820eafSPawel Moll		bool "Autodetect UART0 on Versatile Express Cortex-A core tiles"
10921b820eafSPawel Moll		depends on ARCH_VEXPRESS && CPU_CP15_MMU
10931b820eafSPawel Moll		help
10941b820eafSPawel Moll		  This option enables a simple heuristic which tries to determine
10951b820eafSPawel Moll		  the motherboard's memory map variant (original or RS1) and then
10961b820eafSPawel Moll		  choose the relevant UART0 base address.
10971b820eafSPawel Moll
10981b820eafSPawel Moll		  Note that this will only work with standard A-class core tiles,
10991b820eafSPawel Moll		  and may fail with non-standard SMM or custom software models.
11001b820eafSPawel Moll
11011b820eafSPawel Moll	config DEBUG_VEXPRESS_UART0_CA9
11021b820eafSPawel Moll		bool "Use PL011 UART0 at 0x10009000 (V2P-CA9 core tile)"
11031b820eafSPawel Moll		depends on ARCH_VEXPRESS
11045c972af4SRussell King		select DEBUG_UART_PL01X
11051b820eafSPawel Moll		help
11061b820eafSPawel Moll		  This option selects UART0 at 0x10009000. Except for custom models,
11071b820eafSPawel Moll		  this applies only to the V2P-CA9 tile.
11081b820eafSPawel Moll
11091b820eafSPawel Moll	config DEBUG_VEXPRESS_UART0_RS1
11101b820eafSPawel Moll		bool "Use PL011 UART0 at 0x1c090000 (RS1 complaint tiles)"
11111b820eafSPawel Moll		depends on ARCH_VEXPRESS
11125c972af4SRussell King		select DEBUG_UART_PL01X
11131b820eafSPawel Moll		help
11141b820eafSPawel Moll		  This option selects UART0 at 0x1c090000. This applies to most
11151b820eafSPawel Moll		  of the tiles using the RS1 memory map, including all new A-class
11161b820eafSPawel Moll		  core tiles, FPGA-based SMMs and software models.
11171b820eafSPawel Moll
1118ed18bdc8SJonathan Austin	config DEBUG_VEXPRESS_UART0_CRX
1119ed18bdc8SJonathan Austin		bool "Use PL011 UART0 at 0xb0090000 (Cortex-R compliant tiles)"
1120ed18bdc8SJonathan Austin		depends on ARCH_VEXPRESS && !MMU
11215c972af4SRussell King		select DEBUG_UART_PL01X
1122ed18bdc8SJonathan Austin		help
1123ed18bdc8SJonathan Austin		  This option selects UART0 at 0xb0090000. This is appropriate for
1124ed18bdc8SJonathan Austin		  Cortex-R series tiles and SMMs, such as Cortex-R5 and Cortex-R7
1125ed18bdc8SJonathan Austin
1126b61a2722STony Prisk	config DEBUG_VT8500_UART0
1127b61a2722STony Prisk		bool "Use UART0 on VIA/Wondermedia SoCs"
1128b61a2722STony Prisk		depends on ARCH_VT8500
1129b61a2722STony Prisk		help
1130b61a2722STony Prisk		  This option selects UART0 on VIA/Wondermedia System-on-a-chip
1131b61a2722STony Prisk		  devices, including VT8500, WM8505, WM8650 and WM8850.
1132b61a2722STony Prisk
1133e76f4750SRussell King	config DEBUG_ICEDCC
1134e76f4750SRussell King		bool "Kernel low-level debugging via EmbeddedICE DCC channel"
1135e76f4750SRussell King		help
1136e76f4750SRussell King		  Say Y here if you want the debug print routines to direct
1137e76f4750SRussell King		  their output to the EmbeddedICE macrocell's DCC channel using
1138e76f4750SRussell King		  co-processor 14. This is known to work on the ARM9 style ICE
1139e76f4750SRussell King		  channel and on the XScale with the PEEDI.
1140e76f4750SRussell King
1141e76f4750SRussell King		  Note that the system will appear to hang during boot if there
1142e76f4750SRussell King		  is nothing connected to read from the DCC.
1143e76f4750SRussell King
1144b0df8986SRussell King	config DEBUG_SEMIHOSTING
114562194bdaSStephen Boyd		bool "Kernel low-level debug output via semihosting I/O"
1146b0df8986SRussell King		help
1147b0df8986SRussell King		  Semihosting enables code running on an ARM target to use
1148b0df8986SRussell King		  the I/O facilities on a host debugger/emulator through a
114962194bdaSStephen Boyd		  simple SVC call. The host debugger or emulator must have
1150b0df8986SRussell King		  semihosting enabled for the special svc call to be trapped
1151b0df8986SRussell King		  otherwise the kernel will crash.
1152b0df8986SRussell King
1153b0df8986SRussell King		  This is known to work with OpenOCD, as well as
1154b0df8986SRussell King		  ARM's Fast Models, or any other controlling environment
1155b0df8986SRussell King		  that implements semihosting.
1156b0df8986SRussell King
1157b0df8986SRussell King		  For more details about semihosting, please see
1158b0df8986SRussell King		  chapter 8 of DUI0203I_rvct_developer_guide.pdf from ARM Ltd.
1159b0df8986SRussell King
1160f8f1279cSRussell King	config DEBUG_LL_UART_8250
1161f8f1279cSRussell King		bool "Kernel low-level debugging via 8250 UART"
1162f8f1279cSRussell King		help
1163f8f1279cSRussell King		  Say Y here if you wish the debug print routes to direct
1164f8f1279cSRussell King		  their output to an 8250 UART.  You can use this option
1165f8f1279cSRussell King		  to provide the parameters for the 8250 UART rather than
1166f8f1279cSRussell King		  selecting one of the platform specific options above if
1167f8f1279cSRussell King		  you know the parameters for the port.
1168f8f1279cSRussell King
1169f8f1279cSRussell King		  This option is preferred over the platform specific
1170f8f1279cSRussell King		  options; the platform specific options are deprecated
1171f8f1279cSRussell King		  and will be soon removed.
1172f8f1279cSRussell King
1173494e492dSUwe Kleine-König	config DEBUG_LL_UART_EFM32
1174494e492dSUwe Kleine-König		bool "Kernel low-level debugging via efm32 UART"
1175494e492dSUwe Kleine-König		depends on ARCH_EFM32
1176494e492dSUwe Kleine-König		help
1177494e492dSUwe Kleine-König		  Say Y here if you want the debug print routines to direct
1178494e492dSUwe Kleine-König		  their output to an UART or USART port on efm32 based
1179494e492dSUwe Kleine-König		  machines. Use the following addresses for DEBUG_UART_PHYS:
1180494e492dSUwe Kleine-König
1181494e492dSUwe Kleine-König		    0x4000c000 | USART0
1182494e492dSUwe Kleine-König		    0x4000c400 | USART1
1183494e492dSUwe Kleine-König		    0x4000c800 | USART2
1184494e492dSUwe Kleine-König		    0x4000e000 | UART0
1185494e492dSUwe Kleine-König		    0x4000e400 | UART1
1186494e492dSUwe Kleine-König
1187f8f1279cSRussell King	config DEBUG_LL_UART_PL01X
1188f8f1279cSRussell King		bool "Kernel low-level debugging via ARM Ltd PL01x Primecell UART"
1189f8f1279cSRussell King		help
1190f8f1279cSRussell King		  Say Y here if you wish the debug print routes to direct
1191f8f1279cSRussell King		  their output to a PL01x Primecell UART.  You can use
1192f8f1279cSRussell King		  this option to provide the parameters for the UART
1193f8f1279cSRussell King		  rather than selecting one of the platform specific
1194f8f1279cSRussell King		  options above if you know the parameters for the port.
1195f8f1279cSRussell King
1196f8f1279cSRussell King		  This option is preferred over the platform specific
1197f8f1279cSRussell King		  options; the platform specific options are deprecated
1198f8f1279cSRussell King		  and will be soon removed.
1199f8f1279cSRussell King
12001da177e4SLinus Torvaldsendchoice
12011da177e4SLinus Torvalds
120242dfd1e1SNicolas Ferreconfig DEBUG_AT91_UART
120342dfd1e1SNicolas Ferre	bool
120442dfd1e1SNicolas Ferre	depends on ARCH_AT91
120542dfd1e1SNicolas Ferre
1206a2e40710SArnd Bergmannconfig DEBUG_EXYNOS_UART
1207a2e40710SArnd Bergmann	bool
1208a2e40710SArnd Bergmann
1209daf67dfcSHeiko Stuebnerconfig DEBUG_S3C2410_UART
1210daf67dfcSHeiko Stuebner	bool
12111899de28SHeiko Stuebner	select DEBUG_S3C24XX_UART
12121899de28SHeiko Stuebner
12131899de28SHeiko Stuebnerconfig DEBUG_S3C24XX_UART
12141899de28SHeiko Stuebner	bool
1215daf67dfcSHeiko Stuebner
12167bab7d9eSTomasz Figaconfig DEBUG_S5PV210_UART
12177bab7d9eSTomasz Figa	bool
12187bab7d9eSTomasz Figa
1219cce278d2SRussell Kingconfig DEBUG_OMAP2PLUS_UART
1220cce278d2SRussell King	bool
1221cce278d2SRussell King	depends on ARCH_OMAP2PLUS
1222cce278d2SRussell King
1223f8c95fe6SShawn Guoconfig DEBUG_IMX_UART_PORT
1224f8c95fe6SShawn Guo	int "i.MX Debug UART Port Selection" if DEBUG_IMX1_UART || \
1225f8c95fe6SShawn Guo						DEBUG_IMX25_UART || \
1226f8c95fe6SShawn Guo						DEBUG_IMX21_IMX27_UART || \
1227f8c95fe6SShawn Guo						DEBUG_IMX31_UART || \
1228f8c95fe6SShawn Guo						DEBUG_IMX35_UART || \
1229ad364a70SGreg Ungerer						DEBUG_IMX50_UART || \
1230f8c95fe6SShawn Guo						DEBUG_IMX51_UART || \
12310c52db7eSPaul Bolle						DEBUG_IMX53_UART || \
123234e8a16bSShawn Guo						DEBUG_IMX6Q_UART || \
123374368e81SShawn Guo						DEBUG_IMX6SL_UART || \
123474368e81SShawn Guo						DEBUG_IMX6SX_UART
123549c9e60eSShawn Guo	default 1
1236287939a3SShawn Guo	depends on ARCH_MXC
123749c9e60eSShawn Guo	help
123849c9e60eSShawn Guo	  Choose UART port on which kernel low-level debug messages
123949c9e60eSShawn Guo	  should be output.
124049c9e60eSShawn Guo
1241cfdb7d56SStefan Agnerconfig DEBUG_VF_UART_PORT
1242cfdb7d56SStefan Agner	int "Vybrid Debug UART Port Selection" if DEBUG_VF_UART
1243cfdb7d56SStefan Agner	default 1
1244cfdb7d56SStefan Agner	range 0 3
1245cfdb7d56SStefan Agner	depends on SOC_VF610
1246cfdb7d56SStefan Agner	help
1247cfdb7d56SStefan Agner	  Choose UART port on which kernel low-level debug messages
1248cfdb7d56SStefan Agner	  should be output.
1249cfdb7d56SStefan Agner
1250cce278d2SRussell Kingconfig DEBUG_TEGRA_UART
1251cce278d2SRussell King	bool
1252cce278d2SRussell King	depends on ARCH_TEGRA
1253808b7e07STony Lindgren
1254cce278d2SRussell Kingconfig DEBUG_STI_UART
1255cce278d2SRussell King	bool
1256cce278d2SRussell King	depends on ARCH_STI
12575026aecfSSrinivas Kandagatla
125801ea63d9SGuo Zengconfig DEBUG_SIRFSOC_UART
125901ea63d9SGuo Zeng	bool
126001ea63d9SGuo Zeng	depends on ARCH_SIRF
126101ea63d9SGuo Zeng
126291a9fec0SRob Herringconfig DEBUG_LL_INCLUDE
126391a9fec0SRob Herring	string
1264e6131fa3SDmitry Eremin-Solenikov	default "debug/sa1100.S" if DEBUG_SA1100
1265f8f1279cSRussell King	default "debug/8250.S" if DEBUG_LL_UART_8250 || DEBUG_UART_8250
126642dfd1e1SNicolas Ferre	default "debug/at91.S" if DEBUG_AT91_UART
1267d5bd4e8dSOleksij Rempel	default "debug/asm9260.S" if DEBUG_ASM9260_UART
1268dd99eef5SAlexander Shiyan	default "debug/clps711x.S" if DEBUG_CLPS711X_UART1 || DEBUG_CLPS711X_UART2
1269d8a00916SCarlo Caione	default "debug/meson.S" if DEBUG_MESON_UARTAO
1270f8f1279cSRussell King	default "debug/pl01x.S" if DEBUG_LL_UART_PL01X || DEBUG_UART_PL01X
1271a2e40710SArnd Bergmann	default "debug/exynos.S" if DEBUG_EXYNOS_UART
1272494e492dSUwe Kleine-König	default "debug/efm32.S" if DEBUG_LL_UART_EFM32
127391a9fec0SRob Herring	default "debug/icedcc.S" if DEBUG_ICEDCC
12746dde5ac5SShawn Guo	default "debug/imx.S" if DEBUG_IMX1_UART || \
12756dde5ac5SShawn Guo				 DEBUG_IMX25_UART || \
12766dde5ac5SShawn Guo				 DEBUG_IMX21_IMX27_UART || \
12774ad625d4SShawn Guo				 DEBUG_IMX31_UART || \
12784ad625d4SShawn Guo				 DEBUG_IMX35_UART || \
1279ad364a70SGreg Ungerer				 DEBUG_IMX50_UART || \
12806dde5ac5SShawn Guo				 DEBUG_IMX51_UART || \
12817356420cSFabio Estevam				 DEBUG_IMX53_UART ||\
128234e8a16bSShawn Guo				 DEBUG_IMX6Q_UART || \
128374368e81SShawn Guo				 DEBUG_IMX6SL_UART || \
128474368e81SShawn Guo				 DEBUG_IMX6SX_UART
1285abbfb21eSDaniel Thompson	default "debug/ks8695.S" if DEBUG_KS8695_UART
1286c0c89fafSStephen Boyd	default "debug/msm.S" if DEBUG_QCOM_UARTDM
12874d31e664SDaniel Thompson	default "debug/netx.S" if DEBUG_NETX_UART
1288808b7e07STony Lindgren	default "debug/omap2plus.S" if DEBUG_OMAP2PLUS_UART
12897a2071c5SGeert Uytterhoeven	default "debug/renesas-scif.S" if DEBUG_R7S72100_SCIF2
12907a2071c5SGeert Uytterhoeven	default "debug/renesas-scif.S" if DEBUG_RCAR_GEN1_SCIF0
12917a2071c5SGeert Uytterhoeven	default "debug/renesas-scif.S" if DEBUG_RCAR_GEN1_SCIF2
12927a2071c5SGeert Uytterhoeven	default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF0
12937a2071c5SGeert Uytterhoeven	default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF2
12947a2071c5SGeert Uytterhoeven	default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA0
12957a2071c5SGeert Uytterhoeven	default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA1
12967a2071c5SGeert Uytterhoeven	default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA4
12972cd62bd4SHeiko Stuebner	default "debug/s3c24xx.S" if DEBUG_S3C24XX_UART
12987bab7d9eSTomasz Figa	default "debug/s5pv210.S" if DEBUG_S5PV210_UART
129901ea63d9SGuo Zeng	default "debug/sirf.S" if DEBUG_SIRFSOC_UART
13005026aecfSSrinivas Kandagatla	default "debug/sti.S" if DEBUG_STI_UART
1301150a8dcfSLinus Torvalds	default "debug/tegra.S" if DEBUG_TEGRA_UART
1302150a8dcfSLinus Torvalds	default "debug/ux500.S" if DEBUG_UX500_UART
13034e218b99SRussell King	default "debug/vexpress.S" if DEBUG_VEXPRESS_UART0_DETECT
1304c7c3eac6SShawn Guo	default "debug/vf.S" if DEBUG_VF_UART
1305b61a2722STony Prisk	default "debug/vt8500.S" if DEBUG_VT8500_UART0
1306385f02b1SJosh Cartwright	default "debug/zynq.S" if DEBUG_ZYNQ_UART0 || DEBUG_ZYNQ_UART1
1307b51312beSFlorian Fainelli	default "debug/bcm63xx.S" if DEBUG_UART_BCM63XX
1308e23814daSBaruch Siach	default "debug/digicolor.S" if DEBUG_DIGICOLOR_UA0
130991a9fec0SRob Herring	default "mach/debug-macro.S"
131091a9fec0SRob Herring
1311f8f1279cSRussell King# Compatibility options for PL01x
13125c972af4SRussell Kingconfig DEBUG_UART_PL01X
1313a61cbf51SDaniel Thompson	bool
13145c972af4SRussell King
1315f8f1279cSRussell King# Compatibility options for 8250
13167610b607SRussell Kingconfig DEBUG_UART_8250
13174a003647SRussell King	def_bool ARCH_DOVE || ARCH_EBSA110 || \
13184a003647SRussell King		(FOOTBRIDGE && !DEBUG_DC21285_PORT) || \
13194a003647SRussell King		ARCH_GEMINI || ARCH_IOP13XX || ARCH_IOP32X || \
1320ba364fc7SAndrew Lunn		ARCH_IOP33X || ARCH_IXP4XX || \
13214a003647SRussell King		ARCH_LPC32XX || ARCH_MV78XX0 || ARCH_ORION5X || ARCH_RPC
13224a003647SRussell King
1323b51312beSFlorian Fainelli# Compatibility options for BCM63xx
1324b51312beSFlorian Fainelliconfig DEBUG_UART_BCM63XX
1325b51312beSFlorian Fainelli	def_bool ARCH_BCM_63XX
1326b51312beSFlorian Fainelli
1327c3faa9b7SRussell Kingconfig DEBUG_UART_PHYS
1328c3faa9b7SRussell King	hex "Physical base address of debug UART"
13294d31e664SDaniel Thompson	default 0x00100a00 if DEBUG_NETX_UART
133097bd1a48SRussell King	default 0x01c20000 if DEBUG_DAVINCI_DMx_UART0
1331c3faa9b7SRussell King	default 0x01c28000 if DEBUG_SUNXI_UART0
1332c3faa9b7SRussell King	default 0x01c28400 if DEBUG_SUNXI_UART1
133397bd1a48SRussell King	default 0x01d0c000 if DEBUG_DAVINCI_DA8XX_UART1
133497bd1a48SRussell King	default 0x01d0d000 if DEBUG_DAVINCI_DA8XX_UART2
1335c4718543SChen-Yu Tsai	default 0x01f02800 if DEBUG_SUNXI_R_UART
1336f2acf003SRussell King	default 0x02530c00 if DEBUG_KEYSTONE_UART0
1337f2acf003SRussell King	default 0x02531000 if DEBUG_KEYSTONE_UART1
1338c3faa9b7SRussell King	default 0x03010fe0 if ARCH_RPC
1339d4da889aSChen-Yu Tsai	default 0x07000000 if DEBUG_SUN9I_UART0
1340b125170aSKrzysztof Hałasa	default 0x10009000 if DEBUG_REALVIEW_STD_PORT || \
13415c972af4SRussell King				DEBUG_VEXPRESS_UART0_CA9
13425c972af4SRussell King	default 0x1010c000 if DEBUG_REALVIEW_PB1176_PORT
1343c3faa9b7SRussell King	default 0x10124000 if DEBUG_RK3X_UART0
1344c3faa9b7SRussell King	default 0x10126000 if DEBUG_RK3X_UART1
13455c972af4SRussell King	default 0x101f1000 if ARCH_VERSATILE
13465c972af4SRussell King	default 0x101fb000 if DEBUG_NOMADIK_UART
134765ec48c0SJoe.C	default 0x11002000 if DEBUG_MT8127_UART0
1348d6682085SMatthias Brugger	default 0x11006000 if DEBUG_MT6589_UART0
134965ec48c0SJoe.C	default 0x11009000 if DEBUG_MT8135_UART3
13505c972af4SRussell King	default 0x16000000 if ARCH_INTEGRATOR
135106580275SHauke Mehrtens	default 0x18000300 if DEBUG_BCM_5301X
135201ea63d9SGuo Zeng	default 0x18010000 if DEBUG_SIRFATLAS7_UART0
135301ea63d9SGuo Zeng	default 0x18020000 if DEBUG_SIRFATLAS7_UART1
13545c972af4SRussell King	default 0x1c090000 if DEBUG_VEXPRESS_UART0_RS1
135527dafaa8SWang Long	default 0x20001000 if DEBUG_HIP01_UART
1356c3faa9b7SRussell King	default 0x20060000 if DEBUG_RK29_UART0
1357c3faa9b7SRussell King	default 0x20064000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
1358c3faa9b7SRussell King	default 0x20068000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
13595c972af4SRussell King	default 0x20201000 if DEBUG_BCM2835
1360753d1243SChristian Daudt	default 0x3e000000 if DEBUG_BCM_KONA_UART
1361494e492dSUwe Kleine-König	default 0x4000e400 if DEBUG_LL_UART_EFM32
1362c3faa9b7SRussell King	default 0x40090000 if ARCH_LPC32XX
1363c3faa9b7SRussell King	default 0x40100000 if DEBUG_PXA_UART1
1364c3faa9b7SRussell King	default 0x42000000 if ARCH_GEMINI
13651899de28SHeiko Stuebner	default 0x50000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \
13661899de28SHeiko Stuebner				DEBUG_S3C2410_UART0)
13671899de28SHeiko Stuebner	default 0x50004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \
13681899de28SHeiko Stuebner				DEBUG_S3C2410_UART1)
13691899de28SHeiko Stuebner	default 0x50008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \
13701899de28SHeiko Stuebner				DEBUG_S3C2410_UART2)
1371c3ca2130SKrzysztof Hałasa	default 0x78000000 if DEBUG_CNS3XXX
1372c3faa9b7SRussell King	default 0x7c0003f8 if FOOTBRIDGE
1373d5bd4e8dSOleksij Rempel	default 0x80010000 if DEBUG_ASM9260_UART
13745c972af4SRussell King	default 0x80070000 if DEBUG_IMX23_UART
13755c972af4SRussell King	default 0x80074000 if DEBUG_IMX28_UART
1376c39e1ef7SAlexander Shiyan	default 0x80230000 if DEBUG_PICOXCELL_UART
13775c972af4SRussell King	default 0x808c0000 if ARCH_EP93XX
13785c972af4SRussell King	default 0x90020000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART
137901ea63d9SGuo Zeng	default 0xb0060000 if DEBUG_SIRFPRIMA2_UART1
13805c972af4SRussell King	default 0xb0090000 if DEBUG_VEXPRESS_UART0_CRX
13815c972af4SRussell King	default 0xc0013000 if DEBUG_U300_UART
1382c3faa9b7SRussell King	default 0xc8000000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
1383c3faa9b7SRussell King	default 0xc8000003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
13840dc0e475SRussell King	default 0xd0000000 if ARCH_SPEAR3XX || ARCH_SPEAR6XX
1385d91125ddSMaxime Ripard	default 0xd0012000 if DEBUG_MVEBU_UART0
1386d8a00916SCarlo Caione	default 0xc81004c0 if DEBUG_MESON_UARTAO
1387c3faa9b7SRussell King	default 0xd4017000 if DEBUG_MMP_UART2
1388c3faa9b7SRussell King	default 0xd4018000 if DEBUG_MMP_UART3
13890dc0e475SRussell King	default 0xe0000000 if ARCH_SPEAR13XX
1390c9a1df48SHaojian Zhuang	default 0xe4007000 if DEBUG_HIP04_UART
13917a2071c5SGeert Uytterhoeven	default 0xe6c40000 if DEBUG_RMOBILE_SCIFA0
13927a2071c5SGeert Uytterhoeven	default 0xe6c50000 if DEBUG_RMOBILE_SCIFA1
13937a2071c5SGeert Uytterhoeven	default 0xe6c80000 if DEBUG_RMOBILE_SCIFA4
13947a2071c5SGeert Uytterhoeven	default 0xe6e58000 if DEBUG_RCAR_GEN2_SCIF2
13957a2071c5SGeert Uytterhoeven	default 0xe6e60000 if DEBUG_RCAR_GEN2_SCIF0
13967a2071c5SGeert Uytterhoeven	default 0xe8008000 if DEBUG_R7S72100_SCIF2
1397c3faa9b7SRussell King	default 0xf0000be0 if ARCH_EBSA110
139881b43a6eSMarc Carino	default 0xf040ab00 if DEBUG_BRCMSTB_UART
1399d91125ddSMaxime Ripard	default 0xf1012000 if DEBUG_MVEBU_UART0_ALTERNATE
1400bd920490SMaxime Ripard	default 0xf1012100 if DEBUG_MVEBU_UART1_ALTERNATE
1401ba364fc7SAndrew Lunn	default 0xf1012000 if ARCH_DOVE || ARCH_MV78XX0 || \
1402c3faa9b7SRussell King				ARCH_ORION5X
1403caad0b41SSebastian Hesselbarth	default 0xf7fc9000 if DEBUG_BERLIN_UART
140412aae309SHaifeng Yan	default 0xf8b00000 if DEBUG_HIX5HD2_UART
14057098cff2SIvan T. Ivanov	default 0xf991e000 if DEBUG_QCOM_UARTDM
14068d258bebSHaojian Zhuang	default 0xfcb00000 if DEBUG_HI3620_UART
14073c215e64STsahee Zidenberg	default 0xfd883000 if DEBUG_ALPINE_UART0
1408c3faa9b7SRussell King	default 0xfe800000 if ARCH_IOP32X
1409efd02ee9SHeiko Stuebner	default 0xff690000 if DEBUG_RK32_UART2
14100b4cccbeSRussell King	default 0xffc02000 if DEBUG_SOCFPGA_UART
1411c3faa9b7SRussell King	default 0xffd82340 if ARCH_IOP13XX
14127a2071c5SGeert Uytterhoeven	default 0xffe40000 if DEBUG_RCAR_GEN1_SCIF0
14137a2071c5SGeert Uytterhoeven	default 0xffe42000 if DEBUG_RCAR_GEN1_SCIF2
14145c972af4SRussell King	default 0xfff36000 if DEBUG_HIGHBANK_UART
1415c26b9993SDaniel Thompson	default 0xfffb0000 if DEBUG_OMAP1UART1 || DEBUG_OMAP7XXUART1
1416c26b9993SDaniel Thompson	default 0xfffb0800 if DEBUG_OMAP1UART2 || DEBUG_OMAP7XXUART2
1417c26b9993SDaniel Thompson	default 0xfffb9800 if DEBUG_OMAP1UART3 || DEBUG_OMAP7XXUART3
1418b51312beSFlorian Fainelli	default 0xfffe8600 if DEBUG_UART_BCM63XX
1419c3faa9b7SRussell King	default 0xfffff700 if ARCH_IOP33X
1420d02fde7fSDaniel Thompson	depends on ARCH_EP93XX || \
1421d02fde7fSDaniel Thompson	        DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
1422494e492dSUwe Kleine-König		DEBUG_LL_UART_EFM32 || \
1423d8a00916SCarlo Caione		DEBUG_UART_8250 || DEBUG_UART_PL01X || DEBUG_MESON_UARTAO || \
1424c0c89fafSStephen Boyd		DEBUG_NETX_UART || \
14254d31e664SDaniel Thompson		DEBUG_QCOM_UARTDM || DEBUG_R7S72100_SCIF2 || \
14267a2071c5SGeert Uytterhoeven		DEBUG_RCAR_GEN1_SCIF0 || DEBUG_RCAR_GEN1_SCIF2 || \
14277a2071c5SGeert Uytterhoeven		DEBUG_RCAR_GEN2_SCIF0 || DEBUG_RCAR_GEN2_SCIF2 || \
14287a2071c5SGeert Uytterhoeven		DEBUG_RMOBILE_SCIFA0 || DEBUG_RMOBILE_SCIFA1 || \
14297a2071c5SGeert Uytterhoeven		DEBUG_RMOBILE_SCIFA4 || DEBUG_S3C24XX_UART || \
143001ea63d9SGuo Zeng		DEBUG_UART_BCM63XX || DEBUG_ASM9260_UART || \
1431e23814daSBaruch Siach		DEBUG_SIRFSOC_UART || DEBUG_DIGICOLOR_UA0
1432c3faa9b7SRussell King
1433c3faa9b7SRussell Kingconfig DEBUG_UART_VIRT
1434c3faa9b7SRussell King	hex "Virtual base address of debug UART"
14354d31e664SDaniel Thompson	default 0xe0000a00 if DEBUG_NETX_UART
1436c3faa9b7SRussell King	default 0xe0010fe0 if ARCH_RPC
1437c3faa9b7SRussell King	default 0xf0000be0 if ARCH_EBSA110
1438d5bd4e8dSOleksij Rempel	default 0xf0010000 if DEBUG_ASM9260_UART
14395c972af4SRussell King	default 0xf01fb000 if DEBUG_NOMADIK_UART
14405c972af4SRussell King	default 0xf0201000 if DEBUG_BCM2835
144106580275SHauke Mehrtens	default 0xf1000300 if DEBUG_BCM_5301X
144265ec48c0SJoe.C	default 0xf1002000 if DEBUG_MT8127_UART0
1443d6682085SMatthias Brugger	default 0xf1006000 if DEBUG_MT6589_UART0
144465ec48c0SJoe.C	default 0xf1009000 if DEBUG_MT8135_UART3
14455c972af4SRussell King	default 0xf11f1000 if ARCH_VERSATILE
14465c972af4SRussell King	default 0xf1600000 if ARCH_INTEGRATOR
1447c3faa9b7SRussell King	default 0xf1c28000 if DEBUG_SUNXI_UART0
1448c3faa9b7SRussell King	default 0xf1c28400 if DEBUG_SUNXI_UART1
1449c4718543SChen-Yu Tsai	default 0xf1f02800 if DEBUG_SUNXI_R_UART
1450cde7fc87SRobert Jarzmik	default 0xf6200000 if DEBUG_PXA_UART1
1451c3faa9b7SRussell King	default 0xf4090000 if ARCH_LPC32XX
1452c3faa9b7SRussell King	default 0xf4200000 if ARCH_GEMINI
1453d4da889aSChen-Yu Tsai	default 0xf7000000 if DEBUG_SUN9I_UART0
14541899de28SHeiko Stuebner	default 0xf7000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \
14551899de28SHeiko Stuebner				DEBUG_S3C2410_UART0)
14561899de28SHeiko Stuebner	default 0xf7004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \
14571899de28SHeiko Stuebner				DEBUG_S3C2410_UART1)
14581899de28SHeiko Stuebner	default 0xf7008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \
14591899de28SHeiko Stuebner				DEBUG_S3C2410_UART2)
1460caad0b41SSebastian Hesselbarth	default 0xf7fc9000 if DEBUG_BERLIN_UART
1461c9a1df48SHaojian Zhuang	default 0xf8007000 if DEBUG_HIP04_UART
14625c972af4SRussell King	default 0xf8009000 if DEBUG_VEXPRESS_UART0_CA9
14635c972af4SRussell King	default 0xf8090000 if DEBUG_VEXPRESS_UART0_RS1
14647098cff2SIvan T. Ivanov	default 0xfa71e000 if DEBUG_QCOM_UARTDM
1465b125170aSKrzysztof Hałasa	default 0xfb002000 if DEBUG_CNS3XXX
14665c972af4SRussell King	default 0xfb009000 if DEBUG_REALVIEW_STD_PORT
14675c972af4SRussell King	default 0xfb10c000 if DEBUG_REALVIEW_PB1176_PORT
146881b43a6eSMarc Carino	default 0xfc40ab00 if DEBUG_BRCMSTB_UART
1469b51312beSFlorian Fainelli	default 0xfcfe8600 if DEBUG_UART_BCM63XX
14700dc0e475SRussell King	default 0xfd000000 if ARCH_SPEAR3XX || ARCH_SPEAR6XX
14710dc0e475SRussell King	default 0xfd000000 if ARCH_SPEAR13XX
1472c3faa9b7SRussell King	default 0xfd012000 if ARCH_MV78XX0
14733c215e64STsahee Zidenberg	default 0xfd883000 if DEBUG_ALPINE_UART0
1474c3faa9b7SRussell King	default 0xfde12000 if ARCH_DOVE
1475c3faa9b7SRussell King	default 0xfe012000 if ARCH_ORION5X
1476d8a00916SCarlo Caione	default 0xf31004c0 if DEBUG_MESON_UARTAO
1477c3faa9b7SRussell King	default 0xfe017000 if DEBUG_MMP_UART2
1478c3faa9b7SRussell King	default 0xfe018000 if DEBUG_MMP_UART3
14795c972af4SRussell King	default 0xfe100000 if DEBUG_IMX23_UART || DEBUG_IMX28_UART
14800b4cccbeSRussell King	default 0xfe230000 if DEBUG_PICOXCELL_UART
1481753d1243SChristian Daudt	default 0xfe300000 if DEBUG_BCM_KONA_UART
1482c3faa9b7SRussell King	default 0xfe800000 if ARCH_IOP32X
148312aae309SHaifeng Yan	default 0xfeb00000 if DEBUG_HI3620_UART || DEBUG_HIX5HD2_UART
1484c3faa9b7SRussell King	default 0xfeb24000 if DEBUG_RK3X_UART0
1485c3faa9b7SRussell King	default 0xfeb26000 if DEBUG_RK3X_UART1
1486f2acf003SRussell King	default 0xfeb30c00 if DEBUG_KEYSTONE_UART0
1487f2acf003SRussell King	default 0xfeb31000 if DEBUG_KEYSTONE_UART1
14880b4cccbeSRussell King	default 0xfec02000 if DEBUG_SOCFPGA_UART
1489d91125ddSMaxime Ripard	default 0xfec12000 if DEBUG_MVEBU_UART0 || DEBUG_MVEBU_UART0_ALTERNATE
1490bd920490SMaxime Ripard	default 0xfec12100 if DEBUG_MVEBU_UART1_ALTERNATE
149101ea63d9SGuo Zeng	default 0xfec10000 if DEBUG_SIRFATLAS7_UART0
149297bd1a48SRussell King	default 0xfec20000 if DEBUG_DAVINCI_DMx_UART0
149301ea63d9SGuo Zeng	default 0xfec20000 if DEBUG_SIRFATLAS7_UART1
149401ea63d9SGuo Zeng	default 0xfec60000 if DEBUG_SIRFPRIMA2_UART1
1495efd02ee9SHeiko Stuebner	default 0xfec90000 if DEBUG_RK32_UART2
149697bd1a48SRussell King	default 0xfed0c000 if DEBUG_DAVINCI_DA8XX_UART1
149797bd1a48SRussell King	default 0xfed0d000 if DEBUG_DAVINCI_DA8XX_UART2
1498c39e1ef7SAlexander Shiyan	default 0xfed60000 if DEBUG_RK29_UART0
1499c39e1ef7SAlexander Shiyan	default 0xfed64000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
1500c39e1ef7SAlexander Shiyan	default 0xfed68000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
15015c972af4SRussell King	default 0xfedc0000 if ARCH_EP93XX
1502c3faa9b7SRussell King	default 0xfee003f8 if FOOTBRIDGE
15035c972af4SRussell King	default 0xfee20000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART
1504c3faa9b7SRussell King	default 0xfee82340 if ARCH_IOP13XX
1505c3faa9b7SRussell King	default 0xfef00000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
1506c3faa9b7SRussell King	default 0xfef00003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
1507c39e1ef7SAlexander Shiyan	default 0xfef36000 if DEBUG_HIGHBANK_UART
1508c26b9993SDaniel Thompson	default 0xfefb0000 if DEBUG_OMAP1UART1 || DEBUG_OMAP7XXUART1
1509c26b9993SDaniel Thompson	default 0xfefb0800 if DEBUG_OMAP1UART2 || DEBUG_OMAP7XXUART2
1510c26b9993SDaniel Thompson	default 0xfefb9800 if DEBUG_OMAP1UART3 || DEBUG_OMAP7XXUART3
1511c3faa9b7SRussell King	default 0xfefff700 if ARCH_IOP33X
15125c972af4SRussell King	default 0xff003000 if DEBUG_U300_UART
151327dafaa8SWang Long	default 0xffd01000 if DEBUG_HIP01_UART
15145c972af4SRussell King	default DEBUG_UART_PHYS if !MMU
1515f8f1279cSRussell King	depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
1516d8a00916SCarlo Caione		DEBUG_UART_8250 || DEBUG_UART_PL01X || DEBUG_MESON_UARTAO || \
1517c0c89fafSStephen Boyd		DEBUG_NETX_UART || \
15184d31e664SDaniel Thompson		DEBUG_QCOM_UARTDM || DEBUG_S3C24XX_UART || \
1519e23814daSBaruch Siach		DEBUG_UART_BCM63XX || DEBUG_ASM9260_UART || \
1520e23814daSBaruch Siach		DEBUG_SIRFSOC_UART || DEBUG_DIGICOLOR_UA0
1521c3faa9b7SRussell King
15224a003647SRussell Kingconfig DEBUG_UART_8250_SHIFT
15234a003647SRussell King	int "Register offset shift for the 8250 debug UART"
1524f8f1279cSRussell King	depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
1525c26b9993SDaniel Thompson	default 0 if FOOTBRIDGE || ARCH_IOP32X || DEBUG_BCM_5301X || \
1526c26b9993SDaniel Thompson		DEBUG_OMAP7XXUART1 || DEBUG_OMAP7XXUART2 || DEBUG_OMAP7XXUART3
15274a003647SRussell King	default 2
15287610b607SRussell King
15290b4cccbeSRussell Kingconfig DEBUG_UART_8250_WORD
15300b4cccbeSRussell King	bool "Use 32-bit accesses for 8250 UART"
1531f8f1279cSRussell King	depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
15320b4cccbeSRussell King	depends on DEBUG_UART_8250_SHIFT >= 2
1533f2acf003SRussell King	default y if DEBUG_PICOXCELL_UART || DEBUG_SOCFPGA_UART || \
15343c215e64STsahee Zidenberg		ARCH_KEYSTONE || DEBUG_ALPINE_UART0 || \
153597bd1a48SRussell King		DEBUG_DAVINCI_DMx_UART0 || DEBUG_DAVINCI_DA8XX_UART1 || \
15369d6eccb9SArnd Bergmann		DEBUG_DAVINCI_DA8XX_UART2 || \
153781b43a6eSMarc Carino		DEBUG_BCM_KONA_UART || DEBUG_RK32_UART2 || \
153881b43a6eSMarc Carino		DEBUG_BRCMSTB_UART
15390b4cccbeSRussell King
15407610b607SRussell Kingconfig DEBUG_UART_8250_FLOW_CONTROL
15417610b607SRussell King	bool "Enable flow control for 8250 UART"
1542f8f1279cSRussell King	depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
15437610b607SRussell King	default y if ARCH_EBSA110 || FOOTBRIDGE || ARCH_GEMINI || ARCH_RPC
15447610b607SRussell King
15453b4af9bcSShawn Guoconfig DEBUG_UNCOMPRESS
15463b4af9bcSShawn Guo	bool
1547c0c89fafSStephen Boyd	depends on ARCH_MULTIPLATFORM || PLAT_SAMSUNG
1548b6992fa9SRussell King	default y if DEBUG_LL && !DEBUG_OMAP2PLUS_UART && \
1549ae3c99a2SStephen Warren		     (!DEBUG_TEGRA_UART || !ZBOOT_ROM)
1550b6992fa9SRussell King	help
1551b6992fa9SRussell King	  This option influences the normal decompressor output for
1552b6992fa9SRussell King	  multiplatform kernels.  Normally, multiplatform kernels disable
1553b6992fa9SRussell King	  decompressor output because it is not possible to know where to
1554b6992fa9SRussell King	  send the decompressor output.
1555b6992fa9SRussell King
1556b6992fa9SRussell King	  When this option is set, the selected DEBUG_LL output method
1557b6992fa9SRussell King	  will be re-used for normal decompressor output on multiplatform
1558b6992fa9SRussell King	  kernels.
1559b6992fa9SRussell King
15603b4af9bcSShawn Guo
1561615967b0SShawn Guoconfig UNCOMPRESS_INCLUDE
1562615967b0SShawn Guo	string
1563ffd80eccSSachin Kamat	default "debug/uncompress.h" if ARCH_MULTIPLATFORM || ARCH_MSM || \
1564bb04883bSMagnus Damm					PLAT_SAMSUNG || ARCH_EFM32 || \
1565bb04883bSMagnus Damm					ARCH_SHMOBILE_LEGACY
1566615967b0SShawn Guo	default "mach/uncompress.h"
1567615967b0SShawn Guo
15681da177e4SLinus Torvaldsconfig EARLY_PRINTK
15691da177e4SLinus Torvalds	bool "Early printk"
15701da177e4SLinus Torvalds	depends on DEBUG_LL
15711da177e4SLinus Torvalds	help
15721da177e4SLinus Torvalds	  Say Y here if you want to have an early console using the
15731da177e4SLinus Torvalds	  kernel low-level debugging functions. Add earlyprintk to your
15741da177e4SLinus Torvalds	  kernel parameters to enable this console.
15751da177e4SLinus Torvalds
15761da177e4SLinus Torvaldsconfig ARM_KPROBES_TEST
15771da177e4SLinus Torvalds	tristate "Kprobes test module"
15781da177e4SLinus Torvalds	depends on KPROBES && MODULES
15791da177e4SLinus Torvalds	help
15801da177e4SLinus Torvalds	  Perform tests of kprobes API and instruction set simulation.
15811da177e4SLinus Torvalds
1582575320d6SWill Deaconconfig PID_IN_CONTEXTIDR
1583575320d6SWill Deacon	bool "Write the current PID to the CONTEXTIDR register"
1584575320d6SWill Deacon	depends on CPU_COPY_V6
1585575320d6SWill Deacon	help
1586575320d6SWill Deacon	  Enabling this option causes the kernel to write the current PID to
1587575320d6SWill Deacon	  the PROCID field of the CONTEXTIDR register, at the expense of some
1588575320d6SWill Deacon	  additional instructions during context switch. Say Y here only if you
1589575320d6SWill Deacon	  are planning to use hardware trace tools with this kernel.
1590575320d6SWill Deacon
1591dca9aa92SLaura Abbottconfig DEBUG_SET_MODULE_RONX
1592dca9aa92SLaura Abbott	bool "Set loadable kernel module data as NX and text as RO"
1593*e6ae32c3SRussell King	depends on MODULES && MMU
1594dca9aa92SLaura Abbott	---help---
1595dca9aa92SLaura Abbott	  This option helps catch unintended modifications to loadable
1596dca9aa92SLaura Abbott	  kernel module's text and read-only data. It also prevents execution
1597dca9aa92SLaura Abbott	  of module data. Such protection may interfere with run-time code
1598dca9aa92SLaura Abbott	  patching and dynamic kernel tracing - and they might also protect
1599dca9aa92SLaura Abbott	  against certain classes of kernel exploits.
1600dca9aa92SLaura Abbott	  If in doubt, say "N".
1601dca9aa92SLaura Abbott
160201081f5aSMathieu Poiriersource "drivers/hwtracing/coresight/Kconfig"
1603bc4bf7feSPratik Patel
16041da177e4SLinus Torvaldsendmenu
1605