xref: /linux/arch/arm/Kconfig.debug (revision ad43fc9aa24e9fc9ad780faad62fd78a09da839c)
1b2441318SGreg Kroah-Hartman# SPDX-License-Identifier: GPL-2.0
21da177e4SLinus Torvaldsmenu "Kernel hacking"
31da177e4SLinus Torvalds
41da177e4SLinus Torvaldssource "lib/Kconfig.debug"
51da177e4SLinus Torvalds
64fb69cc4SJinbum Parkconfig ARM_PTDUMP_CORE
74fb69cc4SJinbum Park	def_bool n
84fb69cc4SJinbum Park
94fb69cc4SJinbum Parkconfig ARM_PTDUMP_DEBUGFS
101fd15b87SRussell King	bool "Export kernel pagetable layout to userspace via debugfs"
111fd15b87SRussell King	depends on DEBUG_KERNEL
1265ba508dSArnd Bergmann	depends on MMU
134fb69cc4SJinbum Park	select ARM_PTDUMP_CORE
141fd15b87SRussell King	select DEBUG_FS
151fd15b87SRussell King	---help---
161fd15b87SRussell King	  Say Y here if you want to show the kernel pagetable layout in a
171fd15b87SRussell King	  debugfs file. This information is only useful for kernel developers
181fd15b87SRussell King	  who are working in architecture specific areas of the kernel.
191fd15b87SRussell King	  It is probably not a good idea to enable this feature in a production
201fd15b87SRussell King	  kernel.
211fd15b87SRussell King	  If in doubt, say "N"
221fd15b87SRussell King
23a8e53c15SJinbum Parkconfig DEBUG_WX
24a8e53c15SJinbum Park	bool "Warn on W+X mappings at boot"
25*ad43fc9aSArnd Bergmann	depends on MMU
26a8e53c15SJinbum Park	select ARM_PTDUMP_CORE
27a8e53c15SJinbum Park	---help---
28a8e53c15SJinbum Park		Generate a warning if any W+X mappings are found at boot.
29a8e53c15SJinbum Park
30a8e53c15SJinbum Park		This is useful for discovering cases where the kernel is leaving
31a8e53c15SJinbum Park		W+X mappings after applying NX, as such mappings are a security risk.
32a8e53c15SJinbum Park
33a8e53c15SJinbum Park		Look for a message in dmesg output like this:
34a8e53c15SJinbum Park
35a8e53c15SJinbum Park			arm/mm: Checked W+X mappings: passed, no W+X pages found.
36a8e53c15SJinbum Park
37a8e53c15SJinbum Park		or like this, if the check failed:
38a8e53c15SJinbum Park
39a8e53c15SJinbum Park			arm/mm: Checked W+X mappings: FAILED, <N> W+X pages found.
40a8e53c15SJinbum Park
41a8e53c15SJinbum Park		Note that even if the check fails, your kernel is possibly
42a8e53c15SJinbum Park		still fine, as W+X mappings are not a security hole in
43a8e53c15SJinbum Park		themselves, what they do is that they make the exploitation
44a8e53c15SJinbum Park		of other unfixed kernel bugs easier.
45a8e53c15SJinbum Park
46a8e53c15SJinbum Park		There is no runtime or memory usage effect of this option
47a8e53c15SJinbum Park		once the kernel has booted up - it's a one time check.
48a8e53c15SJinbum Park
49a8e53c15SJinbum Park		If in doubt, say "Y".
50a8e53c15SJinbum Park
51adf8b37bSCatalin Marinas# RMK wants arm kernels compiled with frame pointers or stack unwinding.
521da177e4SLinus Torvalds# If you know what you are doing and are willing to live without stack
531da177e4SLinus Torvalds# traces, you can get a slightly smaller kernel by setting this option to
541da177e4SLinus Torvalds# n, but then RMK will have to kill you ;).
551da177e4SLinus Torvaldsconfig FRAME_POINTER
561da177e4SLinus Torvalds	bool
5716c79651SCatalin Marinas	depends on !THUMB2_KERNEL
580e341af8SRabin Vincent	default y if !ARM_UNWIND || FUNCTION_GRAPH_TRACER
591da177e4SLinus Torvalds	help
601da177e4SLinus Torvalds	  If you say N here, the resulting kernel will be slightly smaller and
61adf8b37bSCatalin Marinas	  faster. However, if neither FRAME_POINTER nor ARM_UNWIND are enabled,
62adf8b37bSCatalin Marinas	  when a problem occurs with the kernel, the information that is
63adf8b37bSCatalin Marinas	  reported is severely limited.
64adf8b37bSCatalin Marinas
65adf8b37bSCatalin Marinasconfig ARM_UNWIND
664a50bfe3SRussell King	bool "Enable stack unwinding support (EXPERIMENTAL)"
67d6f94fa0SKees Cook	depends on AEABI
68adf8b37bSCatalin Marinas	default y
69adf8b37bSCatalin Marinas	help
70adf8b37bSCatalin Marinas	  This option enables stack unwinding support in the kernel
71adf8b37bSCatalin Marinas	  using the information automatically generated by the
72adf8b37bSCatalin Marinas	  compiler. The resulting kernel image is slightly bigger but
73adf8b37bSCatalin Marinas	  the performance is not affected. Currently, this feature
74adf8b37bSCatalin Marinas	  only works with EABI compilers. If unsure say Y.
751da177e4SLinus Torvalds
7609bfafacSRabin Vincentconfig OLD_MCOUNT
7709bfafacSRabin Vincent	bool
7809bfafacSRabin Vincent	depends on FUNCTION_TRACER && FRAME_POINTER
7909bfafacSRabin Vincent	default y
8009bfafacSRabin Vincent
811da177e4SLinus Torvaldsconfig DEBUG_USER
821da177e4SLinus Torvalds	bool "Verbose user fault messages"
831da177e4SLinus Torvalds	help
841da177e4SLinus Torvalds	  When a user program crashes due to an exception, the kernel can
851da177e4SLinus Torvalds	  print a brief message explaining what the problem was. This is
861da177e4SLinus Torvalds	  sometimes helpful for debugging but serves no purpose on a
871da177e4SLinus Torvalds	  production system. Most people should say N here.
881da177e4SLinus Torvalds
891da177e4SLinus Torvalds	  In addition, you need to pass user_debug=N on the kernel command
901da177e4SLinus Torvalds	  line to enable this feature.  N consists of the sum of:
911da177e4SLinus Torvalds
921da177e4SLinus Torvalds	      1 - undefined instruction events
931da177e4SLinus Torvalds	      2 - system calls
941da177e4SLinus Torvalds	      4 - invalid data aborts
951da177e4SLinus Torvalds	      8 - SIGSEGV faults
961da177e4SLinus Torvalds	     16 - SIGBUS faults
971da177e4SLinus Torvalds
981da177e4SLinus Torvalds# These options are only for real kernel hackers who want to get their hands dirty.
991da177e4SLinus Torvaldsconfig DEBUG_LL
1004f5ef922SWill Deacon	bool "Kernel low-level debugging functions (read help!)"
1011da177e4SLinus Torvalds	depends on DEBUG_KERNEL
1021da177e4SLinus Torvalds	help
10335efb606SRussell King	  Say Y here to include definitions of printascii, printch, printhex
1041da177e4SLinus Torvalds	  in the kernel.  This is helpful if you are debugging code that
1051da177e4SLinus Torvalds	  executes before the console is initialized.
1061da177e4SLinus Torvalds
1074f5ef922SWill Deacon	  Note that selecting this option will limit the kernel to a single
1084f5ef922SWill Deacon	  UART definition, as specified below. Attempting to boot the kernel
1094f5ef922SWill Deacon	  image on a different platform *will not work*, so this option should
1104f5ef922SWill Deacon	  not be enabled for kernels that are intended to be portable.
1114f5ef922SWill Deacon
11217916b28SWill Deaconchoice
11317916b28SWill Deacon	prompt "Kernel low-level debugging port"
11417916b28SWill Deacon	depends on DEBUG_LL
11517916b28SWill Deacon
1163c215e64STsahee Zidenberg	config DEBUG_ALPINE_UART0
1173c215e64STsahee Zidenberg		bool "Kernel low-level debugging messages via Alpine UART0"
1183c215e64STsahee Zidenberg		depends on ARCH_ALPINE
1193c215e64STsahee Zidenberg		select DEBUG_UART_8250
1203c215e64STsahee Zidenberg		help
1213c215e64STsahee Zidenberg		  Say Y here if you want kernel low-level debugging support
1223c215e64STsahee Zidenberg		  on Alpine based platforms.
1233c215e64STsahee Zidenberg
124d5bd4e8dSOleksij Rempel	config DEBUG_ASM9260_UART
125d5bd4e8dSOleksij Rempel		bool "Kernel low-level debugging via asm9260 UART"
126d5bd4e8dSOleksij Rempel		depends on MACH_ASM9260
127d5bd4e8dSOleksij Rempel		help
128d5bd4e8dSOleksij Rempel		  Say Y here if you want the debug print routines to direct
129d5bd4e8dSOleksij Rempel		  their output to an UART or USART port on asm9260 based
130d5bd4e8dSOleksij Rempel		  machines.
131d5bd4e8dSOleksij Rempel
132d5bd4e8dSOleksij Rempel		    DEBUG_UART_PHYS | DEBUG_UART_VIRT
133d5bd4e8dSOleksij Rempel
134d5bd4e8dSOleksij Rempel		    0x80000000      | 0xf0000000     | UART0
135d5bd4e8dSOleksij Rempel		    0x80004000      | 0xf0004000     | UART1
136d5bd4e8dSOleksij Rempel		    0x80008000      | 0xf0008000     | UART2
137d5bd4e8dSOleksij Rempel		    0x8000c000      | 0xf000c000     | UART3
138d5bd4e8dSOleksij Rempel		    0x80010000      | 0xf0010000     | UART4
139d5bd4e8dSOleksij Rempel		    0x80014000      | 0xf0014000     | UART5
140d5bd4e8dSOleksij Rempel		    0x80018000      | 0xf0018000     | UART6
141d5bd4e8dSOleksij Rempel		    0x8001c000      | 0xf001c000     | UART7
142d5bd4e8dSOleksij Rempel		    0x80020000      | 0xf0020000     | UART8
143d5bd4e8dSOleksij Rempel		    0x80024000      | 0xf0024000     | UART9
144d5bd4e8dSOleksij Rempel
1458b2f2d03SAlexandre Belloni	config DEBUG_AT91_RM9200_DBGU
1468b2f2d03SAlexandre Belloni		bool "Kernel low-level debugging on AT91RM9200, AT91SAM9 DBGU"
1478b2f2d03SAlexandre Belloni		select DEBUG_AT91_UART
1488b2f2d03SAlexandre Belloni		depends on SOC_AT91RM9200 || SOC_AT91SAM9
1496f112a08SAlexandre Belloni		help
1508b2f2d03SAlexandre Belloni		  Say Y here if you want kernel low-level debugging support
1518b2f2d03SAlexandre Belloni		  on the DBGU port of:
1528b2f2d03SAlexandre Belloni		    at91rm9200, at91sam9260, at91sam9g20, at91sam9261,
1538b2f2d03SAlexandre Belloni		    at91sam9g10, at91sam9n12, at91sam9rl64, at91sam9x5
15413079a73SJean-Christophe PLAGNIOL-VILLARD
1558b2f2d03SAlexandre Belloni	config DEBUG_AT91_SAM9263_DBGU
1568b2f2d03SAlexandre Belloni		bool "Kernel low-level debugging on AT91SAM{9263,9G45,A5D3} DBGU"
1578b2f2d03SAlexandre Belloni		select DEBUG_AT91_UART
1588b2f2d03SAlexandre Belloni		depends on SOC_AT91SAM9 || SOC_SAMA5D3
1598b2f2d03SAlexandre Belloni		help
1608b2f2d03SAlexandre Belloni		  Say Y here if you want kernel low-level debugging support
1618b2f2d03SAlexandre Belloni		  on the DBGU port of:
1628b2f2d03SAlexandre Belloni		    at91sam9263, at91sam9g45, at91sam9m10,
1638b2f2d03SAlexandre Belloni		    sama5d3
16413079a73SJean-Christophe PLAGNIOL-VILLARD
1658b2f2d03SAlexandre Belloni	config DEBUG_AT91_SAMA5D2_UART1
1668b2f2d03SAlexandre Belloni		bool "Kernel low-level debugging on SAMA5D2 UART1"
1678b2f2d03SAlexandre Belloni		select DEBUG_AT91_UART
1688b2f2d03SAlexandre Belloni		depends on SOC_SAMA5D2
1698b2f2d03SAlexandre Belloni		help
1708b2f2d03SAlexandre Belloni		  Say Y here if you want kernel low-level debugging support
1718b2f2d03SAlexandre Belloni		  on the UART1 port of sama5d2.
1728b2f2d03SAlexandre Belloni
1738b2f2d03SAlexandre Belloni	config DEBUG_AT91_SAMA5D4_USART3
1748b2f2d03SAlexandre Belloni		bool "Kernel low-level debugging on SAMA5D4 USART3"
1758b2f2d03SAlexandre Belloni		select DEBUG_AT91_UART
1768b2f2d03SAlexandre Belloni		depends on SOC_SAMA5D4
1778b2f2d03SAlexandre Belloni		help
1788b2f2d03SAlexandre Belloni		  Say Y here if you want kernel low-level debugging support
1798b2f2d03SAlexandre Belloni		  on the USART3 port of sama5d4.
180c268a743SNicolas Ferre
18163e07c0fSSzemző András	config DEBUG_AT91_SAMV7_USART1
18263e07c0fSSzemző András		bool "Kernel low-level debugging via SAMV7 USART1"
18363e07c0fSSzemző András		select DEBUG_AT91_UART
18463e07c0fSSzemző András		depends on SOC_SAMV7
18563e07c0fSSzemző András		help
18663e07c0fSSzemző András		  Say Y here if you want the debug print routines to direct
18763e07c0fSSzemző András		  their output to the USART1 port on SAMV7 based
18863e07c0fSSzemző András		  machines.
18963e07c0fSSzemző András
190f1ac922dSStephen Warren	config DEBUG_BCM2835
191f1ac922dSStephen Warren		bool "Kernel low-level debugging on BCM2835 PL011 UART"
1925234c34eSEric Anholt		depends on ARCH_BCM2835 && ARCH_MULTI_V6
1935234c34eSEric Anholt		select DEBUG_UART_PL01X
1945234c34eSEric Anholt
1955234c34eSEric Anholt	config DEBUG_BCM2836
1965234c34eSEric Anholt		bool "Kernel low-level debugging on BCM2836 PL011 UART"
1975234c34eSEric Anholt		depends on ARCH_BCM2835 && ARCH_MULTI_V7
1985c972af4SRussell King		select DEBUG_UART_PL01X
199f1ac922dSStephen Warren
20006580275SHauke Mehrtens	config DEBUG_BCM_5301X
2012dc9e0b9SFlorian Fainelli		bool "Kernel low-level debugging on BCM5301X/NSP UART1"
2022dc9e0b9SFlorian Fainelli		depends on ARCH_BCM_5301X || ARCH_BCM_NSP
203140bd603SHauke Mehrtens		select DEBUG_UART_8250
20406580275SHauke Mehrtens
205fa1e581dSFlorian Fainelli	config DEBUG_BCM_HR2
206fa1e581dSFlorian Fainelli		bool "Kernel low-level debugging on Hurricane 2 UART2"
207fa1e581dSFlorian Fainelli		depends on ARCH_BCM_HR2
208fa1e581dSFlorian Fainelli		select DEBUG_UART_8250
209fa1e581dSFlorian Fainelli
210753d1243SChristian Daudt	config DEBUG_BCM_KONA_UART
211753d1243SChristian Daudt		bool "Kernel low-level debugging messages via BCM KONA UART"
2127aa2077bSFlorian Fainelli		depends on ARCH_BCM_MOBILE
213753d1243SChristian Daudt		select DEBUG_UART_8250
214753d1243SChristian Daudt		help
215753d1243SChristian Daudt		  Say Y here if you want kernel low-level debugging support
216753d1243SChristian Daudt		  on Broadcom SoC platforms.
217753d1243SChristian Daudt		  This low level debug works for Broadcom
218753d1243SChristian Daudt		  mobile SoCs in the Kona family of chips (e.g. bcm28155,
219753d1243SChristian Daudt		  bcm11351, etc...)
220753d1243SChristian Daudt
2216c548099SArnd Bergmann	config DEBUG_BCM63XX_UART
222b51312beSFlorian Fainelli		bool "Kernel low-level debugging on BCM63XX UART"
223b51312beSFlorian Fainelli		depends on ARCH_BCM_63XX
224b51312beSFlorian Fainelli
225caad0b41SSebastian Hesselbarth	config DEBUG_BERLIN_UART
226caad0b41SSebastian Hesselbarth		bool "Marvell Berlin SoC Debug UART"
227caad0b41SSebastian Hesselbarth		depends on ARCH_BERLIN
228caad0b41SSebastian Hesselbarth		select DEBUG_UART_8250
229caad0b41SSebastian Hesselbarth		help
230caad0b41SSebastian Hesselbarth		  Say Y here if you want kernel low-level debugging support
231caad0b41SSebastian Hesselbarth		  on Marvell Berlin SoC based platforms.
232caad0b41SSebastian Hesselbarth
23381b43a6eSMarc Carino	config DEBUG_BRCMSTB_UART
23481b43a6eSMarc Carino		bool "Use BRCMSTB UART for low-level debug"
23581b43a6eSMarc Carino		depends on ARCH_BRCMSTB
23681b43a6eSMarc Carino		help
23781b43a6eSMarc Carino		  Say Y here if you want the debug print routines to direct
238d0cf9d8aSFlorian Fainelli		  their output to the first serial port on these devices. The
239d0cf9d8aSFlorian Fainelli		  UART physical and virtual address is automatically provided
240d0cf9d8aSFlorian Fainelli		  based on the chip identification register value.
24181b43a6eSMarc Carino
24281b43a6eSMarc Carino		  If you have a Broadcom STB chip and would like early print
24381b43a6eSMarc Carino		  messages to appear over the UART, select this option.
24481b43a6eSMarc Carino
245164acf96SStephen Boyd	config DEBUG_CLPS711X_UART1
246164acf96SStephen Boyd		bool "Kernel low-level debugging messages via UART1"
247164acf96SStephen Boyd		depends on ARCH_CLPS711X
248164acf96SStephen Boyd		help
249164acf96SStephen Boyd		  Say Y here if you want the debug print routines to direct
250164acf96SStephen Boyd		  their output to the first serial port on these devices.
25117916b28SWill Deacon
25217916b28SWill Deacon	config DEBUG_CLPS711X_UART2
25317916b28SWill Deacon		bool "Kernel low-level debugging messages via UART2"
25417916b28SWill Deacon		depends on ARCH_CLPS711X
25517916b28SWill Deacon		help
25617916b28SWill Deacon		  Say Y here if you want the debug print routines to direct
25717916b28SWill Deacon		  their output to the second serial port on these devices.
25817916b28SWill Deacon
25929c9b7beSArnd Bergmann	config DEBUG_CNS3XXX
26029c9b7beSArnd Bergmann		bool "Kernel Kernel low-level debugging on Cavium Networks CNS3xxx"
26129c9b7beSArnd Bergmann		depends on ARCH_CNS3XXX
262b125170aSKrzysztof Hałasa		select DEBUG_UART_8250
26329c9b7beSArnd Bergmann		help
26429c9b7beSArnd Bergmann		  Say Y here if you want the debug print routines to direct
26529c9b7beSArnd Bergmann                  their output to the CNS3xxx UART0.
26629c9b7beSArnd Bergmann
267477099f1SUwe Kleine-König	config DEBUG_DAVINCI_DA8XX_UART1
268477099f1SUwe Kleine-König		bool "Kernel low-level debugging on DaVinci DA8XX using UART1"
269477099f1SUwe Kleine-König		depends on ARCH_DAVINCI_DA8XX
27097bd1a48SRussell King		select DEBUG_UART_8250
271477099f1SUwe Kleine-König		help
272477099f1SUwe Kleine-König		  Say Y here if you want the debug print routines to direct
273477099f1SUwe Kleine-König		  their output to UART1 serial port on DaVinci DA8XX devices.
274477099f1SUwe Kleine-König
275477099f1SUwe Kleine-König	config DEBUG_DAVINCI_DA8XX_UART2
276477099f1SUwe Kleine-König		bool "Kernel low-level debugging on DaVinci DA8XX using UART2"
277477099f1SUwe Kleine-König		depends on ARCH_DAVINCI_DA8XX
27897bd1a48SRussell King		select DEBUG_UART_8250
279477099f1SUwe Kleine-König		help
280477099f1SUwe Kleine-König		  Say Y here if you want the debug print routines to direct
281477099f1SUwe Kleine-König		  their output to UART2 serial port on DaVinci DA8XX devices.
282477099f1SUwe Kleine-König
283477099f1SUwe Kleine-König	config DEBUG_DAVINCI_DMx_UART0
284477099f1SUwe Kleine-König		bool "Kernel low-level debugging on DaVinci DMx using UART0"
285477099f1SUwe Kleine-König		depends on ARCH_DAVINCI_DMx
28697bd1a48SRussell King		select DEBUG_UART_8250
287477099f1SUwe Kleine-König		help
288477099f1SUwe Kleine-König		  Say Y here if you want the debug print routines to direct
289477099f1SUwe Kleine-König		  their output to UART0 serial port on DaVinci DMx devices.
290477099f1SUwe Kleine-König
291e76f4750SRussell King	config DEBUG_DC21285_PORT
292e76f4750SRussell King		bool "Kernel low-level debugging messages via footbridge serial port"
293e76f4750SRussell King		depends on FOOTBRIDGE
294e76f4750SRussell King		help
295e76f4750SRussell King		  Say Y here if you want the debug print routines to direct
296e76f4750SRussell King		  their output to the serial port in the DC21285 (Footbridge).
297e76f4750SRussell King
298e23814daSBaruch Siach	config DEBUG_DIGICOLOR_UA0
299e23814daSBaruch Siach		bool "Kernel low-level debugging messages via Digicolor UA0"
300e23814daSBaruch Siach		depends on ARCH_DIGICOLOR
301e23814daSBaruch Siach		help
302e23814daSBaruch Siach		  Say Y here if you want the debug print routines to direct
303e23814daSBaruch Siach		  their output to the UA0 serial port in the CX92755.
304e23814daSBaruch Siach
305f06455faSArnd Bergmann	config DEBUG_EP93XX
306f06455faSArnd Bergmann		bool "Kernel low-level debugging messages via ep93xx UART"
307f06455faSArnd Bergmann		depends on ARCH_EP93XX
308f06455faSArnd Bergmann		select DEBUG_UART_PL01X
309f06455faSArnd Bergmann		help
310f06455faSArnd Bergmann		  Say Y here if you want kernel low-level debugging support
311f06455faSArnd Bergmann		  on Cirrus Logic EP93xx based platforms.
312f06455faSArnd Bergmann
313e76f4750SRussell King	config DEBUG_FOOTBRIDGE_COM1
314e76f4750SRussell King		bool "Kernel low-level debugging messages via footbridge 8250 at PCI COM1"
315e76f4750SRussell King		depends on FOOTBRIDGE
3160045c0ddSArnd Bergmann		select DEBUG_UART_8250
317e76f4750SRussell King		help
318e76f4750SRussell King		  Say Y here if you want the debug print routines to direct
319e76f4750SRussell King		  their output to the 8250 at PCI COM1.
320e76f4750SRussell King
321d7175a3bSArnd Bergmann	config DEBUG_GEMINI
322d7175a3bSArnd Bergmann		bool "Kernel low-level debugging messages via Cortina Systems Gemini UART"
323d7175a3bSArnd Bergmann		depends on ARCH_GEMINI
324d7175a3bSArnd Bergmann		select DEBUG_UART_8250
325d7175a3bSArnd Bergmann		help
326d7175a3bSArnd Bergmann		  Say Y here if you want kernel low-level debugging support
327d7175a3bSArnd Bergmann		  on Cortina Gemini based platforms.
328d7175a3bSArnd Bergmann
3298d258bebSHaojian Zhuang	config DEBUG_HI3620_UART
3308d258bebSHaojian Zhuang		bool "Hisilicon HI3620 Debug UART"
3318d258bebSHaojian Zhuang		depends on ARCH_HI3xxx
3328d258bebSHaojian Zhuang		select DEBUG_UART_PL01X
3338d258bebSHaojian Zhuang		help
3348d258bebSHaojian Zhuang		  Say Y here if you want kernel low-level debugging support
3358d258bebSHaojian Zhuang		  on HI3620 UART.
3368d258bebSHaojian Zhuang
337220e6cf7SRob Herring	config DEBUG_HIGHBANK_UART
338220e6cf7SRob Herring		bool "Kernel low-level debugging messages via Highbank UART"
339220e6cf7SRob Herring		depends on ARCH_HIGHBANK
3405c972af4SRussell King		select DEBUG_UART_PL01X
341220e6cf7SRob Herring		help
342220e6cf7SRob Herring		  Say Y here if you want the debug print routines to direct
343220e6cf7SRob Herring		  their output to the UART on Highbank based devices.
344220e6cf7SRob Herring
34527dafaa8SWang Long	config DEBUG_HIP01_UART
34627dafaa8SWang Long		bool "Hisilicon Hip01 Debug UART"
34727dafaa8SWang Long		depends on ARCH_HIP01
34827dafaa8SWang Long		select DEBUG_UART_8250
34927dafaa8SWang Long		help
35027dafaa8SWang Long		  Say Y here if you want kernel low-level debugging support
35127dafaa8SWang Long		  on HIP01 UART.
35227dafaa8SWang Long
353c9a1df48SHaojian Zhuang	config DEBUG_HIP04_UART
354c9a1df48SHaojian Zhuang		bool "Hisilicon HiP04 Debug UART"
355c9a1df48SHaojian Zhuang		depends on ARCH_HIP04
356c9a1df48SHaojian Zhuang		select DEBUG_UART_8250
357c9a1df48SHaojian Zhuang		help
358c9a1df48SHaojian Zhuang		  Say Y here if you want kernel low-level debugging support
359c9a1df48SHaojian Zhuang		  on HIP04 UART.
360c9a1df48SHaojian Zhuang
36137bdaf82SOlof Johansson	config DEBUG_HIX5HD2_UART
36237bdaf82SOlof Johansson		bool "Hisilicon Hix5hd2 Debug UART"
36337bdaf82SOlof Johansson		depends on ARCH_HIX5HD2
36493fd03a8SCatalin Marinas		select DEBUG_UART_PL01X
36593fd03a8SCatalin Marinas		help
36637bdaf82SOlof Johansson		  Say Y here if you want kernel low-level debugging support
36737bdaf82SOlof Johansson		  on Hix5hd2 UART.
3681da177e4SLinus Torvalds
369f350b861SShawn Guo	config DEBUG_IMX1_UART
370f350b861SShawn Guo		bool "i.MX1 Debug UART"
371f350b861SShawn Guo		depends on SOC_IMX1
372f350b861SShawn Guo		help
373f350b861SShawn Guo		  Say Y here if you want kernel low-level debugging support
374f350b861SShawn Guo		  on i.MX1.
375f350b861SShawn Guo
376f350b861SShawn Guo	config DEBUG_IMX23_UART
377f350b861SShawn Guo		bool "i.MX23 Debug UART"
378f350b861SShawn Guo		depends on SOC_IMX23
3795c972af4SRussell King		select DEBUG_UART_PL01X
380f350b861SShawn Guo		help
381f350b861SShawn Guo		  Say Y here if you want kernel low-level debugging support
382f350b861SShawn Guo		  on i.MX23.
383f350b861SShawn Guo
384f350b861SShawn Guo	config DEBUG_IMX25_UART
385f350b861SShawn Guo		bool "i.MX25 Debug UART"
386f350b861SShawn Guo		depends on SOC_IMX25
387f350b861SShawn Guo		help
388f350b861SShawn Guo		  Say Y here if you want kernel low-level debugging support
389f350b861SShawn Guo		  on i.MX25.
390f350b861SShawn Guo
391f350b861SShawn Guo	config DEBUG_IMX21_IMX27_UART
392f350b861SShawn Guo		bool "i.MX21 and i.MX27 Debug UART"
393f350b861SShawn Guo		depends on SOC_IMX21 || SOC_IMX27
394f350b861SShawn Guo		help
395f350b861SShawn Guo		  Say Y here if you want kernel low-level debugging support
396f350b861SShawn Guo		  on i.MX21 or i.MX27.
397f350b861SShawn Guo
398f350b861SShawn Guo	config DEBUG_IMX28_UART
399f350b861SShawn Guo		bool "i.MX28 Debug UART"
400f350b861SShawn Guo		depends on SOC_IMX28
4015c972af4SRussell King		select DEBUG_UART_PL01X
402f350b861SShawn Guo		help
403f350b861SShawn Guo		  Say Y here if you want kernel low-level debugging support
404f350b861SShawn Guo		  on i.MX28.
405f350b861SShawn Guo
4064ad625d4SShawn Guo	config DEBUG_IMX31_UART
4074ad625d4SShawn Guo		bool "i.MX31 Debug UART"
4084ad625d4SShawn Guo		depends on SOC_IMX31
409f350b861SShawn Guo		help
410f350b861SShawn Guo		  Say Y here if you want kernel low-level debugging support
4114ad625d4SShawn Guo		  on i.MX31.
4124ad625d4SShawn Guo
4134ad625d4SShawn Guo	config DEBUG_IMX35_UART
4144ad625d4SShawn Guo		bool "i.MX35 Debug UART"
4154ad625d4SShawn Guo		depends on SOC_IMX35
4164ad625d4SShawn Guo		help
4174ad625d4SShawn Guo		  Say Y here if you want kernel low-level debugging support
4184ad625d4SShawn Guo		  on i.MX35.
419f350b861SShawn Guo
420ad364a70SGreg Ungerer	config DEBUG_IMX50_UART
421ad364a70SGreg Ungerer		bool "i.MX50 Debug UART"
422ad364a70SGreg Ungerer		depends on SOC_IMX50
423ad364a70SGreg Ungerer		help
424ad364a70SGreg Ungerer		  Say Y here if you want kernel low-level debugging support
425ad364a70SGreg Ungerer		  on i.MX50.
426ad364a70SGreg Ungerer
427f350b861SShawn Guo	config DEBUG_IMX51_UART
428f350b861SShawn Guo		bool "i.MX51 Debug UART"
429f350b861SShawn Guo		depends on SOC_IMX51
430f350b861SShawn Guo		help
431f350b861SShawn Guo		  Say Y here if you want kernel low-level debugging support
432f350b861SShawn Guo		  on i.MX51.
433f350b861SShawn Guo
4347356420cSFabio Estevam	config DEBUG_IMX53_UART
4357356420cSFabio Estevam		bool "i.MX53 Debug UART"
4367356420cSFabio Estevam		depends on SOC_IMX53
437f350b861SShawn Guo		help
438f350b861SShawn Guo		  Say Y here if you want kernel low-level debugging support
4397356420cSFabio Estevam		  on i.MX53.
440f350b861SShawn Guo
44149c9e60eSShawn Guo	config DEBUG_IMX6Q_UART
4423c03a2feSShawn Guo		bool "i.MX6Q/DL Debug UART"
443785d7fabSDirk Behme		depends on SOC_IMX6Q
444785d7fabSDirk Behme		help
445785d7fabSDirk Behme		  Say Y here if you want kernel low-level debugging support
4463c03a2feSShawn Guo		  on i.MX6Q/DL.
447bac89d75SShawn Guo
44834e8a16bSShawn Guo	config DEBUG_IMX6SL_UART
44934e8a16bSShawn Guo		bool "i.MX6SL Debug UART"
45034e8a16bSShawn Guo		depends on SOC_IMX6SL
45134e8a16bSShawn Guo		help
45234e8a16bSShawn Guo		  Say Y here if you want kernel low-level debugging support
45334e8a16bSShawn Guo		  on i.MX6SL.
45434e8a16bSShawn Guo
45574368e81SShawn Guo	config DEBUG_IMX6SX_UART
45674368e81SShawn Guo		bool "i.MX6SX Debug UART"
45774368e81SShawn Guo		depends on SOC_IMX6SX
45874368e81SShawn Guo		help
45974368e81SShawn Guo		  Say Y here if you want kernel low-level debugging support
46074368e81SShawn Guo		  on i.MX6SX.
46174368e81SShawn Guo
46220c305f6SAnson Huang	config DEBUG_IMX6UL_UART
46320c305f6SAnson Huang		bool "i.MX6UL Debug UART"
46420c305f6SAnson Huang		depends on SOC_IMX6UL
46520c305f6SAnson Huang		help
46620c305f6SAnson Huang		  Say Y here if you want kernel low-level debugging support
46720c305f6SAnson Huang		  on i.MX6UL.
46820c305f6SAnson Huang
46952d7aec2SAnson Huang	config DEBUG_IMX7D_UART
47052d7aec2SAnson Huang		bool "i.MX7D Debug UART"
47152d7aec2SAnson Huang		depends on SOC_IMX7D
47252d7aec2SAnson Huang		help
47352d7aec2SAnson Huang		  Say Y here if you want kernel low-level debugging support
47452d7aec2SAnson Huang		  on i.MX7D.
47552d7aec2SAnson Huang
4764db22c10SArnd Bergmann	config DEBUG_INTEGRATOR
4774db22c10SArnd Bergmann		bool "Kernel low-level debugging messages via ARM Integrator UART"
4784db22c10SArnd Bergmann		depends on ARCH_INTEGRATOR
4794db22c10SArnd Bergmann		select DEBUG_UART_PL01X
4804db22c10SArnd Bergmann		help
4814db22c10SArnd Bergmann		  Say Y here if you want kernel low-level debugging support
4824db22c10SArnd Bergmann		  on ARM Integrator platforms.
4834db22c10SArnd Bergmann
484828989adSSantosh Shilimkar	config DEBUG_KEYSTONE_UART0
485828989adSSantosh Shilimkar		bool "Kernel low-level debugging on KEYSTONE2 using UART0"
486828989adSSantosh Shilimkar		depends on ARCH_KEYSTONE
487f2acf003SRussell King		select DEBUG_UART_8250
488828989adSSantosh Shilimkar		help
489828989adSSantosh Shilimkar		  Say Y here if you want the debug print routines to direct
490828989adSSantosh Shilimkar		  their output to UART0 serial port on KEYSTONE2 devices.
491828989adSSantosh Shilimkar
492828989adSSantosh Shilimkar	config DEBUG_KEYSTONE_UART1
493828989adSSantosh Shilimkar		bool "Kernel low-level debugging on KEYSTONE2 using UART1"
494828989adSSantosh Shilimkar		depends on ARCH_KEYSTONE
495f2acf003SRussell King		select DEBUG_UART_8250
496828989adSSantosh Shilimkar		help
497828989adSSantosh Shilimkar		  Say Y here if you want the debug print routines to direct
498828989adSSantosh Shilimkar		  their output to UART1 serial port on KEYSTONE2 devices.
499828989adSSantosh Shilimkar
500abbfb21eSDaniel Thompson	config DEBUG_KS8695_UART
501abbfb21eSDaniel Thompson		bool "KS8695 Debug UART"
502abbfb21eSDaniel Thompson		depends on ARCH_KS8695
503abbfb21eSDaniel Thompson		help
504abbfb21eSDaniel Thompson		  Say Y here if you want kernel low-level debugging support
505abbfb21eSDaniel Thompson		  on KS8695.
506abbfb21eSDaniel Thompson
5070aed6a37SJoachim Eastwood	config DEBUG_LPC18XX_UART0
5080aed6a37SJoachim Eastwood		bool "Kernel low-level debugging via LPC18xx/43xx UART0"
5090aed6a37SJoachim Eastwood		depends on ARCH_LPC18XX
5100aed6a37SJoachim Eastwood		select DEBUG_UART_8250
5110aed6a37SJoachim Eastwood		help
5120aed6a37SJoachim Eastwood		  Say Y here if you want kernel low-level debugging support
5130aed6a37SJoachim Eastwood		  on NXP LPC18xx/43xx UART0.
5140aed6a37SJoachim Eastwood
51559bd4c38SArnd Bergmann	config DEBUG_LPC32XX
51659bd4c38SArnd Bergmann		bool "Kernel low-level debugging messages via NXP LPC32xx UART"
51759bd4c38SArnd Bergmann		depends on ARCH_LPC32XX
51859bd4c38SArnd Bergmann		select DEBUG_UART_8250
51959bd4c38SArnd Bergmann		help
52059bd4c38SArnd Bergmann		  Say Y here if you want kernel low-level debugging support
52159bd4c38SArnd Bergmann		  on NXP LPC32xx based platforms.
52259bd4c38SArnd Bergmann
523d8a00916SCarlo Caione	config DEBUG_MESON_UARTAO
524d8a00916SCarlo Caione		bool "Kernel low-level debugging via Meson6 UARTAO"
525d8a00916SCarlo Caione		depends on ARCH_MESON
526d8a00916SCarlo Caione		help
527d8a00916SCarlo Caione		  Say Y here if you want kernel low-lever debugging support
528d8a00916SCarlo Caione		  on Amlogic Meson6 based platforms on the UARTAO.
529d8a00916SCarlo Caione
530fa4cd2a8SHaojian Zhuang	config DEBUG_MMP_UART2
531fa4cd2a8SHaojian Zhuang		bool "Kernel low-level debugging message via MMP UART2"
532fa4cd2a8SHaojian Zhuang		depends on ARCH_MMP
5334a003647SRussell King		select DEBUG_UART_8250
534fa4cd2a8SHaojian Zhuang		help
535fa4cd2a8SHaojian Zhuang		  Say Y here if you want kernel low-level debugging support
536fa4cd2a8SHaojian Zhuang		  on MMP UART2.
537fa4cd2a8SHaojian Zhuang
538fa4cd2a8SHaojian Zhuang	config DEBUG_MMP_UART3
539fa4cd2a8SHaojian Zhuang		bool "Kernel low-level debugging message via MMP UART3"
540fa4cd2a8SHaojian Zhuang		depends on ARCH_MMP
5414a003647SRussell King		select DEBUG_UART_8250
542fa4cd2a8SHaojian Zhuang		help
543fa4cd2a8SHaojian Zhuang		  Say Y here if you want kernel low-level debugging support
544fa4cd2a8SHaojian Zhuang		  on MMP UART3.
545fa4cd2a8SHaojian Zhuang
546d91125ddSMaxime Ripard	config DEBUG_MVEBU_UART0
547d91125ddSMaxime Ripard		bool "Kernel low-level debugging messages via MVEBU UART0 (old bootloaders)"
548bfd5af99SRob Herring		depends on ARCH_MVEBU
549c047f529SArnd Bergmann		depends on ARCH_MVEBU && CPU_V7
5504a003647SRussell King		select DEBUG_UART_8250
551bfd5af99SRob Herring		help
552bfd5af99SRob Herring		  Say Y here if you want kernel low-level debugging support
553d91125ddSMaxime Ripard		  on MVEBU based platforms on UART0.
554bfd5af99SRob Herring
555c2804cd6SThomas Petazzoni		  This option should be used with the old bootloaders
556c2804cd6SThomas Petazzoni		  that left the internal registers mapped at
557c2804cd6SThomas Petazzoni		  0xd0000000. As of today, this is the case on
558c2804cd6SThomas Petazzoni		  platforms such as the Globalscale Mirabox or the
559c2804cd6SThomas Petazzoni		  Plathome OpenBlocks AX3, when using the original
560c2804cd6SThomas Petazzoni		  bootloader.
561c2804cd6SThomas Petazzoni
562c047f529SArnd Bergmann		  This option will not work on older Marvell platforms
563c047f529SArnd Bergmann		  (Kirkwood, Dove, MV78xx0, Orion5x), which should pick
564c047f529SArnd Bergmann		  the "new bootloader" variant.
565c047f529SArnd Bergmann
566c2804cd6SThomas Petazzoni		  If the wrong DEBUG_MVEBU_UART* option is selected,
567c2804cd6SThomas Petazzoni		  when u-boot hands over to the kernel, the system
568c2804cd6SThomas Petazzoni		  silently crashes, with no serial output at all.
569c2804cd6SThomas Petazzoni
570d91125ddSMaxime Ripard	config DEBUG_MVEBU_UART0_ALTERNATE
571d91125ddSMaxime Ripard		bool "Kernel low-level debugging messages via MVEBU UART0 (new bootloaders)"
572c047f529SArnd Bergmann		depends on ARCH_MVEBU || ARCH_DOVE || ARCH_MV78XX0 || ARCH_ORION5X
5734a003647SRussell King		select DEBUG_UART_8250
574c2804cd6SThomas Petazzoni		help
575c2804cd6SThomas Petazzoni		  Say Y here if you want kernel low-level debugging support
576c047f529SArnd Bergmann		  on MVEBU based platforms on UART0. (Armada XP, Armada 3xx,
577c047f529SArnd Bergmann		  Kirkwood, Dove, MV78xx0, Orion5x).
578c047f529SArnd Bergmann
579c2804cd6SThomas Petazzoni
580c2804cd6SThomas Petazzoni		  This option should be used with the new bootloaders
581c2804cd6SThomas Petazzoni		  that remap the internal registers at 0xf1000000.
582c2804cd6SThomas Petazzoni
583c2804cd6SThomas Petazzoni		  If the wrong DEBUG_MVEBU_UART* option is selected,
584c2804cd6SThomas Petazzoni		  when u-boot hands over to the kernel, the system
585c2804cd6SThomas Petazzoni		  silently crashes, with no serial output at all.
586c2804cd6SThomas Petazzoni
587bd920490SMaxime Ripard	config DEBUG_MVEBU_UART1_ALTERNATE
588bd920490SMaxime Ripard		bool "Kernel low-level debugging messages via MVEBU UART1 (new bootloaders)"
589bd920490SMaxime Ripard		depends on ARCH_MVEBU
590bd920490SMaxime Ripard		select DEBUG_UART_8250
591bd920490SMaxime Ripard		help
592bd920490SMaxime Ripard		  Say Y here if you want kernel low-level debugging support
593c047f529SArnd Bergmann		  on MVEBU based platforms on UART1. (Armada XP, Armada 3xx,
594c047f529SArnd Bergmann		  Kirkwood, Dove, MV78xx0, Orion5x).
595a3d3ef9dSStephen Boyd
5961da177e4SLinus Torvalds		  This option should be used with the new bootloaders
5971da177e4SLinus Torvalds		  that remap the internal registers at 0xf1000000.
598c047f529SArnd Bergmann		  All of the older (pre Armada XP/370) platforms also use
599c047f529SArnd Bergmann		  this address, regardless of the boot loader version.
6001da177e4SLinus Torvalds
6011da177e4SLinus Torvalds		  If the wrong DEBUG_MVEBU_UART* option is selected,
6021da177e4SLinus Torvalds		  when u-boot hands over to the kernel, the system
6031da177e4SLinus Torvalds		  silently crashes, with no serial output at all.
6041da177e4SLinus Torvalds
6051dc93416SArnd Bergmann	config DEBUG_MT6589_UART0
6061dc93416SArnd Bergmann		bool "Mediatek mt6589 UART0"
6071dc93416SArnd Bergmann		depends on ARCH_MEDIATEK
6081dc93416SArnd Bergmann		select DEBUG_UART_8250
609c7c3eac6SShawn Guo		help
610c7c3eac6SShawn Guo		  Say Y here if you want kernel low-level debugging support
6111dc93416SArnd Bergmann		  for Mediatek mt6589 based platforms on UART0.
6121dc93416SArnd Bergmann
6131dc93416SArnd Bergmann	config DEBUG_MT8127_UART0
6141dc93416SArnd Bergmann		bool "Mediatek mt8127/mt6592 UART0"
6151dc93416SArnd Bergmann		depends on ARCH_MEDIATEK
6161dc93416SArnd Bergmann		select DEBUG_UART_8250
6171dc93416SArnd Bergmann		help
6181dc93416SArnd Bergmann		  Say Y here if you want kernel low-level debugging support
6191dc93416SArnd Bergmann		  for Mediatek mt8127 based platforms on UART0.
6201dc93416SArnd Bergmann
6211dc93416SArnd Bergmann	config DEBUG_MT8135_UART3
6221dc93416SArnd Bergmann		bool "Mediatek mt8135 UART3"
6231dc93416SArnd Bergmann		depends on ARCH_MEDIATEK
6241dc93416SArnd Bergmann		select DEBUG_UART_8250
6251dc93416SArnd Bergmann		help
6261dc93416SArnd Bergmann		  Say Y here if you want kernel low-level debugging support
6271dc93416SArnd Bergmann		  for Mediatek mt8135 based platforms on UART3.
628c7c3eac6SShawn Guo
6294d31e664SDaniel Thompson	config DEBUG_NETX_UART
6304d31e664SDaniel Thompson		bool "Kernel low-level debugging messages via NetX UART"
6314d31e664SDaniel Thompson		depends on ARCH_NETX
6324d31e664SDaniel Thompson		help
6334d31e664SDaniel Thompson		  Say Y here if you want kernel low-level debugging support
6344d31e664SDaniel Thompson		  on Hilscher NetX based platforms.
6354d31e664SDaniel Thompson
636266c3479SLinus Walleij	config DEBUG_NOMADIK_UART
637266c3479SLinus Walleij		bool "Kernel low-level debugging messages via NOMADIK UART"
638266c3479SLinus Walleij		depends on ARCH_NOMADIK
6395c972af4SRussell King		select DEBUG_UART_PL01X
640266c3479SLinus Walleij		help
641266c3479SLinus Walleij		  Say Y here if you want kernel low-level debugging support
642266c3479SLinus Walleij		  on NOMADIK based platforms.
643266c3479SLinus Walleij
6449851ca57SDaniel Tang	config DEBUG_NSPIRE_CLASSIC_UART
6459851ca57SDaniel Tang		bool "Kernel low-level debugging via TI-NSPIRE 8250 UART"
6469851ca57SDaniel Tang		depends on ARCH_NSPIRE
6474a003647SRussell King		select DEBUG_UART_8250
6489851ca57SDaniel Tang		help
6499851ca57SDaniel Tang		  Say Y here if you want kernel low-level debugging support
6509851ca57SDaniel Tang		  on TI-NSPIRE classic models.
6519851ca57SDaniel Tang
6529851ca57SDaniel Tang	config DEBUG_NSPIRE_CX_UART
6539851ca57SDaniel Tang		bool "Kernel low-level debugging via TI-NSPIRE PL011 UART"
6549851ca57SDaniel Tang		depends on ARCH_NSPIRE
6555c972af4SRussell King		select DEBUG_UART_PL01X
6569851ca57SDaniel Tang		help
6579851ca57SDaniel Tang		  Say Y here if you want kernel low-level debugging support
6589851ca57SDaniel Tang		  on TI-NSPIRE CX models.
6599851ca57SDaniel Tang
660c26b9993SDaniel Thompson	config DEBUG_OMAP1UART1
661c26b9993SDaniel Thompson		bool "Kernel low-level debugging via OMAP1 UART1"
662c26b9993SDaniel Thompson		depends on ARCH_OMAP1
663c26b9993SDaniel Thompson		select DEBUG_UART_8250
664c26b9993SDaniel Thompson		help
665c26b9993SDaniel Thompson		  Say Y here if you want kernel low-level debugging support
666c26b9993SDaniel Thompson		  on OMAP1 based platforms (except OMAP730) on the UART1.
667c26b9993SDaniel Thompson
668c26b9993SDaniel Thompson	config DEBUG_OMAP1UART2
669c26b9993SDaniel Thompson		bool "Kernel low-level debugging via OMAP1 UART2"
670c26b9993SDaniel Thompson		depends on ARCH_OMAP1
671c26b9993SDaniel Thompson		select DEBUG_UART_8250
672c26b9993SDaniel Thompson		help
673c26b9993SDaniel Thompson		  Say Y here if you want kernel low-level debugging support
674c26b9993SDaniel Thompson		  on OMAP1 based platforms (except OMAP730) on the UART2.
675c26b9993SDaniel Thompson
676c26b9993SDaniel Thompson	config DEBUG_OMAP1UART3
677c26b9993SDaniel Thompson		bool "Kernel low-level debugging via OMAP1 UART3"
678c26b9993SDaniel Thompson		depends on ARCH_OMAP1
679c26b9993SDaniel Thompson		select DEBUG_UART_8250
680c26b9993SDaniel Thompson		help
681c26b9993SDaniel Thompson		  Say Y here if you want kernel low-level debugging support
682c26b9993SDaniel Thompson		  on OMAP1 based platforms (except OMAP730) on the UART3.
683c26b9993SDaniel Thompson
684cce278d2SRussell King	config DEBUG_OMAP2UART1
685cce278d2SRussell King		bool "OMAP2/3/4 UART1 (omap2/3 sdp boards and some omap3 boards)"
686808b7e07STony Lindgren		depends on ARCH_OMAP2PLUS
687d2b310b0STony Lindgren		select DEBUG_UART_8250
688808b7e07STony Lindgren		help
689cce278d2SRussell King		  This covers at least h4, 2430sdp, 3430sdp, 3630sdp,
690cce278d2SRussell King		  omap3 torpedo and 3530 lv som.
691cce278d2SRussell King
692cce278d2SRussell King	config DEBUG_OMAP2UART2
693cce278d2SRussell King		bool "Kernel low-level debugging messages via OMAP2/3/4 UART2"
694cce278d2SRussell King		depends on ARCH_OMAP2PLUS
695d2b310b0STony Lindgren		select DEBUG_UART_8250
696cce278d2SRussell King
697cce278d2SRussell King	config DEBUG_OMAP2UART3
698cce278d2SRussell King		bool "Kernel low-level debugging messages via OMAP2 UART3 (n8x0)"
699cce278d2SRussell King		depends on ARCH_OMAP2PLUS
700d2b310b0STony Lindgren		select DEBUG_UART_8250
701cce278d2SRussell King
702cce278d2SRussell King	config DEBUG_OMAP3UART3
703cce278d2SRussell King		bool "Kernel low-level debugging messages via OMAP3 UART3 (most omap3 boards)"
704cce278d2SRussell King		depends on ARCH_OMAP2PLUS
705fc23beb8STony Lindgren		select DEBUG_UART_8250
706cce278d2SRussell King		help
707cce278d2SRussell King		  This covers at least cm_t3x, beagle, crane, devkit8000,
708cce278d2SRussell King		  igep00x0, ldp, n900, n9(50), pandora, overo, touchbook,
709cce278d2SRussell King		  and 3517evm.
710cce278d2SRussell King
711cce278d2SRussell King	config DEBUG_OMAP4UART3
712cce278d2SRussell King		bool "Kernel low-level debugging messages via OMAP4/5 UART3 (omap4 blaze, panda, omap5 sevm)"
713cce278d2SRussell King		depends on ARCH_OMAP2PLUS
714fc23beb8STony Lindgren		select DEBUG_UART_8250
715cce278d2SRussell King
716cce278d2SRussell King	config DEBUG_OMAP3UART4
717cce278d2SRussell King		bool "Kernel low-level debugging messages via OMAP36XX UART4"
718cce278d2SRussell King		depends on ARCH_OMAP2PLUS
719fc23beb8STony Lindgren		select DEBUG_UART_8250
720cce278d2SRussell King
721cce278d2SRussell King	config DEBUG_OMAP4UART4
722cce278d2SRussell King		bool "Kernel low-level debugging messages via OMAP4/5 UART4"
723cce278d2SRussell King		depends on ARCH_OMAP2PLUS
724fc23beb8STony Lindgren		select DEBUG_UART_8250
725cce278d2SRussell King
726c26b9993SDaniel Thompson	config DEBUG_OMAP7XXUART1
727c26b9993SDaniel Thompson		bool "Kernel low-level debugging via OMAP730 UART1"
728c26b9993SDaniel Thompson		depends on ARCH_OMAP730
729c26b9993SDaniel Thompson		select DEBUG_UART_8250
730c26b9993SDaniel Thompson		help
731c26b9993SDaniel Thompson		  Say Y here if you want kernel low-level debugging support
732c26b9993SDaniel Thompson		  on OMAP730 based platforms on the UART1.
733c26b9993SDaniel Thompson
734c26b9993SDaniel Thompson	config DEBUG_OMAP7XXUART2
735c26b9993SDaniel Thompson		bool "Kernel low-level debugging via OMAP730 UART2"
736c26b9993SDaniel Thompson		depends on ARCH_OMAP730
737c26b9993SDaniel Thompson		select DEBUG_UART_8250
738c26b9993SDaniel Thompson		help
739c26b9993SDaniel Thompson		  Say Y here if you want kernel low-level debugging support
740c26b9993SDaniel Thompson		  on OMAP730 based platforms on the UART2.
741c26b9993SDaniel Thompson
742c26b9993SDaniel Thompson	config DEBUG_OMAP7XXUART3
743c26b9993SDaniel Thompson		bool "Kernel low-level debugging via OMAP730 UART3"
744c26b9993SDaniel Thompson		depends on ARCH_OMAP730
745c26b9993SDaniel Thompson		select DEBUG_UART_8250
746c26b9993SDaniel Thompson		help
747c26b9993SDaniel Thompson		  Say Y here if you want kernel low-level debugging support
748c26b9993SDaniel Thompson		  on OMAP730 based platforms on the UART3.
749c26b9993SDaniel Thompson
750cce278d2SRussell King	config DEBUG_TI81XXUART1
751cce278d2SRussell King		bool "Kernel low-level debugging messages via TI81XX UART1 (ti8148evm)"
752cce278d2SRussell King		depends on ARCH_OMAP2PLUS
7532d1f7d2eSTony Lindgren		select DEBUG_UART_8250
754cce278d2SRussell King
755cce278d2SRussell King	config DEBUG_TI81XXUART2
756cce278d2SRussell King		bool "Kernel low-level debugging messages via TI81XX UART2"
757cce278d2SRussell King		depends on ARCH_OMAP2PLUS
7582d1f7d2eSTony Lindgren		select DEBUG_UART_8250
759cce278d2SRussell King
760cce278d2SRussell King	config DEBUG_TI81XXUART3
761cce278d2SRussell King		bool "Kernel low-level debugging messages via TI81XX UART3 (ti8168evm)"
762cce278d2SRussell King		depends on ARCH_OMAP2PLUS
7632d1f7d2eSTony Lindgren		select DEBUG_UART_8250
764cce278d2SRussell King
765cce278d2SRussell King	config DEBUG_AM33XXUART1
766cce278d2SRussell King		bool "Kernel low-level debugging messages via AM33XX UART1"
767cce278d2SRussell King		depends on ARCH_OMAP2PLUS
76851ef7003STony Lindgren		select DEBUG_UART_8250
769cce278d2SRussell King
770cce278d2SRussell King	config DEBUG_ZOOM_UART
771cce278d2SRussell King		bool "Kernel low-level debugging messages via Zoom2/3 UART"
772cce278d2SRussell King		depends on ARCH_OMAP2PLUS
773cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
774808b7e07STony Lindgren
77559bba2a9SRob Herring	config DEBUG_PICOXCELL_UART
77659bba2a9SRob Herring		depends on ARCH_PICOXCELL
77759bba2a9SRob Herring		bool "Use PicoXcell UART for low-level debug"
7780b4cccbeSRussell King		select DEBUG_UART_8250
77959bba2a9SRob Herring		help
78059bba2a9SRob Herring		  Say Y here if you want kernel low-level debugging support
78159bba2a9SRob Herring		  on PicoXcell based platforms.
78259bba2a9SRob Herring
7830a43cd3bSHaojian Zhuang	config DEBUG_PXA_UART1
7840a43cd3bSHaojian Zhuang		depends on ARCH_PXA
7850a43cd3bSHaojian Zhuang		bool "Use PXA UART1 for low-level debug"
7864a003647SRussell King		select DEBUG_UART_8250
7870a43cd3bSHaojian Zhuang		help
7880a43cd3bSHaojian Zhuang		  Say Y here if you want kernel low-level debugging support
7890a43cd3bSHaojian Zhuang		  on PXA UART1.
7900a43cd3bSHaojian Zhuang
7911dc93416SArnd Bergmann	config DEBUG_QCOM_UARTDM
7921dc93416SArnd Bergmann		bool "Kernel low-level debugging messages via QCOM UARTDM"
7931dc93416SArnd Bergmann		depends on ARCH_QCOM
7941dc93416SArnd Bergmann		help
7951dc93416SArnd Bergmann		  Say Y here if you want the debug print routines to direct
7961dc93416SArnd Bergmann		  their output to the serial port on Qualcomm devices.
7971dc93416SArnd Bergmann
7981dc93416SArnd Bergmann		  ARCH      DEBUG_UART_PHYS   DEBUG_UART_VIRT
7991dc93416SArnd Bergmann		  APQ8064   0x16640000        0xf0040000
8001dc93416SArnd Bergmann		  APQ8084   0xf995e000        0xfa75e000
8017b87fe94SChristian Lamparter		  IPQ4019   0x078af000        0xf78af000
8021dc93416SArnd Bergmann		  MSM8X60   0x19c40000        0xf0040000
8031dc93416SArnd Bergmann		  MSM8960   0x16440000        0xf0040000
8041dc93416SArnd Bergmann		  MSM8974   0xf991e000        0xfa71e000
8051dc93416SArnd Bergmann
8061dc93416SArnd Bergmann		  Please adjust DEBUG_UART_PHYS and DEBUG_UART_BASE configuration
8071dc93416SArnd Bergmann		  options based on your needs.
8081dc93416SArnd Bergmann
809e76f4750SRussell King	config DEBUG_REALVIEW_STD_PORT
810e76f4750SRussell King		bool "RealView Default UART"
811e76f4750SRussell King		depends on ARCH_REALVIEW
8125c972af4SRussell King		select DEBUG_UART_PL01X
813e76f4750SRussell King		help
814e76f4750SRussell King		  Say Y here if you want the debug print routines to direct
815e76f4750SRussell King		  their output to the serial port on RealView EB, PB11MP, PBA8
816e76f4750SRussell King		  and PBX platforms.
817e76f4750SRussell King
818e76f4750SRussell King	config DEBUG_REALVIEW_PB1176_PORT
819e76f4750SRussell King		bool "RealView PB1176 UART"
820e76f4750SRussell King		depends on MACH_REALVIEW_PB1176
8215c972af4SRussell King		select DEBUG_UART_PL01X
822e76f4750SRussell King		help
823e76f4750SRussell King		  Say Y here if you want the debug print routines to direct
824e76f4750SRussell King		  their output to the standard serial port on the RealView
825e76f4750SRussell King		  PB1176 platform.
826e76f4750SRussell King
827a3b882f9SAndy Yan	config DEBUG_RV1108_UART0
828a3b882f9SAndy Yan		bool "Kernel low-level debugging messages via Rockchip RV1108 UART0"
829a3b882f9SAndy Yan		depends on ARCH_ROCKCHIP
830a3b882f9SAndy Yan		select DEBUG_UART_8250
831a3b882f9SAndy Yan		help
832a3b882f9SAndy Yan		  Say Y here if you want kernel low-level debugging support
833a3b882f9SAndy Yan                  on Rockchip RV1108 based platforms.
834a3b882f9SAndy Yan
835a3b882f9SAndy Yan	config DEBUG_RV1108_UART1
836a3b882f9SAndy Yan		bool "Kernel low-level debugging messages via Rockchip RV1108 UART1"
837a3b882f9SAndy Yan		depends on ARCH_ROCKCHIP
838a3b882f9SAndy Yan		select DEBUG_UART_8250
839a3b882f9SAndy Yan		help
840a3b882f9SAndy Yan		  Say Y here if you want kernel low-level debugging support
841a3b882f9SAndy Yan		  on Rockchip RV1108 based platforms.
842a3b882f9SAndy Yan
843a3b882f9SAndy Yan	config DEBUG_RV1108_UART2
844a3b882f9SAndy Yan		bool "Kernel low-level debugging messages via Rockchip RV1108 UART2"
845a3b882f9SAndy Yan		depends on ARCH_ROCKCHIP
846a3b882f9SAndy Yan		select DEBUG_UART_8250
847a3b882f9SAndy Yan		help
848a3b882f9SAndy Yan		  Say Y here if you want kernel low-level debugging support
849a3b882f9SAndy Yan		  on Rockchip RV1108 based platforms.
850a3b882f9SAndy Yan
851cce278d2SRussell King	config DEBUG_RK29_UART0
852cce278d2SRussell King		bool "Kernel low-level debugging messages via Rockchip RK29 UART0"
85338bd6892SHeiko Stuebner		depends on ARCH_ROCKCHIP
8544a003647SRussell King		select DEBUG_UART_8250
855cce278d2SRussell King		help
856cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
857cce278d2SRussell King		  on Rockchip based platforms.
858cce278d2SRussell King
859cce278d2SRussell King	config DEBUG_RK29_UART1
860cce278d2SRussell King		bool "Kernel low-level debugging messages via Rockchip RK29 UART1"
861cce278d2SRussell King		depends on ARCH_ROCKCHIP
8624a003647SRussell King		select DEBUG_UART_8250
863cce278d2SRussell King		help
864cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
865cce278d2SRussell King		  on Rockchip based platforms.
866cce278d2SRussell King
867cce278d2SRussell King	config DEBUG_RK29_UART2
868cce278d2SRussell King		bool "Kernel low-level debugging messages via Rockchip RK29 UART2"
869cce278d2SRussell King		depends on ARCH_ROCKCHIP
8704a003647SRussell King		select DEBUG_UART_8250
871cce278d2SRussell King		help
872cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
873cce278d2SRussell King		  on Rockchip based platforms.
874cce278d2SRussell King
875cce278d2SRussell King	config DEBUG_RK3X_UART0
876aa9c4f74SHeiko Stuebner		bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART0"
877cce278d2SRussell King		depends on ARCH_ROCKCHIP
8784a003647SRussell King		select DEBUG_UART_8250
879cce278d2SRussell King		help
880cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
881cce278d2SRussell King		  on Rockchip based platforms.
882cce278d2SRussell King
883cce278d2SRussell King	config DEBUG_RK3X_UART1
884aa9c4f74SHeiko Stuebner		bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART1"
885cce278d2SRussell King		depends on ARCH_ROCKCHIP
8864a003647SRussell King		select DEBUG_UART_8250
887cce278d2SRussell King		help
888cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
889cce278d2SRussell King		  on Rockchip based platforms.
890cce278d2SRussell King
891cce278d2SRussell King	config DEBUG_RK3X_UART2
892aa9c4f74SHeiko Stuebner		bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART2"
893cce278d2SRussell King		depends on ARCH_ROCKCHIP
8944a003647SRussell King		select DEBUG_UART_8250
895cce278d2SRussell King		help
896cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
897cce278d2SRussell King		  on Rockchip based platforms.
898cce278d2SRussell King
899cce278d2SRussell King	config DEBUG_RK3X_UART3
900aa9c4f74SHeiko Stuebner		bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART3"
901cce278d2SRussell King		depends on ARCH_ROCKCHIP
9024a003647SRussell King		select DEBUG_UART_8250
90338bd6892SHeiko Stuebner		help
90438bd6892SHeiko Stuebner		  Say Y here if you want kernel low-level debugging support
90538bd6892SHeiko Stuebner		  on Rockchip based platforms.
90638bd6892SHeiko Stuebner
907efd02ee9SHeiko Stuebner	config DEBUG_RK32_UART2
908efd02ee9SHeiko Stuebner		bool "Kernel low-level debugging messages via Rockchip RK32 UART2"
909efd02ee9SHeiko Stuebner		depends on ARCH_ROCKCHIP
910efd02ee9SHeiko Stuebner		select DEBUG_UART_8250
911efd02ee9SHeiko Stuebner		help
912efd02ee9SHeiko Stuebner		  Say Y here if you want kernel low-level debugging support
913efd02ee9SHeiko Stuebner		  on Rockchip RK32xx based platforms.
914efd02ee9SHeiko Stuebner
9157a2071c5SGeert Uytterhoeven	config DEBUG_R7S72100_SCIF2
9167a2071c5SGeert Uytterhoeven		bool "Kernel low-level debugging messages via SCIF2 on R7S72100"
9177a2071c5SGeert Uytterhoeven		depends on ARCH_R7S72100
9187a2071c5SGeert Uytterhoeven		help
9197a2071c5SGeert Uytterhoeven		  Say Y here if you want kernel low-level debugging support
9207a2071c5SGeert Uytterhoeven		  via SCIF2 on Renesas RZ/A1H (R7S72100).
9217a2071c5SGeert Uytterhoeven
9227a2071c5SGeert Uytterhoeven	config DEBUG_RCAR_GEN1_SCIF0
9237a2071c5SGeert Uytterhoeven		bool "Kernel low-level debugging messages via SCIF0 on R8A7778"
9247a2071c5SGeert Uytterhoeven		depends on ARCH_R8A7778
9257a2071c5SGeert Uytterhoeven		help
9267a2071c5SGeert Uytterhoeven		  Say Y here if you want kernel low-level debugging support
9277a2071c5SGeert Uytterhoeven		  via SCIF0 on Renesas R-Car M1A (R8A7778).
9287a2071c5SGeert Uytterhoeven
9297a2071c5SGeert Uytterhoeven	config DEBUG_RCAR_GEN1_SCIF2
9307a2071c5SGeert Uytterhoeven		bool "Kernel low-level debugging messages via SCIF2 on R8A7779"
9317a2071c5SGeert Uytterhoeven		depends on ARCH_R8A7779
9327a2071c5SGeert Uytterhoeven		help
9337a2071c5SGeert Uytterhoeven		  Say Y here if you want kernel low-level debugging support
9347a2071c5SGeert Uytterhoeven		  via SCIF2 on Renesas R-Car H1 (R8A7779).
9357a2071c5SGeert Uytterhoeven
9367a2071c5SGeert Uytterhoeven	config DEBUG_RCAR_GEN2_SCIF0
937fcfbb6f1SChris Paterson		bool "Kernel low-level debugging messages via SCIF0 on R-Car Gen2 and RZ/G1"
938fcfbb6f1SChris Paterson		depends on ARCH_R8A7743 || ARCH_R8A7790 || ARCH_R8A7791 || \
939fcfbb6f1SChris Paterson			ARCH_R8A7792 || ARCH_R8A7793
9407a2071c5SGeert Uytterhoeven		help
9417a2071c5SGeert Uytterhoeven		  Say Y here if you want kernel low-level debugging support
942fcfbb6f1SChris Paterson		  via SCIF0 on Renesas RZ/G1M (R8A7743), R-Car H2 (R8A7790),
943fcfbb6f1SChris Paterson		  M2-W (R8A7791), V2H (R8A7792), or M2-N (R8A7793).
9447a2071c5SGeert Uytterhoeven
9457a2071c5SGeert Uytterhoeven	config DEBUG_RCAR_GEN2_SCIF2
9467a2071c5SGeert Uytterhoeven		bool "Kernel low-level debugging messages via SCIF2 on R8A7794"
9477a2071c5SGeert Uytterhoeven		depends on ARCH_R8A7794
9487a2071c5SGeert Uytterhoeven		help
9497a2071c5SGeert Uytterhoeven		  Say Y here if you want kernel low-level debugging support
9507a2071c5SGeert Uytterhoeven		  via SCIF2 on Renesas R-Car E2 (R8A7794).
9517a2071c5SGeert Uytterhoeven
9528e5f2d65SFabrizio Castro	config DEBUG_RCAR_GEN2_SCIF4
9538e5f2d65SFabrizio Castro		bool "Kernel low-level debugging messages via SCIF4 on R8A7745"
9548e5f2d65SFabrizio Castro		depends on ARCH_R8A7745
9558e5f2d65SFabrizio Castro		help
9568e5f2d65SFabrizio Castro		  Say Y here if you want kernel low-level debugging support
9578e5f2d65SFabrizio Castro		  via SCIF4 on Renesas RZ/G1E (R8A7745).
9588e5f2d65SFabrizio Castro
9597a2071c5SGeert Uytterhoeven	config DEBUG_RMOBILE_SCIFA0
96059b89af1SMagnus Damm		bool "Kernel low-level debugging messages via SCIFA0 on R8A73A4"
96159b89af1SMagnus Damm		depends on ARCH_R8A73A4
9627a2071c5SGeert Uytterhoeven		help
9637a2071c5SGeert Uytterhoeven		  Say Y here if you want kernel low-level debugging support
96459b89af1SMagnus Damm		  via SCIFA0 on Renesas R-Mobile APE6 (R8A73A4).
9657a2071c5SGeert Uytterhoeven
9667a2071c5SGeert Uytterhoeven	config DEBUG_RMOBILE_SCIFA1
9677a2071c5SGeert Uytterhoeven		bool "Kernel low-level debugging messages via SCIFA1 on R8A7740"
9687a2071c5SGeert Uytterhoeven		depends on ARCH_R8A7740
9697a2071c5SGeert Uytterhoeven		help
9707a2071c5SGeert Uytterhoeven		  Say Y here if you want kernel low-level debugging support
9717a2071c5SGeert Uytterhoeven		  via SCIFA1 on Renesas R-Mobile A1 (R8A7740).
9727a2071c5SGeert Uytterhoeven
9737a2071c5SGeert Uytterhoeven	config DEBUG_RMOBILE_SCIFA4
9747a2071c5SGeert Uytterhoeven		bool "Kernel low-level debugging messages via SCIFA4 on SH73A0"
9757a2071c5SGeert Uytterhoeven		depends on ARCH_SH73A0
9767a2071c5SGeert Uytterhoeven		help
9777a2071c5SGeert Uytterhoeven		  Say Y here if you want kernel low-level debugging support
9787a2071c5SGeert Uytterhoeven		  via SCIFA4 on Renesas SH-Mobile AG5 (SH73A0).
9797a2071c5SGeert Uytterhoeven
980e76f4750SRussell King	config DEBUG_S3C_UART0
981e76f4750SRussell King		depends on PLAT_SAMSUNG
982a2e40710SArnd Bergmann		select DEBUG_EXYNOS_UART if ARCH_EXYNOS
9831899de28SHeiko Stuebner		select DEBUG_S3C24XX_UART if ARCH_S3C24XX
984bb08dea1SArnd Bergmann		select DEBUG_S3C64XX_UART if ARCH_S3C64XX
9857bab7d9eSTomasz Figa		select DEBUG_S5PV210_UART if ARCH_S5PV210
9865cc8a016SSachin Kamat		bool "Use Samsung S3C UART 0 for low-level debug"
987e76f4750SRussell King		help
988e76f4750SRussell King		  Say Y here if you want the debug print routines to direct
989e76f4750SRussell King		  their output to UART 0. The port must have been initialised
990e76f4750SRussell King		  by the boot-loader before use.
991e76f4750SRussell King
992e76f4750SRussell King	config DEBUG_S3C_UART1
993e76f4750SRussell King		depends on PLAT_SAMSUNG
994a2e40710SArnd Bergmann		select DEBUG_EXYNOS_UART if ARCH_EXYNOS
9951899de28SHeiko Stuebner		select DEBUG_S3C24XX_UART if ARCH_S3C24XX
996bb08dea1SArnd Bergmann		select DEBUG_S3C64XX_UART if ARCH_S3C64XX
9977bab7d9eSTomasz Figa		select DEBUG_S5PV210_UART if ARCH_S5PV210
9985cc8a016SSachin Kamat		bool "Use Samsung S3C UART 1 for low-level debug"
999e76f4750SRussell King		help
1000e76f4750SRussell King		  Say Y here if you want the debug print routines to direct
1001e76f4750SRussell King		  their output to UART 1. The port must have been initialised
1002e76f4750SRussell King		  by the boot-loader before use.
1003e76f4750SRussell King
1004e76f4750SRussell King	config DEBUG_S3C_UART2
1005e76f4750SRussell King		depends on PLAT_SAMSUNG
1006a2e40710SArnd Bergmann		select DEBUG_EXYNOS_UART if ARCH_EXYNOS
10071899de28SHeiko Stuebner		select DEBUG_S3C24XX_UART if ARCH_S3C24XX
1008bb08dea1SArnd Bergmann		select DEBUG_S3C64XX_UART if ARCH_S3C64XX
10097bab7d9eSTomasz Figa		select DEBUG_S5PV210_UART if ARCH_S5PV210
10105cc8a016SSachin Kamat		bool "Use Samsung S3C UART 2 for low-level debug"
1011e76f4750SRussell King		help
1012e76f4750SRussell King		  Say Y here if you want the debug print routines to direct
1013e76f4750SRussell King		  their output to UART 2. The port must have been initialised
1014e76f4750SRussell King		  by the boot-loader before use.
1015e76f4750SRussell King
10165fa23ddeSOlof Johansson	config DEBUG_S3C_UART3
10177bab7d9eSTomasz Figa		depends on PLAT_SAMSUNG && (ARCH_EXYNOS || ARCH_S5PV210)
10187bab7d9eSTomasz Figa		select DEBUG_EXYNOS_UART if ARCH_EXYNOS
1019bb08dea1SArnd Bergmann		select DEBUG_S3C64XX_UART if ARCH_S3C64XX
10207bab7d9eSTomasz Figa		select DEBUG_S5PV210_UART if ARCH_S5PV210
10215cc8a016SSachin Kamat		bool "Use Samsung S3C UART 3 for low-level debug"
10225fa23ddeSOlof Johansson		help
10235fa23ddeSOlof Johansson		  Say Y here if you want the debug print routines to direct
10245fa23ddeSOlof Johansson		  their output to UART 3. The port must have been initialised
10255fa23ddeSOlof Johansson		  by the boot-loader before use.
10265fa23ddeSOlof Johansson
1027daf67dfcSHeiko Stuebner	config DEBUG_S3C2410_UART0
1028daf67dfcSHeiko Stuebner		depends on ARCH_S3C24XX
1029daf67dfcSHeiko Stuebner		select DEBUG_S3C2410_UART
1030daf67dfcSHeiko Stuebner		bool "Use S3C2410/S3C2412 UART 0 for low-level debug"
1031daf67dfcSHeiko Stuebner		help
1032daf67dfcSHeiko Stuebner		  Say Y here if you want the debug print routines to direct
1033daf67dfcSHeiko Stuebner		  their output to UART 0. The port must have been initialised
1034daf67dfcSHeiko Stuebner		  by the boot-loader before use.
1035daf67dfcSHeiko Stuebner
1036daf67dfcSHeiko Stuebner	config DEBUG_S3C2410_UART1
1037daf67dfcSHeiko Stuebner		depends on ARCH_S3C24XX
1038daf67dfcSHeiko Stuebner		select DEBUG_S3C2410_UART
1039daf67dfcSHeiko Stuebner		bool "Use S3C2410/S3C2412 UART 1 for low-level debug"
1040daf67dfcSHeiko Stuebner		help
1041daf67dfcSHeiko Stuebner		  Say Y here if you want the debug print routines to direct
1042daf67dfcSHeiko Stuebner		  their output to UART 1. The port must have been initialised
1043daf67dfcSHeiko Stuebner		  by the boot-loader before use.
1044daf67dfcSHeiko Stuebner
1045daf67dfcSHeiko Stuebner	config DEBUG_S3C2410_UART2
1046daf67dfcSHeiko Stuebner		depends on ARCH_S3C24XX
1047daf67dfcSHeiko Stuebner		select DEBUG_S3C2410_UART
1048daf67dfcSHeiko Stuebner		bool "Use S3C2410/S3C2412 UART 2 for low-level debug"
1049daf67dfcSHeiko Stuebner		help
1050daf67dfcSHeiko Stuebner		  Say Y here if you want the debug print routines to direct
1051daf67dfcSHeiko Stuebner		  their output to UART 2. The port must have been initialised
1052daf67dfcSHeiko Stuebner		  by the boot-loader before use.
1053daf67dfcSHeiko Stuebner
1054e6131fa3SDmitry Eremin-Solenikov	config DEBUG_SA1100
1055e6131fa3SDmitry Eremin-Solenikov		depends on ARCH_SA1100
1056e6131fa3SDmitry Eremin-Solenikov		bool "Use SA1100 UARTs for low-level debug"
1057e6131fa3SDmitry Eremin-Solenikov		help
1058e6131fa3SDmitry Eremin-Solenikov		  Say Y here if you want kernel low-level debugging support
1059e6131fa3SDmitry Eremin-Solenikov		  on SA-11x0 UART ports. The kernel will check for the first
1060e6131fa3SDmitry Eremin-Solenikov		  enabled UART in a sequence 3-1-2.
1061e6131fa3SDmitry Eremin-Solenikov
1062de73c162SDinh Nguyen	config DEBUG_SOCFPGA_UART0
10636111bf7cSRob Herring		depends on ARCH_SOCFPGA
1064de73c162SDinh Nguyen		bool "Use SOCFPGA UART0 for low-level debug"
10650b4cccbeSRussell King		select DEBUG_UART_8250
10666111bf7cSRob Herring		help
10676111bf7cSRob Herring		  Say Y here if you want kernel low-level debugging support
1068de73c162SDinh Nguyen		  on SOCFPGA(Cyclone 5 and Arria 5) based platforms.
1069de73c162SDinh Nguyen
1070de73c162SDinh Nguyen	config DEBUG_SOCFPGA_UART1
1071de73c162SDinh Nguyen		depends on ARCH_SOCFPGA
1072de73c162SDinh Nguyen		bool "Use SOCFPGA UART1 for low-level debug"
1073de73c162SDinh Nguyen		select DEBUG_UART_8250
1074de73c162SDinh Nguyen		help
1075de73c162SDinh Nguyen		  Say Y here if you want kernel low-level debugging support
1076de73c162SDinh Nguyen		  on SOCFPGA(Arria 10) based platforms.
1077de73c162SDinh Nguyen
10786111bf7cSRob Herring
1079d4da889aSChen-Yu Tsai	config DEBUG_SUN9I_UART0
1080d4da889aSChen-Yu Tsai		bool "Kernel low-level debugging messages via sun9i UART0"
1081d4da889aSChen-Yu Tsai		depends on MACH_SUN9I
1082d4da889aSChen-Yu Tsai		select DEBUG_UART_8250
1083d4da889aSChen-Yu Tsai		help
1084d4da889aSChen-Yu Tsai		  Say Y here if you want kernel low-level debugging support
1085d4da889aSChen-Yu Tsai		  on Allwinner A80 based platforms on the UART0.
1086d4da889aSChen-Yu Tsai
1087aa25115aSStefan Roese	config DEBUG_SUNXI_UART0
1088aa25115aSStefan Roese		bool "Kernel low-level debugging messages via sunXi UART0"
1089aa25115aSStefan Roese		depends on ARCH_SUNXI
10904a003647SRussell King		select DEBUG_UART_8250
1091aa25115aSStefan Roese		help
1092aa25115aSStefan Roese		  Say Y here if you want kernel low-level debugging support
1093aa25115aSStefan Roese		  on Allwinner A1X based platforms on the UART0.
1094aa25115aSStefan Roese
1095cb84fa18SMaxime Ripard	config DEBUG_SUNXI_UART1
1096cb84fa18SMaxime Ripard		bool "Kernel low-level debugging messages via sunXi UART1"
1097cb84fa18SMaxime Ripard		depends on ARCH_SUNXI
10984a003647SRussell King		select DEBUG_UART_8250
1099cb84fa18SMaxime Ripard		help
1100cb84fa18SMaxime Ripard		  Say Y here if you want kernel low-level debugging support
1101cb84fa18SMaxime Ripard		  on Allwinner A1X based platforms on the UART1.
1102cb84fa18SMaxime Ripard
1103c4718543SChen-Yu Tsai	config DEBUG_SUNXI_R_UART
1104c4718543SChen-Yu Tsai		bool "Kernel low-level debugging messages via sunXi R_UART"
1105c4718543SChen-Yu Tsai		depends on MACH_SUN6I || MACH_SUN8I
1106c4718543SChen-Yu Tsai		select DEBUG_UART_8250
1107c4718543SChen-Yu Tsai		help
1108c4718543SChen-Yu Tsai		  Say Y here if you want kernel low-level debugging support
1109c4718543SChen-Yu Tsai		  on Allwinner A31/A23 based platforms on the R_UART.
1110c4718543SChen-Yu Tsai
11117f46a107SBarry Song	config DEBUG_SIRFPRIMA2_UART1
11127f46a107SBarry Song		bool "Kernel low-level debugging messages via SiRFprimaII UART1"
11137f46a107SBarry Song		depends on ARCH_PRIMA2
111401ea63d9SGuo Zeng		select DEBUG_SIRFSOC_UART
11157f46a107SBarry Song		help
11167f46a107SBarry Song		  Say Y here if you want the debug print routines to direct
11177f46a107SBarry Song		  their output to the uart1 port on SiRFprimaII devices.
11187f46a107SBarry Song
111901ea63d9SGuo Zeng	config DEBUG_SIRFATLAS7_UART0
112001ea63d9SGuo Zeng		bool "Kernel low-level debugging messages via SiRFatlas7 UART0"
112101ea63d9SGuo Zeng		depends on ARCH_ATLAS7
112201ea63d9SGuo Zeng		select DEBUG_SIRFSOC_UART
11237f46a107SBarry Song		help
11247f46a107SBarry Song		  Say Y here if you want the debug print routines to direct
112501ea63d9SGuo Zeng		  their output to the uart0 port on SiRFATLAS7 devices.The uart0
112601ea63d9SGuo Zeng		  is used on SiRFATLAS7 as a extra debug port.sometimes an extra
112701ea63d9SGuo Zeng		  debug port can be very useful.
112801ea63d9SGuo Zeng
112901ea63d9SGuo Zeng	config DEBUG_SIRFATLAS7_UART1
113001ea63d9SGuo Zeng		bool "Kernel low-level debugging messages via SiRFatlas7 UART1"
113101ea63d9SGuo Zeng		depends on ARCH_ATLAS7
113201ea63d9SGuo Zeng		select DEBUG_SIRFSOC_UART
113301ea63d9SGuo Zeng		help
113401ea63d9SGuo Zeng		  Say Y here if you want the debug print routines to direct
113501ea63d9SGuo Zeng		  their output to the uart1 port on SiRFATLAS7 devices.
11367f46a107SBarry Song
1137375d84cfSArnd Bergmann	config DEBUG_SPEAR3XX
1138375d84cfSArnd Bergmann		bool "Kernel low-level debugging messages via ST SPEAr 3xx/6xx UART"
1139375d84cfSArnd Bergmann		depends on ARCH_SPEAR3XX || ARCH_SPEAR6XX
1140375d84cfSArnd Bergmann		select DEBUG_UART_PL01X
1141375d84cfSArnd Bergmann		help
1142375d84cfSArnd Bergmann		  Say Y here if you want kernel low-level debugging support
1143375d84cfSArnd Bergmann		  on ST SPEAr based platforms.
1144375d84cfSArnd Bergmann
1145375d84cfSArnd Bergmann	config DEBUG_SPEAR13XX
1146375d84cfSArnd Bergmann		bool "Kernel low-level debugging messages via ST SPEAr 13xx UART"
1147375d84cfSArnd Bergmann		depends on ARCH_SPEAR13XX
1148375d84cfSArnd Bergmann		select DEBUG_UART_PL01X
1149375d84cfSArnd Bergmann		help
1150375d84cfSArnd Bergmann		  Say Y here if you want kernel low-level debugging support
1151375d84cfSArnd Bergmann		  on ST SPEAr13xx based platforms.
1152375d84cfSArnd Bergmann
1153cce278d2SRussell King	config STIH41X_DEBUG_ASC2
1154cce278d2SRussell King		bool "Use StiH415/416 ASC2 UART for low-level debug"
11555562b800SArnd Bergmann		depends on ARCH_STI
1156cce278d2SRussell King		select DEBUG_STI_UART
11575562b800SArnd Bergmann		help
11585562b800SArnd Bergmann		  Say Y here if you want kernel low-level debugging support
1159cce278d2SRussell King		  on STiH415/416 based platforms like b2000, which has
1160cce278d2SRussell King		  default UART wired up to ASC2.
1161cce278d2SRussell King
1162cce278d2SRussell King		  If unsure, say N.
1163cce278d2SRussell King
1164cce278d2SRussell King	config STIH41X_DEBUG_SBC_ASC1
1165cce278d2SRussell King		bool "Use StiH415/416 SBC ASC1 UART for low-level debug"
1166cce278d2SRussell King		depends on ARCH_STI
1167cce278d2SRussell King		select DEBUG_STI_UART
1168cce278d2SRussell King		help
1169cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
1170cce278d2SRussell King		  on STiH415/416 based platforms like b2020. which has
1171cce278d2SRussell King		  default UART wired up to SBC ASC1.
11725562b800SArnd Bergmann
11735562b800SArnd Bergmann		  If unsure, say N.
11745562b800SArnd Bergmann
11751da177e4SLinus Torvalds	config TEGRA_DEBUG_UART_AUTO_ODMDATA
11761da177e4SLinus Torvalds		bool "Kernel low-level debugging messages via Tegra UART via ODMDATA"
11771da177e4SLinus Torvalds		depends on ARCH_TEGRA
11781da177e4SLinus Torvalds		select DEBUG_TEGRA_UART
11791da177e4SLinus Torvalds		help
11801da177e4SLinus Torvalds		  Automatically determines which UART to use for low-level
11811da177e4SLinus Torvalds		  debug based on the ODMDATA value. This value is part of
11821da177e4SLinus Torvalds		  the BCT, and is written to the boot memory device using
11831da177e4SLinus Torvalds		  nvflash, or other flashing tool.  When bits 19:18 are 3,
11841da177e4SLinus Torvalds		  then bits 17:15 indicate which UART to use; 0/1/2/3/4
11851da177e4SLinus Torvalds		  are UART A/B/C/D/E.
11861da177e4SLinus Torvalds
11871da177e4SLinus Torvalds	config TEGRA_DEBUG_UARTA
11881da177e4SLinus Torvalds		bool "Kernel low-level debugging messages via Tegra UART A"
11891da177e4SLinus Torvalds		depends on ARCH_TEGRA
11901da177e4SLinus Torvalds		select DEBUG_TEGRA_UART
11911da177e4SLinus Torvalds		help
11921da177e4SLinus Torvalds		  Say Y here if you want kernel low-level debugging support
11931da177e4SLinus Torvalds		  on Tegra based platforms.
11941da177e4SLinus Torvalds
11951da177e4SLinus Torvalds	config TEGRA_DEBUG_UARTB
11961da177e4SLinus Torvalds		bool "Kernel low-level debugging messages via Tegra UART B"
11971da177e4SLinus Torvalds		depends on ARCH_TEGRA
11981da177e4SLinus Torvalds		select DEBUG_TEGRA_UART
11991da177e4SLinus Torvalds		help
12001da177e4SLinus Torvalds		  Say Y here if you want kernel low-level debugging support
12011da177e4SLinus Torvalds		  on Tegra based platforms.
12021da177e4SLinus Torvalds
12031da177e4SLinus Torvalds	config TEGRA_DEBUG_UARTC
12041da177e4SLinus Torvalds		bool "Kernel low-level debugging messages via Tegra UART C"
12051da177e4SLinus Torvalds		depends on ARCH_TEGRA
12061da177e4SLinus Torvalds		select DEBUG_TEGRA_UART
12071da177e4SLinus Torvalds		help
1208e76f4750SRussell King		  Say Y here if you want kernel low-level debugging support
1209e76f4750SRussell King		  on Tegra based platforms.
1210e76f4750SRussell King
1211e76f4750SRussell King	config TEGRA_DEBUG_UARTD
1212e76f4750SRussell King		bool "Kernel low-level debugging messages via Tegra UART D"
1213e76f4750SRussell King		depends on ARCH_TEGRA
1214e76f4750SRussell King		select DEBUG_TEGRA_UART
1215e76f4750SRussell King		help
1216e76f4750SRussell King		  Say Y here if you want kernel low-level debugging support
1217e76f4750SRussell King		  on Tegra based platforms.
1218e76f4750SRussell King
1219e76f4750SRussell King	config TEGRA_DEBUG_UARTE
1220e76f4750SRussell King		bool "Kernel low-level debugging messages via Tegra UART E"
1221e76f4750SRussell King		depends on ARCH_TEGRA
1222e76f4750SRussell King		select DEBUG_TEGRA_UART
1223e76f4750SRussell King		help
1224e76f4750SRussell King		  Say Y here if you want kernel low-level debugging support
1225e76f4750SRussell King		  on Tegra based platforms.
1226e76f4750SRussell King
1227dd324da7SLinus Walleij	config DEBUG_U300_UART
1228dd324da7SLinus Walleij		bool "Kernel low-level debugging messages via U300 UART0"
1229dd324da7SLinus Walleij		depends on ARCH_U300
12305c972af4SRussell King		select DEBUG_UART_PL01X
1231dd324da7SLinus Walleij		help
1232dd324da7SLinus Walleij		  Say Y here if you want the debug print routines to direct
1233dd324da7SLinus Walleij		  their output to the uart port on U300 devices.
1234dd324da7SLinus Walleij
1235f87b95ddSLinus Walleij	config DEBUG_UX500_UART
1236f87b95ddSLinus Walleij		depends on ARCH_U8500
1237f87b95ddSLinus Walleij		bool "Use Ux500 UART for low-level debug"
1238f87b95ddSLinus Walleij		help
1239f87b95ddSLinus Walleij		  Say Y here if you want kernel low-level debugging support
1240f87b95ddSLinus Walleij		  on Ux500 based platforms.
1241f87b95ddSLinus Walleij
12424db22c10SArnd Bergmann	config DEBUG_VERSATILE
12434db22c10SArnd Bergmann		bool "Kernel low-level debugging messages via ARM Versatile UART"
12444db22c10SArnd Bergmann		depends on ARCH_VERSATILE
12454db22c10SArnd Bergmann		select DEBUG_UART_PL01X
1246d6682085SMatthias Brugger		help
1247d6682085SMatthias Brugger		  Say Y here if you want kernel low-level debugging support
12484db22c10SArnd Bergmann		  on ARM Versatile platforms.
124965ec48c0SJoe.C
12501b820eafSPawel Moll	config DEBUG_VEXPRESS_UART0_DETECT
12511b820eafSPawel Moll		bool "Autodetect UART0 on Versatile Express Cortex-A core tiles"
12521b820eafSPawel Moll		depends on ARCH_VEXPRESS && CPU_CP15_MMU
12531b820eafSPawel Moll		help
12541b820eafSPawel Moll		  This option enables a simple heuristic which tries to determine
12551b820eafSPawel Moll		  the motherboard's memory map variant (original or RS1) and then
12561b820eafSPawel Moll		  choose the relevant UART0 base address.
12571b820eafSPawel Moll
12581b820eafSPawel Moll		  Note that this will only work with standard A-class core tiles,
12591b820eafSPawel Moll		  and may fail with non-standard SMM or custom software models.
12601b820eafSPawel Moll
12611b820eafSPawel Moll	config DEBUG_VEXPRESS_UART0_CA9
12621b820eafSPawel Moll		bool "Use PL011 UART0 at 0x10009000 (V2P-CA9 core tile)"
12631b820eafSPawel Moll		depends on ARCH_VEXPRESS
12645c972af4SRussell King		select DEBUG_UART_PL01X
12651b820eafSPawel Moll		help
12661b820eafSPawel Moll		  This option selects UART0 at 0x10009000. Except for custom models,
12671b820eafSPawel Moll		  this applies only to the V2P-CA9 tile.
12681b820eafSPawel Moll
12691b820eafSPawel Moll	config DEBUG_VEXPRESS_UART0_RS1
12701b820eafSPawel Moll		bool "Use PL011 UART0 at 0x1c090000 (RS1 complaint tiles)"
12711b820eafSPawel Moll		depends on ARCH_VEXPRESS
12725c972af4SRussell King		select DEBUG_UART_PL01X
12731b820eafSPawel Moll		help
12741b820eafSPawel Moll		  This option selects UART0 at 0x1c090000. This applies to most
12751b820eafSPawel Moll		  of the tiles using the RS1 memory map, including all new A-class
12761b820eafSPawel Moll		  core tiles, FPGA-based SMMs and software models.
12771b820eafSPawel Moll
1278ed18bdc8SJonathan Austin	config DEBUG_VEXPRESS_UART0_CRX
1279ed18bdc8SJonathan Austin		bool "Use PL011 UART0 at 0xb0090000 (Cortex-R compliant tiles)"
1280ed18bdc8SJonathan Austin		depends on ARCH_VEXPRESS && !MMU
12815c972af4SRussell King		select DEBUG_UART_PL01X
1282ed18bdc8SJonathan Austin		help
1283ed18bdc8SJonathan Austin		  This option selects UART0 at 0xb0090000. This is appropriate for
1284ed18bdc8SJonathan Austin		  Cortex-R series tiles and SMMs, such as Cortex-R5 and Cortex-R7
1285ed18bdc8SJonathan Austin
12861dc93416SArnd Bergmann	config DEBUG_VF_UART
12871dc93416SArnd Bergmann		bool "Vybrid UART"
12881dc93416SArnd Bergmann		depends on SOC_VF610
12891dc93416SArnd Bergmann		help
12901dc93416SArnd Bergmann		  Say Y here if you want kernel low-level debugging support
12911dc93416SArnd Bergmann		  on Vybrid based platforms.
12921dc93416SArnd Bergmann
1293b61a2722STony Prisk	config DEBUG_VT8500_UART0
1294b61a2722STony Prisk		bool "Use UART0 on VIA/Wondermedia SoCs"
1295b61a2722STony Prisk		depends on ARCH_VT8500
1296b61a2722STony Prisk		help
1297b61a2722STony Prisk		  This option selects UART0 on VIA/Wondermedia System-on-a-chip
1298b61a2722STony Prisk		  devices, including VT8500, WM8505, WM8650 and WM8850.
1299b61a2722STony Prisk
13001dc93416SArnd Bergmann	config DEBUG_ZTE_ZX
13011dc93416SArnd Bergmann		bool "Use ZTE ZX UART"
13021dc93416SArnd Bergmann		select DEBUG_UART_PL01X
13031dc93416SArnd Bergmann		depends on ARCH_ZX
13041dc93416SArnd Bergmann		help
13051dc93416SArnd Bergmann		  Say Y here if you are enabling ZTE ZX296702 SOC and need
13061dc93416SArnd Bergmann		  debug uart support.
13071dc93416SArnd Bergmann
13081dc93416SArnd Bergmann		  This option is preferred over the platform specific
13091dc93416SArnd Bergmann		  options; the platform specific options are deprecated
13101dc93416SArnd Bergmann		  and will be soon removed.
13111dc93416SArnd Bergmann
13121dc93416SArnd Bergmann	config DEBUG_ZYNQ_UART0
13131dc93416SArnd Bergmann		bool "Kernel low-level debugging on Xilinx Zynq using UART0"
13141dc93416SArnd Bergmann		depends on ARCH_ZYNQ
13151dc93416SArnd Bergmann		help
13161dc93416SArnd Bergmann		  Say Y here if you want the debug print routines to direct
13171dc93416SArnd Bergmann		  their output to UART0 on the Zynq platform.
13181dc93416SArnd Bergmann
13191dc93416SArnd Bergmann	config DEBUG_ZYNQ_UART1
13201dc93416SArnd Bergmann		bool "Kernel low-level debugging on Xilinx Zynq using UART1"
13211dc93416SArnd Bergmann		depends on ARCH_ZYNQ
13221dc93416SArnd Bergmann		help
13231dc93416SArnd Bergmann		  Say Y here if you want the debug print routines to direct
13241dc93416SArnd Bergmann		  their output to UART1 on the Zynq platform.
13251dc93416SArnd Bergmann
13261dc93416SArnd Bergmann		  If you have a ZC702 board and want early boot messages to
13271dc93416SArnd Bergmann		  appear on the USB serial adaptor, select this option.
13281dc93416SArnd Bergmann
1329e76f4750SRussell King	config DEBUG_ICEDCC
1330e76f4750SRussell King		bool "Kernel low-level debugging via EmbeddedICE DCC channel"
1331e76f4750SRussell King		help
1332e76f4750SRussell King		  Say Y here if you want the debug print routines to direct
1333e76f4750SRussell King		  their output to the EmbeddedICE macrocell's DCC channel using
1334e76f4750SRussell King		  co-processor 14. This is known to work on the ARM9 style ICE
1335e76f4750SRussell King		  channel and on the XScale with the PEEDI.
1336e76f4750SRussell King
1337e76f4750SRussell King		  Note that the system will appear to hang during boot if there
1338e76f4750SRussell King		  is nothing connected to read from the DCC.
1339e76f4750SRussell King
1340b0df8986SRussell King	config DEBUG_SEMIHOSTING
134162194bdaSStephen Boyd		bool "Kernel low-level debug output via semihosting I/O"
1342b0df8986SRussell King		help
1343b0df8986SRussell King		  Semihosting enables code running on an ARM target to use
1344b0df8986SRussell King		  the I/O facilities on a host debugger/emulator through a
134562194bdaSStephen Boyd		  simple SVC call. The host debugger or emulator must have
1346b0df8986SRussell King		  semihosting enabled for the special svc call to be trapped
1347b0df8986SRussell King		  otherwise the kernel will crash.
1348b0df8986SRussell King
1349b0df8986SRussell King		  This is known to work with OpenOCD, as well as
1350b0df8986SRussell King		  ARM's Fast Models, or any other controlling environment
1351b0df8986SRussell King		  that implements semihosting.
1352b0df8986SRussell King
1353b0df8986SRussell King		  For more details about semihosting, please see
1354b0df8986SRussell King		  chapter 8 of DUI0203I_rvct_developer_guide.pdf from ARM Ltd.
1355b0df8986SRussell King
1356f8f1279cSRussell King	config DEBUG_LL_UART_8250
1357f8f1279cSRussell King		bool "Kernel low-level debugging via 8250 UART"
1358f8f1279cSRussell King		help
1359f8f1279cSRussell King		  Say Y here if you wish the debug print routes to direct
1360f8f1279cSRussell King		  their output to an 8250 UART.  You can use this option
1361f8f1279cSRussell King		  to provide the parameters for the 8250 UART rather than
1362f8f1279cSRussell King		  selecting one of the platform specific options above if
1363f8f1279cSRussell King		  you know the parameters for the port.
1364f8f1279cSRussell King
1365f8f1279cSRussell King		  This option is preferred over the platform specific
1366f8f1279cSRussell King		  options; the platform specific options are deprecated
1367f8f1279cSRussell King		  and will be soon removed.
1368f8f1279cSRussell King
1369494e492dSUwe Kleine-König	config DEBUG_LL_UART_EFM32
1370494e492dSUwe Kleine-König		bool "Kernel low-level debugging via efm32 UART"
1371494e492dSUwe Kleine-König		depends on ARCH_EFM32
1372494e492dSUwe Kleine-König		help
1373494e492dSUwe Kleine-König		  Say Y here if you want the debug print routines to direct
1374494e492dSUwe Kleine-König		  their output to an UART or USART port on efm32 based
1375494e492dSUwe Kleine-König		  machines. Use the following addresses for DEBUG_UART_PHYS:
1376494e492dSUwe Kleine-König
1377494e492dSUwe Kleine-König		    0x4000c000 | USART0
1378494e492dSUwe Kleine-König		    0x4000c400 | USART1
1379494e492dSUwe Kleine-König		    0x4000c800 | USART2
1380494e492dSUwe Kleine-König		    0x4000e000 | UART0
1381494e492dSUwe Kleine-König		    0x4000e400 | UART1
1382494e492dSUwe Kleine-König
1383f8f1279cSRussell King	config DEBUG_LL_UART_PL01X
1384f8f1279cSRussell King		bool "Kernel low-level debugging via ARM Ltd PL01x Primecell UART"
1385f8f1279cSRussell King		help
1386f8f1279cSRussell King		  Say Y here if you wish the debug print routes to direct
1387f8f1279cSRussell King		  their output to a PL01x Primecell UART.  You can use
1388f8f1279cSRussell King		  this option to provide the parameters for the UART
1389f8f1279cSRussell King		  rather than selecting one of the platform specific
1390f8f1279cSRussell King		  options above if you know the parameters for the port.
1391f8f1279cSRussell King
1392f8f1279cSRussell King		  This option is preferred over the platform specific
1393f8f1279cSRussell King		  options; the platform specific options are deprecated
1394f8f1279cSRussell King		  and will be soon removed.
1395f8f1279cSRussell King
13961da177e4SLinus Torvaldsendchoice
13971da177e4SLinus Torvalds
13988b2f2d03SAlexandre Belloniconfig DEBUG_AT91_UART
13998b2f2d03SAlexandre Belloni	bool
14008b2f2d03SAlexandre Belloni	depends on ARCH_AT91
14018b2f2d03SAlexandre Belloni
1402a2e40710SArnd Bergmannconfig DEBUG_EXYNOS_UART
1403a2e40710SArnd Bergmann	bool
1404a2e40710SArnd Bergmann
1405daf67dfcSHeiko Stuebnerconfig DEBUG_S3C2410_UART
1406daf67dfcSHeiko Stuebner	bool
14071899de28SHeiko Stuebner	select DEBUG_S3C24XX_UART
14081899de28SHeiko Stuebner
14091899de28SHeiko Stuebnerconfig DEBUG_S3C24XX_UART
14101899de28SHeiko Stuebner	bool
1411daf67dfcSHeiko Stuebner
1412bb08dea1SArnd Bergmannconfig DEBUG_S3C64XX_UART
1413bb08dea1SArnd Bergmann	bool
1414bb08dea1SArnd Bergmann
14157bab7d9eSTomasz Figaconfig DEBUG_S5PV210_UART
14167bab7d9eSTomasz Figa	bool
14177bab7d9eSTomasz Figa
1418cce278d2SRussell Kingconfig DEBUG_OMAP2PLUS_UART
1419cce278d2SRussell King	bool
1420cce278d2SRussell King	depends on ARCH_OMAP2PLUS
1421cce278d2SRussell King
1422f8c95fe6SShawn Guoconfig DEBUG_IMX_UART_PORT
1423f8c95fe6SShawn Guo	int "i.MX Debug UART Port Selection" if DEBUG_IMX1_UART || \
1424f8c95fe6SShawn Guo						DEBUG_IMX25_UART || \
1425f8c95fe6SShawn Guo						DEBUG_IMX21_IMX27_UART || \
1426f8c95fe6SShawn Guo						DEBUG_IMX31_UART || \
1427f8c95fe6SShawn Guo						DEBUG_IMX35_UART || \
1428ad364a70SGreg Ungerer						DEBUG_IMX50_UART || \
1429f8c95fe6SShawn Guo						DEBUG_IMX51_UART || \
14300c52db7eSPaul Bolle						DEBUG_IMX53_UART || \
143134e8a16bSShawn Guo						DEBUG_IMX6Q_UART || \
143274368e81SShawn Guo						DEBUG_IMX6SL_UART || \
143352d7aec2SAnson Huang						DEBUG_IMX6SX_UART || \
143420c305f6SAnson Huang						DEBUG_IMX6UL_UART || \
143552d7aec2SAnson Huang						DEBUG_IMX7D_UART
143649c9e60eSShawn Guo	default 1
1437287939a3SShawn Guo	depends on ARCH_MXC
143849c9e60eSShawn Guo	help
143949c9e60eSShawn Guo	  Choose UART port on which kernel low-level debug messages
144049c9e60eSShawn Guo	  should be output.
144149c9e60eSShawn Guo
1442cfdb7d56SStefan Agnerconfig DEBUG_VF_UART_PORT
1443cfdb7d56SStefan Agner	int "Vybrid Debug UART Port Selection" if DEBUG_VF_UART
1444cfdb7d56SStefan Agner	default 1
1445cfdb7d56SStefan Agner	range 0 3
1446cfdb7d56SStefan Agner	depends on SOC_VF610
1447cfdb7d56SStefan Agner	help
1448cfdb7d56SStefan Agner	  Choose UART port on which kernel low-level debug messages
1449cfdb7d56SStefan Agner	  should be output.
1450cfdb7d56SStefan Agner
1451cce278d2SRussell Kingconfig DEBUG_TEGRA_UART
1452cce278d2SRussell King	bool
1453cce278d2SRussell King	depends on ARCH_TEGRA
1454808b7e07STony Lindgren
1455cce278d2SRussell Kingconfig DEBUG_STI_UART
1456cce278d2SRussell King	bool
1457cce278d2SRussell King	depends on ARCH_STI
14585026aecfSSrinivas Kandagatla
145901ea63d9SGuo Zengconfig DEBUG_SIRFSOC_UART
146001ea63d9SGuo Zeng	bool
146101ea63d9SGuo Zeng	depends on ARCH_SIRF
146201ea63d9SGuo Zeng
146391a9fec0SRob Herringconfig DEBUG_LL_INCLUDE
146491a9fec0SRob Herring	string
1465e6131fa3SDmitry Eremin-Solenikov	default "debug/sa1100.S" if DEBUG_SA1100
14660c532546SMans Rullgard	default "debug/palmchip.S" if DEBUG_UART_8250_PALMCHIP
1467f8f1279cSRussell King	default "debug/8250.S" if DEBUG_LL_UART_8250 || DEBUG_UART_8250
146842dfd1e1SNicolas Ferre	default "debug/at91.S" if DEBUG_AT91_UART
1469d5bd4e8dSOleksij Rempel	default "debug/asm9260.S" if DEBUG_ASM9260_UART
1470dd99eef5SAlexander Shiyan	default "debug/clps711x.S" if DEBUG_CLPS711X_UART1 || DEBUG_CLPS711X_UART2
14710045c0ddSArnd Bergmann	default "debug/dc21285.S" if DEBUG_DC21285_PORT
1472d8a00916SCarlo Caione	default "debug/meson.S" if DEBUG_MESON_UARTAO
1473f8f1279cSRussell King	default "debug/pl01x.S" if DEBUG_LL_UART_PL01X || DEBUG_UART_PL01X
1474a2e40710SArnd Bergmann	default "debug/exynos.S" if DEBUG_EXYNOS_UART
1475494e492dSUwe Kleine-König	default "debug/efm32.S" if DEBUG_LL_UART_EFM32
147691a9fec0SRob Herring	default "debug/icedcc.S" if DEBUG_ICEDCC
14776dde5ac5SShawn Guo	default "debug/imx.S" if DEBUG_IMX1_UART || \
14786dde5ac5SShawn Guo				 DEBUG_IMX25_UART || \
14796dde5ac5SShawn Guo				 DEBUG_IMX21_IMX27_UART || \
14804ad625d4SShawn Guo				 DEBUG_IMX31_UART || \
14814ad625d4SShawn Guo				 DEBUG_IMX35_UART || \
1482ad364a70SGreg Ungerer				 DEBUG_IMX50_UART || \
14836dde5ac5SShawn Guo				 DEBUG_IMX51_UART || \
14847356420cSFabio Estevam				 DEBUG_IMX53_UART ||\
148534e8a16bSShawn Guo				 DEBUG_IMX6Q_UART || \
148674368e81SShawn Guo				 DEBUG_IMX6SL_UART || \
148752d7aec2SAnson Huang				 DEBUG_IMX6SX_UART || \
148820c305f6SAnson Huang				 DEBUG_IMX6UL_UART || \
148952d7aec2SAnson Huang				 DEBUG_IMX7D_UART
1490abbfb21eSDaniel Thompson	default "debug/ks8695.S" if DEBUG_KS8695_UART
1491c0c89fafSStephen Boyd	default "debug/msm.S" if DEBUG_QCOM_UARTDM
14924d31e664SDaniel Thompson	default "debug/netx.S" if DEBUG_NETX_UART
1493808b7e07STony Lindgren	default "debug/omap2plus.S" if DEBUG_OMAP2PLUS_UART
14947a2071c5SGeert Uytterhoeven	default "debug/renesas-scif.S" if DEBUG_R7S72100_SCIF2
14957a2071c5SGeert Uytterhoeven	default "debug/renesas-scif.S" if DEBUG_RCAR_GEN1_SCIF0
14967a2071c5SGeert Uytterhoeven	default "debug/renesas-scif.S" if DEBUG_RCAR_GEN1_SCIF2
14977a2071c5SGeert Uytterhoeven	default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF0
14987a2071c5SGeert Uytterhoeven	default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF2
14998e5f2d65SFabrizio Castro	default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF4
15007a2071c5SGeert Uytterhoeven	default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA0
15017a2071c5SGeert Uytterhoeven	default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA1
15027a2071c5SGeert Uytterhoeven	default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA4
1503bb08dea1SArnd Bergmann	default "debug/s3c24xx.S" if DEBUG_S3C24XX_UART || DEBUG_S3C64XX_UART
15047bab7d9eSTomasz Figa	default "debug/s5pv210.S" if DEBUG_S5PV210_UART
150501ea63d9SGuo Zeng	default "debug/sirf.S" if DEBUG_SIRFSOC_UART
15065026aecfSSrinivas Kandagatla	default "debug/sti.S" if DEBUG_STI_UART
1507150a8dcfSLinus Torvalds	default "debug/tegra.S" if DEBUG_TEGRA_UART
1508150a8dcfSLinus Torvalds	default "debug/ux500.S" if DEBUG_UX500_UART
15094e218b99SRussell King	default "debug/vexpress.S" if DEBUG_VEXPRESS_UART0_DETECT
1510c7c3eac6SShawn Guo	default "debug/vf.S" if DEBUG_VF_UART
1511b61a2722STony Prisk	default "debug/vt8500.S" if DEBUG_VT8500_UART0
1512385f02b1SJosh Cartwright	default "debug/zynq.S" if DEBUG_ZYNQ_UART0 || DEBUG_ZYNQ_UART1
15136c548099SArnd Bergmann	default "debug/bcm63xx.S" if DEBUG_BCM63XX_UART
1514e23814daSBaruch Siach	default "debug/digicolor.S" if DEBUG_DIGICOLOR_UA0
1515d0cf9d8aSFlorian Fainelli	default "debug/brcmstb.S" if DEBUG_BRCMSTB_UART
151691a9fec0SRob Herring	default "mach/debug-macro.S"
151791a9fec0SRob Herring
1518f8f1279cSRussell King# Compatibility options for PL01x
15195c972af4SRussell Kingconfig DEBUG_UART_PL01X
1520a61cbf51SDaniel Thompson	bool
15215c972af4SRussell King
1522f8f1279cSRussell King# Compatibility options for 8250
15237610b607SRussell Kingconfig DEBUG_UART_8250
15240045c0ddSArnd Bergmann	def_bool ARCH_EBSA110 || \
1525d7175a3bSArnd Bergmann		ARCH_IOP13XX || ARCH_IOP32X || ARCH_IOP33X || ARCH_IXP4XX || \
152659bd4c38SArnd Bergmann		ARCH_RPC
15274a003647SRussell King
1528c3faa9b7SRussell Kingconfig DEBUG_UART_PHYS
1529c3faa9b7SRussell King	hex "Physical base address of debug UART"
15304d31e664SDaniel Thompson	default 0x00100a00 if DEBUG_NETX_UART
153197bd1a48SRussell King	default 0x01c20000 if DEBUG_DAVINCI_DMx_UART0
1532c3faa9b7SRussell King	default 0x01c28000 if DEBUG_SUNXI_UART0
1533c3faa9b7SRussell King	default 0x01c28400 if DEBUG_SUNXI_UART1
153497bd1a48SRussell King	default 0x01d0c000 if DEBUG_DAVINCI_DA8XX_UART1
153597bd1a48SRussell King	default 0x01d0d000 if DEBUG_DAVINCI_DA8XX_UART2
1536c4718543SChen-Yu Tsai	default 0x01f02800 if DEBUG_SUNXI_R_UART
1537f2acf003SRussell King	default 0x02530c00 if DEBUG_KEYSTONE_UART0
1538f2acf003SRussell King	default 0x02531000 if DEBUG_KEYSTONE_UART1
1539c3faa9b7SRussell King	default 0x03010fe0 if ARCH_RPC
1540d4da889aSChen-Yu Tsai	default 0x07000000 if DEBUG_SUN9I_UART0
154158d03985SJun Nie	default 0x09405000 if DEBUG_ZTE_ZX
1542b125170aSKrzysztof Hałasa	default 0x10009000 if DEBUG_REALVIEW_STD_PORT || \
15435c972af4SRussell King				DEBUG_VEXPRESS_UART0_CA9
15445c972af4SRussell King	default 0x1010c000 if DEBUG_REALVIEW_PB1176_PORT
1545c3faa9b7SRussell King	default 0x10124000 if DEBUG_RK3X_UART0
1546c3faa9b7SRussell King	default 0x10126000 if DEBUG_RK3X_UART1
15474db22c10SArnd Bergmann	default 0x101f1000 if DEBUG_VERSATILE
15485c972af4SRussell King	default 0x101fb000 if DEBUG_NOMADIK_UART
1549a3b882f9SAndy Yan	default 0x10210000 if DEBUG_RV1108_UART2
1550a3b882f9SAndy Yan	default 0x10220000 if DEBUG_RV1108_UART1
1551a3b882f9SAndy Yan	default 0x10230000 if DEBUG_RV1108_UART0
155265ec48c0SJoe.C	default 0x11002000 if DEBUG_MT8127_UART0
1553d6682085SMatthias Brugger	default 0x11006000 if DEBUG_MT6589_UART0
155465ec48c0SJoe.C	default 0x11009000 if DEBUG_MT8135_UART3
15554db22c10SArnd Bergmann	default 0x16000000 if DEBUG_INTEGRATOR
155606580275SHauke Mehrtens	default 0x18000300 if DEBUG_BCM_5301X
1557fa1e581dSFlorian Fainelli	default 0x18000400 if DEBUG_BCM_HR2
155801ea63d9SGuo Zeng	default 0x18010000 if DEBUG_SIRFATLAS7_UART0
155901ea63d9SGuo Zeng	default 0x18020000 if DEBUG_SIRFATLAS7_UART1
15605c972af4SRussell King	default 0x1c090000 if DEBUG_VEXPRESS_UART0_RS1
156127dafaa8SWang Long	default 0x20001000 if DEBUG_HIP01_UART
1562c3faa9b7SRussell King	default 0x20060000 if DEBUG_RK29_UART0
1563c3faa9b7SRussell King	default 0x20064000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
1564c3faa9b7SRussell King	default 0x20068000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
15655c972af4SRussell King	default 0x20201000 if DEBUG_BCM2835
15665234c34eSEric Anholt	default 0x3f201000 if DEBUG_BCM2836
1567753d1243SChristian Daudt	default 0x3e000000 if DEBUG_BCM_KONA_UART
1568494e492dSUwe Kleine-König	default 0x4000e400 if DEBUG_LL_UART_EFM32
156963e07c0fSSzemző András	default 0x40028000 if DEBUG_AT91_SAMV7_USART1
15700aed6a37SJoachim Eastwood	default 0x40081000 if DEBUG_LPC18XX_UART0
157159bd4c38SArnd Bergmann	default 0x40090000 if DEBUG_LPC32XX
1572c3faa9b7SRussell King	default 0x40100000 if DEBUG_PXA_UART1
1573d7175a3bSArnd Bergmann	default 0x42000000 if DEBUG_GEMINI
157451ef7003STony Lindgren	default 0x44e09000 if DEBUG_AM33XXUART1
15752d1f7d2eSTony Lindgren	default 0x48020000 if DEBUG_OMAP4UART3 || DEBUG_TI81XXUART1
15762d1f7d2eSTony Lindgren	default 0x48022000 if DEBUG_TI81XXUART2
15772d1f7d2eSTony Lindgren	default 0x48024000 if DEBUG_TI81XXUART3
1578d2b310b0STony Lindgren	default 0x4806a000 if DEBUG_OMAP2UART1 || DEBUG_OMAP3UART1 || \
1579d2b310b0STony Lindgren				DEBUG_OMAP4UART1 || DEBUG_OMAP5UART1
1580d2b310b0STony Lindgren	default 0x4806c000 if DEBUG_OMAP2UART2 || DEBUG_OMAP3UART2 || \
1581d2b310b0STony Lindgren				DEBUG_OMAP4UART2 || DEBUG_OMAP5UART2
1582fc23beb8STony Lindgren	default 0x4806e000 if DEBUG_OMAP2UART3 || DEBUG_OMAP4UART4
1583fc23beb8STony Lindgren	default 0x49020000 if DEBUG_OMAP3UART3
1584fc23beb8STony Lindgren	default 0x49042000 if DEBUG_OMAP3UART4
15851899de28SHeiko Stuebner	default 0x50000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \
15861899de28SHeiko Stuebner				DEBUG_S3C2410_UART0)
15871899de28SHeiko Stuebner	default 0x50004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \
15881899de28SHeiko Stuebner				DEBUG_S3C2410_UART1)
15891899de28SHeiko Stuebner	default 0x50008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \
15901899de28SHeiko Stuebner				DEBUG_S3C2410_UART2)
1591c3ca2130SKrzysztof Hałasa	default 0x78000000 if DEBUG_CNS3XXX
15920045c0ddSArnd Bergmann	default 0x7c0003f8 if DEBUG_FOOTBRIDGE_COM1
1593bb08dea1SArnd Bergmann	default 0x7f005000 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART0
1594bb08dea1SArnd Bergmann	default 0x7f005400 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART1
1595bb08dea1SArnd Bergmann	default 0x7f005800 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART2
1596bb08dea1SArnd Bergmann	default 0x7f005c00 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART3
1597d5bd4e8dSOleksij Rempel	default 0x80010000 if DEBUG_ASM9260_UART
15985c972af4SRussell King	default 0x80070000 if DEBUG_IMX23_UART
15995c972af4SRussell King	default 0x80074000 if DEBUG_IMX28_UART
1600c39e1ef7SAlexander Shiyan	default 0x80230000 if DEBUG_PICOXCELL_UART
1601f06455faSArnd Bergmann	default 0x808c0000 if DEBUG_EP93XX || ARCH_EP93XX
16025c972af4SRussell King	default 0x90020000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART
160301ea63d9SGuo Zeng	default 0xb0060000 if DEBUG_SIRFPRIMA2_UART1
16045c972af4SRussell King	default 0xb0090000 if DEBUG_VEXPRESS_UART0_CRX
16055c972af4SRussell King	default 0xc0013000 if DEBUG_U300_UART
1606c3faa9b7SRussell King	default 0xc8000000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
1607c3faa9b7SRussell King	default 0xc8000003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
1608375d84cfSArnd Bergmann	default 0xd0000000 if DEBUG_SPEAR3XX
1609d91125ddSMaxime Ripard	default 0xd0012000 if DEBUG_MVEBU_UART0
1610d8a00916SCarlo Caione	default 0xc81004c0 if DEBUG_MESON_UARTAO
1611c3faa9b7SRussell King	default 0xd4017000 if DEBUG_MMP_UART2
1612c3faa9b7SRussell King	default 0xd4018000 if DEBUG_MMP_UART3
1613375d84cfSArnd Bergmann	default 0xe0000000 if DEBUG_SPEAR13XX
1614c9a1df48SHaojian Zhuang	default 0xe4007000 if DEBUG_HIP04_UART
16157a2071c5SGeert Uytterhoeven	default 0xe6c40000 if DEBUG_RMOBILE_SCIFA0
16167a2071c5SGeert Uytterhoeven	default 0xe6c50000 if DEBUG_RMOBILE_SCIFA1
16177a2071c5SGeert Uytterhoeven	default 0xe6c80000 if DEBUG_RMOBILE_SCIFA4
16187a2071c5SGeert Uytterhoeven	default 0xe6e58000 if DEBUG_RCAR_GEN2_SCIF2
16197a2071c5SGeert Uytterhoeven	default 0xe6e60000 if DEBUG_RCAR_GEN2_SCIF0
16208e5f2d65SFabrizio Castro	default 0xe6ee0000 if DEBUG_RCAR_GEN2_SCIF4
16217a2071c5SGeert Uytterhoeven	default 0xe8008000 if DEBUG_R7S72100_SCIF2
1622c3faa9b7SRussell King	default 0xf0000be0 if ARCH_EBSA110
1623d91125ddSMaxime Ripard	default 0xf1012000 if DEBUG_MVEBU_UART0_ALTERNATE
1624bd920490SMaxime Ripard	default 0xf1012100 if DEBUG_MVEBU_UART1_ALTERNATE
1625caad0b41SSebastian Hesselbarth	default 0xf7fc9000 if DEBUG_BERLIN_UART
16268b2f2d03SAlexandre Belloni	default 0xf8020000 if DEBUG_AT91_SAMA5D2_UART1
162712aae309SHaifeng Yan	default 0xf8b00000 if DEBUG_HIX5HD2_UART
16287098cff2SIvan T. Ivanov	default 0xf991e000 if DEBUG_QCOM_UARTDM
16298b2f2d03SAlexandre Belloni	default 0xfc00c000 if DEBUG_AT91_SAMA5D4_USART3
16308d258bebSHaojian Zhuang	default 0xfcb00000 if DEBUG_HI3620_UART
16313c215e64STsahee Zidenberg	default 0xfd883000 if DEBUG_ALPINE_UART0
1632c3faa9b7SRussell King	default 0xfe800000 if ARCH_IOP32X
1633efd02ee9SHeiko Stuebner	default 0xff690000 if DEBUG_RK32_UART2
1634de73c162SDinh Nguyen	default 0xffc02000 if DEBUG_SOCFPGA_UART0
1635de73c162SDinh Nguyen	default 0xffc02100 if DEBUG_SOCFPGA_UART1
1636c3faa9b7SRussell King	default 0xffd82340 if ARCH_IOP13XX
16377a2071c5SGeert Uytterhoeven	default 0xffe40000 if DEBUG_RCAR_GEN1_SCIF0
16387a2071c5SGeert Uytterhoeven	default 0xffe42000 if DEBUG_RCAR_GEN1_SCIF2
16395c972af4SRussell King	default 0xfff36000 if DEBUG_HIGHBANK_UART
1640c26b9993SDaniel Thompson	default 0xfffb0000 if DEBUG_OMAP1UART1 || DEBUG_OMAP7XXUART1
1641c26b9993SDaniel Thompson	default 0xfffb0800 if DEBUG_OMAP1UART2 || DEBUG_OMAP7XXUART2
1642c26b9993SDaniel Thompson	default 0xfffb9800 if DEBUG_OMAP1UART3 || DEBUG_OMAP7XXUART3
16436c548099SArnd Bergmann	default 0xfffe8600 if DEBUG_BCM63XX_UART
16448b2f2d03SAlexandre Belloni	default 0xffffee00 if DEBUG_AT91_SAM9263_DBGU
16458b2f2d03SAlexandre Belloni	default 0xfffff200 if DEBUG_AT91_RM9200_DBGU
1646c3faa9b7SRussell King	default 0xfffff700 if ARCH_IOP33X
1647d02fde7fSDaniel Thompson	depends on ARCH_EP93XX || \
1648d02fde7fSDaniel Thompson	        DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
1649494e492dSUwe Kleine-König		DEBUG_LL_UART_EFM32 || \
1650d8a00916SCarlo Caione		DEBUG_UART_8250 || DEBUG_UART_PL01X || DEBUG_MESON_UARTAO || \
1651c0c89fafSStephen Boyd		DEBUG_NETX_UART || \
16524d31e664SDaniel Thompson		DEBUG_QCOM_UARTDM || DEBUG_R7S72100_SCIF2 || \
16537a2071c5SGeert Uytterhoeven		DEBUG_RCAR_GEN1_SCIF0 || DEBUG_RCAR_GEN1_SCIF2 || \
16547a2071c5SGeert Uytterhoeven		DEBUG_RCAR_GEN2_SCIF0 || DEBUG_RCAR_GEN2_SCIF2 || \
16558e5f2d65SFabrizio Castro		DEBUG_RCAR_GEN2_SCIF4 || \
16567a2071c5SGeert Uytterhoeven		DEBUG_RMOBILE_SCIFA0 || DEBUG_RMOBILE_SCIFA1 || \
16577a2071c5SGeert Uytterhoeven		DEBUG_RMOBILE_SCIFA4 || DEBUG_S3C24XX_UART || \
1658bb08dea1SArnd Bergmann		DEBUG_S3C64XX_UART || \
16596c548099SArnd Bergmann		DEBUG_BCM63XX_UART || DEBUG_ASM9260_UART || \
16606f112a08SAlexandre Belloni		DEBUG_SIRFSOC_UART || DEBUG_DIGICOLOR_UA0 || \
16616f112a08SAlexandre Belloni		DEBUG_AT91_UART
1662c3faa9b7SRussell King
1663c3faa9b7SRussell Kingconfig DEBUG_UART_VIRT
1664c3faa9b7SRussell King	hex "Virtual base address of debug UART"
1665a3b882f9SAndy Yan	default 0xc881f000 if DEBUG_RV1108_UART2
1666a3b882f9SAndy Yan	default 0xc8821000 if DEBUG_RV1108_UART1
1667a3b882f9SAndy Yan	default 0xc8912000 if DEBUG_RV1108_UART0
16684d31e664SDaniel Thompson	default 0xe0000a00 if DEBUG_NETX_UART
1669c3faa9b7SRussell King	default 0xe0010fe0 if ARCH_RPC
1670c3faa9b7SRussell King	default 0xf0000be0 if ARCH_EBSA110
1671d5bd4e8dSOleksij Rempel	default 0xf0010000 if DEBUG_ASM9260_UART
16725c972af4SRussell King	default 0xf01fb000 if DEBUG_NOMADIK_UART
16735234c34eSEric Anholt	default 0xf0201000 if DEBUG_BCM2835 || DEBUG_BCM2836
167406580275SHauke Mehrtens	default 0xf1000300 if DEBUG_BCM_5301X
1675fa1e581dSFlorian Fainelli	default 0xf1000400 if DEBUG_BCM_HR2
167665ec48c0SJoe.C	default 0xf1002000 if DEBUG_MT8127_UART0
1677d6682085SMatthias Brugger	default 0xf1006000 if DEBUG_MT6589_UART0
167865ec48c0SJoe.C	default 0xf1009000 if DEBUG_MT8135_UART3
16794db22c10SArnd Bergmann	default 0xf11f1000 if DEBUG_VERSATILE
16804db22c10SArnd Bergmann	default 0xf1600000 if DEBUG_INTEGRATOR
1681c3faa9b7SRussell King	default 0xf1c28000 if DEBUG_SUNXI_UART0
1682c3faa9b7SRussell King	default 0xf1c28400 if DEBUG_SUNXI_UART1
1683c4718543SChen-Yu Tsai	default 0xf1f02800 if DEBUG_SUNXI_R_UART
16841dc93416SArnd Bergmann	default 0xf31004c0 if DEBUG_MESON_UARTAO
168559bd4c38SArnd Bergmann	default 0xf4090000 if DEBUG_LPC32XX
1686d7175a3bSArnd Bergmann	default 0xf4200000 if DEBUG_GEMINI
1687cde7fc87SRobert Jarzmik	default 0xf6200000 if DEBUG_PXA_UART1
1688d4da889aSChen-Yu Tsai	default 0xf7000000 if DEBUG_SUN9I_UART0
1689bb08dea1SArnd Bergmann	default 0xf7000000 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART0
16901899de28SHeiko Stuebner	default 0xf7000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \
16911899de28SHeiko Stuebner				DEBUG_S3C2410_UART0)
1692bb08dea1SArnd Bergmann	default 0xf7000400 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART1
1693bb08dea1SArnd Bergmann	default 0xf7000800 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART2
1694bb08dea1SArnd Bergmann	default 0xf7000c00 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART3
16951899de28SHeiko Stuebner	default 0xf7004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \
16961899de28SHeiko Stuebner				DEBUG_S3C2410_UART1)
16971899de28SHeiko Stuebner	default 0xf7008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \
16981899de28SHeiko Stuebner				DEBUG_S3C2410_UART2)
16998b2f2d03SAlexandre Belloni	default 0xf7020000 if DEBUG_AT91_SAMA5D2_UART1
1700caad0b41SSebastian Hesselbarth	default 0xf7fc9000 if DEBUG_BERLIN_UART
1701c9a1df48SHaojian Zhuang	default 0xf8007000 if DEBUG_HIP04_UART
17025c972af4SRussell King	default 0xf8009000 if DEBUG_VEXPRESS_UART0_CA9
17035c972af4SRussell King	default 0xf8090000 if DEBUG_VEXPRESS_UART0_RS1
17048b2f2d03SAlexandre Belloni	default 0xf8ffee00 if DEBUG_AT91_SAM9263_DBGU
17058b2f2d03SAlexandre Belloni	default 0xf8fff200 if DEBUG_AT91_RM9200_DBGU
170651ef7003STony Lindgren	default 0xf9e09000 if DEBUG_AM33XXUART1
17072d1f7d2eSTony Lindgren	default 0xfa020000 if DEBUG_OMAP4UART3 || DEBUG_TI81XXUART1
17082d1f7d2eSTony Lindgren	default 0xfa022000 if DEBUG_TI81XXUART2
17092d1f7d2eSTony Lindgren	default 0xfa024000 if DEBUG_TI81XXUART3
1710d2b310b0STony Lindgren	default 0xfa06a000 if DEBUG_OMAP2UART1 || DEBUG_OMAP3UART1 || \
1711d2b310b0STony Lindgren				DEBUG_OMAP4UART1 || DEBUG_OMAP5UART1
1712d2b310b0STony Lindgren	default 0xfa06c000 if DEBUG_OMAP2UART2 || DEBUG_OMAP3UART2 || \
1713d2b310b0STony Lindgren				DEBUG_OMAP4UART2 || DEBUG_OMAP5UART2
1714fc23beb8STony Lindgren	default 0xfa06e000 if DEBUG_OMAP2UART3 || DEBUG_OMAP4UART4
17157098cff2SIvan T. Ivanov	default 0xfa71e000 if DEBUG_QCOM_UARTDM
1716b125170aSKrzysztof Hałasa	default 0xfb002000 if DEBUG_CNS3XXX
17175c972af4SRussell King	default 0xfb009000 if DEBUG_REALVIEW_STD_PORT
17188b2f2d03SAlexandre Belloni	default 0xfb00c000 if DEBUG_AT91_SAMA5D4_USART3
1719fc23beb8STony Lindgren	default 0xfb020000 if DEBUG_OMAP3UART3
1720fc23beb8STony Lindgren	default 0xfb042000 if DEBUG_OMAP3UART4
17215c972af4SRussell King	default 0xfb10c000 if DEBUG_REALVIEW_PB1176_PORT
172258d03985SJun Nie	default 0xfc705000 if DEBUG_ZTE_ZX
17236c548099SArnd Bergmann	default 0xfcfe8600 if DEBUG_BCM63XX_UART
1724375d84cfSArnd Bergmann	default 0xfd000000 if DEBUG_SPEAR3XX || DEBUG_SPEAR13XX
1725c047f529SArnd Bergmann	default 0xfd012000 if DEBUG_MVEBU_UART0_ALTERNATE && ARCH_MV78XX0
17263c215e64STsahee Zidenberg	default 0xfd883000 if DEBUG_ALPINE_UART0
1727c047f529SArnd Bergmann	default 0xfde12000 if DEBUG_MVEBU_UART0_ALTERNATE && ARCH_DOVE
1728c047f529SArnd Bergmann	default 0xfe012000 if DEBUG_MVEBU_UART0_ALTERNATE && ARCH_ORION5X
1729c3faa9b7SRussell King	default 0xfe017000 if DEBUG_MMP_UART2
1730c3faa9b7SRussell King	default 0xfe018000 if DEBUG_MMP_UART3
17315c972af4SRussell King	default 0xfe100000 if DEBUG_IMX23_UART || DEBUG_IMX28_UART
17320b4cccbeSRussell King	default 0xfe230000 if DEBUG_PICOXCELL_UART
1733753d1243SChristian Daudt	default 0xfe300000 if DEBUG_BCM_KONA_UART
1734c3faa9b7SRussell King	default 0xfe800000 if ARCH_IOP32X
173512aae309SHaifeng Yan	default 0xfeb00000 if DEBUG_HI3620_UART || DEBUG_HIX5HD2_UART
1736c3faa9b7SRussell King	default 0xfeb24000 if DEBUG_RK3X_UART0
1737c3faa9b7SRussell King	default 0xfeb26000 if DEBUG_RK3X_UART1
1738f2acf003SRussell King	default 0xfeb30c00 if DEBUG_KEYSTONE_UART0
1739f2acf003SRussell King	default 0xfeb31000 if DEBUG_KEYSTONE_UART1
1740de73c162SDinh Nguyen	default 0xfec02000 if DEBUG_SOCFPGA_UART0
1741de73c162SDinh Nguyen	default 0xfec02100 if DEBUG_SOCFPGA_UART1
1742c047f529SArnd Bergmann	default 0xfec12000 if (DEBUG_MVEBU_UART0 || DEBUG_MVEBU_UART0_ALTERNATE) && ARCH_MVEBU
1743bd920490SMaxime Ripard	default 0xfec12100 if DEBUG_MVEBU_UART1_ALTERNATE
174401ea63d9SGuo Zeng	default 0xfec10000 if DEBUG_SIRFATLAS7_UART0
174597bd1a48SRussell King	default 0xfec20000 if DEBUG_DAVINCI_DMx_UART0
174601ea63d9SGuo Zeng	default 0xfec20000 if DEBUG_SIRFATLAS7_UART1
174701ea63d9SGuo Zeng	default 0xfec60000 if DEBUG_SIRFPRIMA2_UART1
1748efd02ee9SHeiko Stuebner	default 0xfec90000 if DEBUG_RK32_UART2
174997bd1a48SRussell King	default 0xfed0c000 if DEBUG_DAVINCI_DA8XX_UART1
175097bd1a48SRussell King	default 0xfed0d000 if DEBUG_DAVINCI_DA8XX_UART2
1751c39e1ef7SAlexander Shiyan	default 0xfed60000 if DEBUG_RK29_UART0
1752c39e1ef7SAlexander Shiyan	default 0xfed64000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
1753c39e1ef7SAlexander Shiyan	default 0xfed68000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
1754f06455faSArnd Bergmann	default 0xfedc0000 if DEBUG_EP93XX
17550045c0ddSArnd Bergmann	default 0xfee003f8 if DEBUG_FOOTBRIDGE_COM1
17565c972af4SRussell King	default 0xfee20000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART
1757c3faa9b7SRussell King	default 0xfee82340 if ARCH_IOP13XX
1758c3faa9b7SRussell King	default 0xfef00000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
1759c3faa9b7SRussell King	default 0xfef00003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
1760c39e1ef7SAlexander Shiyan	default 0xfef36000 if DEBUG_HIGHBANK_UART
1761c26b9993SDaniel Thompson	default 0xfefb0000 if DEBUG_OMAP1UART1 || DEBUG_OMAP7XXUART1
1762c26b9993SDaniel Thompson	default 0xfefb0800 if DEBUG_OMAP1UART2 || DEBUG_OMAP7XXUART2
1763c26b9993SDaniel Thompson	default 0xfefb9800 if DEBUG_OMAP1UART3 || DEBUG_OMAP7XXUART3
1764c3faa9b7SRussell King	default 0xfefff700 if ARCH_IOP33X
17655c972af4SRussell King	default 0xff003000 if DEBUG_U300_UART
176627dafaa8SWang Long	default 0xffd01000 if DEBUG_HIP01_UART
17675c972af4SRussell King	default DEBUG_UART_PHYS if !MMU
1768f8f1279cSRussell King	depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
1769d8a00916SCarlo Caione		DEBUG_UART_8250 || DEBUG_UART_PL01X || DEBUG_MESON_UARTAO || \
1770c0c89fafSStephen Boyd		DEBUG_NETX_UART || \
17714d31e664SDaniel Thompson		DEBUG_QCOM_UARTDM || DEBUG_S3C24XX_UART || \
1772bb08dea1SArnd Bergmann		DEBUG_S3C64XX_UART || \
17736c548099SArnd Bergmann		DEBUG_BCM63XX_UART || DEBUG_ASM9260_UART || \
17740b37e9e8SAlexandre Belloni		DEBUG_SIRFSOC_UART || DEBUG_DIGICOLOR_UA0 || \
17750b37e9e8SAlexandre Belloni		DEBUG_AT91_UART
1776c3faa9b7SRussell King
17774a003647SRussell Kingconfig DEBUG_UART_8250_SHIFT
17784a003647SRussell King	int "Register offset shift for the 8250 debug UART"
1779f8f1279cSRussell King	depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
17800045c0ddSArnd Bergmann	default 0 if DEBUG_FOOTBRIDGE_COM1 || ARCH_IOP32X || DEBUG_BCM_5301X || \
1781fa1e581dSFlorian Fainelli		DEBUG_BCM_HR2 || DEBUG_OMAP7XXUART1 || DEBUG_OMAP7XXUART2 || \
1782fa1e581dSFlorian Fainelli		DEBUG_OMAP7XXUART3
17834a003647SRussell King	default 2
17847610b607SRussell King
17850b4cccbeSRussell Kingconfig DEBUG_UART_8250_WORD
17860b4cccbeSRussell King	bool "Use 32-bit accesses for 8250 UART"
1787f8f1279cSRussell King	depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
17880b4cccbeSRussell King	depends on DEBUG_UART_8250_SHIFT >= 2
1789cdd2e08bSArnd Bergmann	default y if DEBUG_PICOXCELL_UART || \
1790cdd2e08bSArnd Bergmann		DEBUG_SOCFPGA_UART0 || DEBUG_SOCFPGA_UART1 || \
1791cdd2e08bSArnd Bergmann		DEBUG_KEYSTONE_UART0 || DEBUG_KEYSTONE_UART1 || \
1792de73c162SDinh Nguyen		DEBUG_ALPINE_UART0 || \
179397bd1a48SRussell King		DEBUG_DAVINCI_DMx_UART0 || DEBUG_DAVINCI_DA8XX_UART1 || \
17949d6eccb9SArnd Bergmann		DEBUG_DAVINCI_DA8XX_UART2 || \
1795d0cf9d8aSFlorian Fainelli		DEBUG_BCM_KONA_UART || DEBUG_RK32_UART2
17960b4cccbeSRussell King
17970c532546SMans Rullgardconfig DEBUG_UART_8250_PALMCHIP
17980c532546SMans Rullgard	bool "8250 UART is Palmchip BK-310x"
17990c532546SMans Rullgard	depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
18000c532546SMans Rullgard	help
18010c532546SMans Rullgard	  Palmchip provides a UART implementation compatible with 16550
18020c532546SMans Rullgard	  except for having a different register layout.  Say Y here if
18030c532546SMans Rullgard	  the debug UART is of this type.
18040c532546SMans Rullgard
18057610b607SRussell Kingconfig DEBUG_UART_8250_FLOW_CONTROL
18067610b607SRussell King	bool "Enable flow control for 8250 UART"
1807f8f1279cSRussell King	depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
18080045c0ddSArnd Bergmann	default y if ARCH_EBSA110 || DEBUG_FOOTBRIDGE_COM1 || DEBUG_GEMINI || ARCH_RPC
18097610b607SRussell King
18103b4af9bcSShawn Guoconfig DEBUG_UNCOMPRESS
181129337b60SRussell King	bool "Enable decompressor debugging via DEBUG_LL output"
18129c77bc43SStefan Agner	depends on ARCH_MULTIPLATFORM || PLAT_SAMSUNG || ARM_SINGLE_ARMV7M
181329337b60SRussell King	depends on DEBUG_LL && !DEBUG_OMAP2PLUS_UART && \
1814d0cf9d8aSFlorian Fainelli		     (!DEBUG_TEGRA_UART || !ZBOOT_ROM) && \
1815d0cf9d8aSFlorian Fainelli		     !DEBUG_BRCMSTB_UART
1816b6992fa9SRussell King	help
1817b6992fa9SRussell King	  This option influences the normal decompressor output for
1818b6992fa9SRussell King	  multiplatform kernels.  Normally, multiplatform kernels disable
1819b6992fa9SRussell King	  decompressor output because it is not possible to know where to
1820b6992fa9SRussell King	  send the decompressor output.
1821b6992fa9SRussell King
1822b6992fa9SRussell King	  When this option is set, the selected DEBUG_LL output method
1823b6992fa9SRussell King	  will be re-used for normal decompressor output on multiplatform
1824b6992fa9SRussell King	  kernels.
1825b6992fa9SRussell King
18263b4af9bcSShawn Guo
1827615967b0SShawn Guoconfig UNCOMPRESS_INCLUDE
1828615967b0SShawn Guo	string
1829ffd80eccSSachin Kamat	default "debug/uncompress.h" if ARCH_MULTIPLATFORM || ARCH_MSM || \
183036d6c928SUlrich Hecht					PLAT_SAMSUNG || ARM_SINGLE_ARMV7M
1831615967b0SShawn Guo	default "mach/uncompress.h"
1832615967b0SShawn Guo
18331da177e4SLinus Torvaldsconfig EARLY_PRINTK
18341da177e4SLinus Torvalds	bool "Early printk"
18351da177e4SLinus Torvalds	depends on DEBUG_LL
18361da177e4SLinus Torvalds	help
18371da177e4SLinus Torvalds	  Say Y here if you want to have an early console using the
18381da177e4SLinus Torvalds	  kernel low-level debugging functions. Add earlyprintk to your
18391da177e4SLinus Torvalds	  kernel parameters to enable this console.
18401da177e4SLinus Torvalds
18411da177e4SLinus Torvaldsconfig ARM_KPROBES_TEST
18421da177e4SLinus Torvalds	tristate "Kprobes test module"
18431da177e4SLinus Torvalds	depends on KPROBES && MODULES
18441da177e4SLinus Torvalds	help
18451da177e4SLinus Torvalds	  Perform tests of kprobes API and instruction set simulation.
18461da177e4SLinus Torvalds
1847575320d6SWill Deaconconfig PID_IN_CONTEXTIDR
1848575320d6SWill Deacon	bool "Write the current PID to the CONTEXTIDR register"
1849575320d6SWill Deacon	depends on CPU_COPY_V6
1850575320d6SWill Deacon	help
1851575320d6SWill Deacon	  Enabling this option causes the kernel to write the current PID to
1852575320d6SWill Deacon	  the PROCID field of the CONTEXTIDR register, at the expense of some
1853575320d6SWill Deacon	  additional instructions during context switch. Say Y here only if you
1854575320d6SWill Deacon	  are planning to use hardware trace tools with this kernel.
1855575320d6SWill Deacon
185601081f5aSMathieu Poiriersource "drivers/hwtracing/coresight/Kconfig"
1857bc4bf7feSPratik Patel
18581da177e4SLinus Torvaldsendmenu
1859