xref: /linux/arch/arm/Kconfig.debug (revision e2fd51b7e1742b82529a39107ed59ac0da69321d)
11da177e4SLinus Torvaldsmenu "Kernel hacking"
21da177e4SLinus Torvalds
31da177e4SLinus Torvaldssource "lib/Kconfig.debug"
41da177e4SLinus Torvalds
51fd15b87SRussell Kingconfig ARM_PTDUMP
61fd15b87SRussell King	bool "Export kernel pagetable layout to userspace via debugfs"
71fd15b87SRussell King	depends on DEBUG_KERNEL
81fd15b87SRussell King	select DEBUG_FS
91fd15b87SRussell King	---help---
101fd15b87SRussell King	  Say Y here if you want to show the kernel pagetable layout in a
111fd15b87SRussell King	  debugfs file. This information is only useful for kernel developers
121fd15b87SRussell King	  who are working in architecture specific areas of the kernel.
131fd15b87SRussell King	  It is probably not a good idea to enable this feature in a production
141fd15b87SRussell King	  kernel.
151fd15b87SRussell King	  If in doubt, say "N"
161fd15b87SRussell King
17087aaffcSNicolas Pitreconfig STRICT_DEVMEM
18087aaffcSNicolas Pitre	bool "Filter access to /dev/mem"
19087aaffcSNicolas Pitre	depends on MMU
20087aaffcSNicolas Pitre	---help---
21087aaffcSNicolas Pitre	  If this option is disabled, you allow userspace (root) access to all
22087aaffcSNicolas Pitre	  of memory, including kernel and userspace memory. Accidental
23087aaffcSNicolas Pitre	  access to this is obviously disastrous, but specific access can
24087aaffcSNicolas Pitre	  be used by people debugging the kernel.
25087aaffcSNicolas Pitre
26087aaffcSNicolas Pitre	  If this option is switched on, the /dev/mem file only allows
27087aaffcSNicolas Pitre	  userspace access to memory mapped peripherals.
28087aaffcSNicolas Pitre
29087aaffcSNicolas Pitre          If in doubt, say Y.
30087aaffcSNicolas Pitre
31adf8b37bSCatalin Marinas# RMK wants arm kernels compiled with frame pointers or stack unwinding.
321da177e4SLinus Torvalds# If you know what you are doing and are willing to live without stack
331da177e4SLinus Torvalds# traces, you can get a slightly smaller kernel by setting this option to
341da177e4SLinus Torvalds# n, but then RMK will have to kill you ;).
351da177e4SLinus Torvaldsconfig FRAME_POINTER
361da177e4SLinus Torvalds	bool
3716c79651SCatalin Marinas	depends on !THUMB2_KERNEL
380e341af8SRabin Vincent	default y if !ARM_UNWIND || FUNCTION_GRAPH_TRACER
391da177e4SLinus Torvalds	help
401da177e4SLinus Torvalds	  If you say N here, the resulting kernel will be slightly smaller and
41adf8b37bSCatalin Marinas	  faster. However, if neither FRAME_POINTER nor ARM_UNWIND are enabled,
42adf8b37bSCatalin Marinas	  when a problem occurs with the kernel, the information that is
43adf8b37bSCatalin Marinas	  reported is severely limited.
44adf8b37bSCatalin Marinas
45adf8b37bSCatalin Marinasconfig ARM_UNWIND
464a50bfe3SRussell King	bool "Enable stack unwinding support (EXPERIMENTAL)"
47d6f94fa0SKees Cook	depends on AEABI
48adf8b37bSCatalin Marinas	default y
49adf8b37bSCatalin Marinas	help
50adf8b37bSCatalin Marinas	  This option enables stack unwinding support in the kernel
51adf8b37bSCatalin Marinas	  using the information automatically generated by the
52adf8b37bSCatalin Marinas	  compiler. The resulting kernel image is slightly bigger but
53adf8b37bSCatalin Marinas	  the performance is not affected. Currently, this feature
54adf8b37bSCatalin Marinas	  only works with EABI compilers. If unsure say Y.
551da177e4SLinus Torvalds
5609bfafacSRabin Vincentconfig OLD_MCOUNT
5709bfafacSRabin Vincent	bool
5809bfafacSRabin Vincent	depends on FUNCTION_TRACER && FRAME_POINTER
5909bfafacSRabin Vincent	default y
6009bfafacSRabin Vincent
611da177e4SLinus Torvaldsconfig DEBUG_USER
621da177e4SLinus Torvalds	bool "Verbose user fault messages"
631da177e4SLinus Torvalds	help
641da177e4SLinus Torvalds	  When a user program crashes due to an exception, the kernel can
651da177e4SLinus Torvalds	  print a brief message explaining what the problem was. This is
661da177e4SLinus Torvalds	  sometimes helpful for debugging but serves no purpose on a
671da177e4SLinus Torvalds	  production system. Most people should say N here.
681da177e4SLinus Torvalds
691da177e4SLinus Torvalds	  In addition, you need to pass user_debug=N on the kernel command
701da177e4SLinus Torvalds	  line to enable this feature.  N consists of the sum of:
711da177e4SLinus Torvalds
721da177e4SLinus Torvalds	      1 - undefined instruction events
731da177e4SLinus Torvalds	      2 - system calls
741da177e4SLinus Torvalds	      4 - invalid data aborts
751da177e4SLinus Torvalds	      8 - SIGSEGV faults
761da177e4SLinus Torvalds	     16 - SIGBUS faults
771da177e4SLinus Torvalds
781da177e4SLinus Torvalds# These options are only for real kernel hackers who want to get their hands dirty.
791da177e4SLinus Torvaldsconfig DEBUG_LL
804f5ef922SWill Deacon	bool "Kernel low-level debugging functions (read help!)"
811da177e4SLinus Torvalds	depends on DEBUG_KERNEL
821da177e4SLinus Torvalds	help
8335efb606SRussell King	  Say Y here to include definitions of printascii, printch, printhex
841da177e4SLinus Torvalds	  in the kernel.  This is helpful if you are debugging code that
851da177e4SLinus Torvalds	  executes before the console is initialized.
861da177e4SLinus Torvalds
874f5ef922SWill Deacon	  Note that selecting this option will limit the kernel to a single
884f5ef922SWill Deacon	  UART definition, as specified below. Attempting to boot the kernel
894f5ef922SWill Deacon	  image on a different platform *will not work*, so this option should
904f5ef922SWill Deacon	  not be enabled for kernels that are intended to be portable.
914f5ef922SWill Deacon
9217916b28SWill Deaconchoice
9317916b28SWill Deacon	prompt "Kernel low-level debugging port"
9417916b28SWill Deacon	depends on DEBUG_LL
9517916b28SWill Deacon
96d5bd4e8dSOleksij Rempel	config DEBUG_ASM9260_UART
97d5bd4e8dSOleksij Rempel		bool "Kernel low-level debugging via asm9260 UART"
98d5bd4e8dSOleksij Rempel		depends on MACH_ASM9260
99d5bd4e8dSOleksij Rempel		help
100d5bd4e8dSOleksij Rempel		  Say Y here if you want the debug print routines to direct
101d5bd4e8dSOleksij Rempel		  their output to an UART or USART port on asm9260 based
102d5bd4e8dSOleksij Rempel		  machines.
103d5bd4e8dSOleksij Rempel
104d5bd4e8dSOleksij Rempel		    DEBUG_UART_PHYS | DEBUG_UART_VIRT
105d5bd4e8dSOleksij Rempel
106d5bd4e8dSOleksij Rempel		    0x80000000      | 0xf0000000     | UART0
107d5bd4e8dSOleksij Rempel		    0x80004000      | 0xf0004000     | UART1
108d5bd4e8dSOleksij Rempel		    0x80008000      | 0xf0008000     | UART2
109d5bd4e8dSOleksij Rempel		    0x8000c000      | 0xf000c000     | UART3
110d5bd4e8dSOleksij Rempel		    0x80010000      | 0xf0010000     | UART4
111d5bd4e8dSOleksij Rempel		    0x80014000      | 0xf0014000     | UART5
112d5bd4e8dSOleksij Rempel		    0x80018000      | 0xf0018000     | UART6
113d5bd4e8dSOleksij Rempel		    0x8001c000      | 0xf001c000     | UART7
114d5bd4e8dSOleksij Rempel		    0x80020000      | 0xf0020000     | UART8
115d5bd4e8dSOleksij Rempel		    0x80024000      | 0xf0024000     | UART9
116d5bd4e8dSOleksij Rempel
11713079a73SJean-Christophe PLAGNIOL-VILLARD	config AT91_DEBUG_LL_DBGU0
1185f58c970SAlexandre Belloni		bool "Kernel low-level debugging on rm9200, 9260/9g20, 9261/9g10, 9rl, 9x5, 9n12"
1195f58c970SAlexandre Belloni		select DEBUG_AT91_UART
12042dfd1e1SNicolas Ferre		depends on ARCH_AT91
121ae57d0c6SAlexandre Belloni		depends on SOC_AT91RM9200 || SOC_AT91SAM9
12213079a73SJean-Christophe PLAGNIOL-VILLARD
12313079a73SJean-Christophe PLAGNIOL-VILLARD	config AT91_DEBUG_LL_DBGU1
1245f58c970SAlexandre Belloni		bool "Kernel low-level debugging on 9263, 9g45 and sama5d3"
1255f58c970SAlexandre Belloni		select DEBUG_AT91_UART
12642dfd1e1SNicolas Ferre		depends on ARCH_AT91
127ae57d0c6SAlexandre Belloni		depends on SOC_AT91SAM9 || SOC_SAMA5
12813079a73SJean-Christophe PLAGNIOL-VILLARD
1292dc850b6SNicolas Ferre	config AT91_DEBUG_LL_DBGU2
1302dc850b6SNicolas Ferre		bool "Kernel low-level debugging on sama5d4"
1315f58c970SAlexandre Belloni		select DEBUG_AT91_UART
13242dfd1e1SNicolas Ferre		depends on ARCH_AT91
133ae57d0c6SAlexandre Belloni		depends on SOC_SAMA5
1342dc850b6SNicolas Ferre
135f1ac922dSStephen Warren	config DEBUG_BCM2835
136f1ac922dSStephen Warren		bool "Kernel low-level debugging on BCM2835 PL011 UART"
137f1ac922dSStephen Warren		depends on ARCH_BCM2835
1385c972af4SRussell King		select DEBUG_UART_PL01X
139f1ac922dSStephen Warren
14006580275SHauke Mehrtens	config DEBUG_BCM_5301X
14106580275SHauke Mehrtens		bool "Kernel low-level debugging on BCM5301X UART1"
14206580275SHauke Mehrtens		depends on ARCH_BCM_5301X
143140bd603SHauke Mehrtens		select DEBUG_UART_8250
14406580275SHauke Mehrtens
145753d1243SChristian Daudt	config DEBUG_BCM_KONA_UART
146753d1243SChristian Daudt		bool "Kernel low-level debugging messages via BCM KONA UART"
1477aa2077bSFlorian Fainelli		depends on ARCH_BCM_MOBILE
148753d1243SChristian Daudt		select DEBUG_UART_8250
149753d1243SChristian Daudt		help
150753d1243SChristian Daudt		  Say Y here if you want kernel low-level debugging support
151753d1243SChristian Daudt		  on Broadcom SoC platforms.
152753d1243SChristian Daudt		  This low level debug works for Broadcom
153753d1243SChristian Daudt		  mobile SoCs in the Kona family of chips (e.g. bcm28155,
154753d1243SChristian Daudt		  bcm11351, etc...)
155753d1243SChristian Daudt
156b51312beSFlorian Fainelli	config DEBUG_BCM63XX
157b51312beSFlorian Fainelli		bool "Kernel low-level debugging on BCM63XX UART"
158b51312beSFlorian Fainelli		depends on ARCH_BCM_63XX
159b51312beSFlorian Fainelli		select DEBUG_UART_BCM63XX
160b51312beSFlorian Fainelli
161caad0b41SSebastian Hesselbarth	config DEBUG_BERLIN_UART
162caad0b41SSebastian Hesselbarth		bool "Marvell Berlin SoC Debug UART"
163caad0b41SSebastian Hesselbarth		depends on ARCH_BERLIN
164caad0b41SSebastian Hesselbarth		select DEBUG_UART_8250
165caad0b41SSebastian Hesselbarth		help
166caad0b41SSebastian Hesselbarth		  Say Y here if you want kernel low-level debugging support
167caad0b41SSebastian Hesselbarth		  on Marvell Berlin SoC based platforms.
168caad0b41SSebastian Hesselbarth
16981b43a6eSMarc Carino	config DEBUG_BRCMSTB_UART
17081b43a6eSMarc Carino		bool "Use BRCMSTB UART for low-level debug"
17181b43a6eSMarc Carino		depends on ARCH_BRCMSTB
17281b43a6eSMarc Carino		select DEBUG_UART_8250
17381b43a6eSMarc Carino		help
17481b43a6eSMarc Carino		  Say Y here if you want the debug print routines to direct
17581b43a6eSMarc Carino		  their output to the first serial port on these devices.
17681b43a6eSMarc Carino
17781b43a6eSMarc Carino		  If you have a Broadcom STB chip and would like early print
17881b43a6eSMarc Carino		  messages to appear over the UART, select this option.
17981b43a6eSMarc Carino
180164acf96SStephen Boyd	config DEBUG_CLPS711X_UART1
181164acf96SStephen Boyd		bool "Kernel low-level debugging messages via UART1"
182164acf96SStephen Boyd		depends on ARCH_CLPS711X
183164acf96SStephen Boyd		help
184164acf96SStephen Boyd		  Say Y here if you want the debug print routines to direct
185164acf96SStephen Boyd		  their output to the first serial port on these devices.
18617916b28SWill Deacon
18717916b28SWill Deacon	config DEBUG_CLPS711X_UART2
18817916b28SWill Deacon		bool "Kernel low-level debugging messages via UART2"
18917916b28SWill Deacon		depends on ARCH_CLPS711X
19017916b28SWill Deacon		help
19117916b28SWill Deacon		  Say Y here if you want the debug print routines to direct
19217916b28SWill Deacon		  their output to the second serial port on these devices.
19317916b28SWill Deacon
19429c9b7beSArnd Bergmann	config DEBUG_CNS3XXX
19529c9b7beSArnd Bergmann		bool "Kernel Kernel low-level debugging on Cavium Networks CNS3xxx"
19629c9b7beSArnd Bergmann		depends on ARCH_CNS3XXX
197b125170aSKrzysztof Hałasa		select DEBUG_UART_8250
19829c9b7beSArnd Bergmann		help
19929c9b7beSArnd Bergmann		  Say Y here if you want the debug print routines to direct
20029c9b7beSArnd Bergmann                  their output to the CNS3xxx UART0.
20129c9b7beSArnd Bergmann
202477099f1SUwe Kleine-König	config DEBUG_DAVINCI_DA8XX_UART1
203477099f1SUwe Kleine-König		bool "Kernel low-level debugging on DaVinci DA8XX using UART1"
204477099f1SUwe Kleine-König		depends on ARCH_DAVINCI_DA8XX
20597bd1a48SRussell King		select DEBUG_UART_8250
206477099f1SUwe Kleine-König		help
207477099f1SUwe Kleine-König		  Say Y here if you want the debug print routines to direct
208477099f1SUwe Kleine-König		  their output to UART1 serial port on DaVinci DA8XX devices.
209477099f1SUwe Kleine-König
210477099f1SUwe Kleine-König	config DEBUG_DAVINCI_DA8XX_UART2
211477099f1SUwe Kleine-König		bool "Kernel low-level debugging on DaVinci DA8XX using UART2"
212477099f1SUwe Kleine-König		depends on ARCH_DAVINCI_DA8XX
21397bd1a48SRussell King		select DEBUG_UART_8250
214477099f1SUwe Kleine-König		help
215477099f1SUwe Kleine-König		  Say Y here if you want the debug print routines to direct
216477099f1SUwe Kleine-König		  their output to UART2 serial port on DaVinci DA8XX devices.
217477099f1SUwe Kleine-König
218477099f1SUwe Kleine-König	config DEBUG_DAVINCI_DMx_UART0
219477099f1SUwe Kleine-König		bool "Kernel low-level debugging on DaVinci DMx using UART0"
220477099f1SUwe Kleine-König		depends on ARCH_DAVINCI_DMx
22197bd1a48SRussell King		select DEBUG_UART_8250
222477099f1SUwe Kleine-König		help
223477099f1SUwe Kleine-König		  Say Y here if you want the debug print routines to direct
224477099f1SUwe Kleine-König		  their output to UART0 serial port on DaVinci DMx devices.
225477099f1SUwe Kleine-König
226aaf5e0beSNick Bowler	config DEBUG_ZYNQ_UART0
227aaf5e0beSNick Bowler		bool "Kernel low-level debugging on Xilinx Zynq using UART0"
228aaf5e0beSNick Bowler		depends on ARCH_ZYNQ
229aaf5e0beSNick Bowler		help
230aaf5e0beSNick Bowler		  Say Y here if you want the debug print routines to direct
231aaf5e0beSNick Bowler		  their output to UART0 on the Zynq platform.
232aaf5e0beSNick Bowler
233aaf5e0beSNick Bowler	config DEBUG_ZYNQ_UART1
234aaf5e0beSNick Bowler		bool "Kernel low-level debugging on Xilinx Zynq using UART1"
235aaf5e0beSNick Bowler		depends on ARCH_ZYNQ
236aaf5e0beSNick Bowler		help
237aaf5e0beSNick Bowler		  Say Y here if you want the debug print routines to direct
238aaf5e0beSNick Bowler		  their output to UART1 on the Zynq platform.
239aaf5e0beSNick Bowler
240aaf5e0beSNick Bowler		  If you have a ZC702 board and want early boot messages to
241aaf5e0beSNick Bowler		  appear on the USB serial adaptor, select this option.
242aaf5e0beSNick Bowler
243e76f4750SRussell King	config DEBUG_DC21285_PORT
244e76f4750SRussell King		bool "Kernel low-level debugging messages via footbridge serial port"
245e76f4750SRussell King		depends on FOOTBRIDGE
246e76f4750SRussell King		help
247e76f4750SRussell King		  Say Y here if you want the debug print routines to direct
248e76f4750SRussell King		  their output to the serial port in the DC21285 (Footbridge).
249e76f4750SRussell King
250e23814daSBaruch Siach	config DEBUG_DIGICOLOR_UA0
251e23814daSBaruch Siach		bool "Kernel low-level debugging messages via Digicolor UA0"
252e23814daSBaruch Siach		depends on ARCH_DIGICOLOR
253e23814daSBaruch Siach		help
254e23814daSBaruch Siach		  Say Y here if you want the debug print routines to direct
255e23814daSBaruch Siach		  their output to the UA0 serial port in the CX92755.
256e23814daSBaruch Siach
257e76f4750SRussell King	config DEBUG_FOOTBRIDGE_COM1
258e76f4750SRussell King		bool "Kernel low-level debugging messages via footbridge 8250 at PCI COM1"
259e76f4750SRussell King		depends on FOOTBRIDGE
260e76f4750SRussell King		help
261e76f4750SRussell King		  Say Y here if you want the debug print routines to direct
262e76f4750SRussell King		  their output to the 8250 at PCI COM1.
263e76f4750SRussell King
2648d258bebSHaojian Zhuang	config DEBUG_HI3620_UART
2658d258bebSHaojian Zhuang		bool "Hisilicon HI3620 Debug UART"
2668d258bebSHaojian Zhuang		depends on ARCH_HI3xxx
2678d258bebSHaojian Zhuang		select DEBUG_UART_PL01X
2688d258bebSHaojian Zhuang		help
2698d258bebSHaojian Zhuang		  Say Y here if you want kernel low-level debugging support
2708d258bebSHaojian Zhuang		  on HI3620 UART.
2718d258bebSHaojian Zhuang
2728d258bebSHaojian Zhuang	config DEBUG_HI3716_UART
2738d258bebSHaojian Zhuang		bool "Hisilicon Hi3716 Debug UART"
2748d258bebSHaojian Zhuang		depends on ARCH_HI3xxx
2758d258bebSHaojian Zhuang		select DEBUG_UART_PL01X
2768d258bebSHaojian Zhuang		help
2778d258bebSHaojian Zhuang		  Say Y here if you want kernel low-level debugging support
2788d258bebSHaojian Zhuang		  on HI3716 UART.
2798d258bebSHaojian Zhuang
280220e6cf7SRob Herring	config DEBUG_HIGHBANK_UART
281220e6cf7SRob Herring		bool "Kernel low-level debugging messages via Highbank UART"
282220e6cf7SRob Herring		depends on ARCH_HIGHBANK
2835c972af4SRussell King		select DEBUG_UART_PL01X
284220e6cf7SRob Herring		help
285220e6cf7SRob Herring		  Say Y here if you want the debug print routines to direct
286220e6cf7SRob Herring		  their output to the UART on Highbank based devices.
287220e6cf7SRob Herring
28827dafaa8SWang Long	config DEBUG_HIP01_UART
28927dafaa8SWang Long		bool "Hisilicon Hip01 Debug UART"
29027dafaa8SWang Long		depends on ARCH_HIP01
29127dafaa8SWang Long		select DEBUG_UART_8250
29227dafaa8SWang Long		help
29327dafaa8SWang Long		  Say Y here if you want kernel low-level debugging support
29427dafaa8SWang Long		  on HIP01 UART.
29527dafaa8SWang Long
296c9a1df48SHaojian Zhuang	config DEBUG_HIP04_UART
297c9a1df48SHaojian Zhuang		bool "Hisilicon HiP04 Debug UART"
298c9a1df48SHaojian Zhuang		depends on ARCH_HIP04
299c9a1df48SHaojian Zhuang		select DEBUG_UART_8250
300c9a1df48SHaojian Zhuang		help
301c9a1df48SHaojian Zhuang		  Say Y here if you want kernel low-level debugging support
302c9a1df48SHaojian Zhuang		  on HIP04 UART.
303c9a1df48SHaojian Zhuang
30437bdaf82SOlof Johansson	config DEBUG_HIX5HD2_UART
30537bdaf82SOlof Johansson		bool "Hisilicon Hix5hd2 Debug UART"
30637bdaf82SOlof Johansson		depends on ARCH_HIX5HD2
30793fd03a8SCatalin Marinas		select DEBUG_UART_PL01X
30893fd03a8SCatalin Marinas		help
30937bdaf82SOlof Johansson		  Say Y here if you want kernel low-level debugging support
31037bdaf82SOlof Johansson		  on Hix5hd2 UART.
3111da177e4SLinus Torvalds
312f350b861SShawn Guo	config DEBUG_IMX1_UART
313f350b861SShawn Guo		bool "i.MX1 Debug UART"
314f350b861SShawn Guo		depends on SOC_IMX1
315f350b861SShawn Guo		help
316f350b861SShawn Guo		  Say Y here if you want kernel low-level debugging support
317f350b861SShawn Guo		  on i.MX1.
318f350b861SShawn Guo
319f350b861SShawn Guo	config DEBUG_IMX23_UART
320f350b861SShawn Guo		bool "i.MX23 Debug UART"
321f350b861SShawn Guo		depends on SOC_IMX23
3225c972af4SRussell King		select DEBUG_UART_PL01X
323f350b861SShawn Guo		help
324f350b861SShawn Guo		  Say Y here if you want kernel low-level debugging support
325f350b861SShawn Guo		  on i.MX23.
326f350b861SShawn Guo
327f350b861SShawn Guo	config DEBUG_IMX25_UART
328f350b861SShawn Guo		bool "i.MX25 Debug UART"
329f350b861SShawn Guo		depends on SOC_IMX25
330f350b861SShawn Guo		help
331f350b861SShawn Guo		  Say Y here if you want kernel low-level debugging support
332f350b861SShawn Guo		  on i.MX25.
333f350b861SShawn Guo
334f350b861SShawn Guo	config DEBUG_IMX21_IMX27_UART
335f350b861SShawn Guo		bool "i.MX21 and i.MX27 Debug UART"
336f350b861SShawn Guo		depends on SOC_IMX21 || SOC_IMX27
337f350b861SShawn Guo		help
338f350b861SShawn Guo		  Say Y here if you want kernel low-level debugging support
339f350b861SShawn Guo		  on i.MX21 or i.MX27.
340f350b861SShawn Guo
341f350b861SShawn Guo	config DEBUG_IMX28_UART
342f350b861SShawn Guo		bool "i.MX28 Debug UART"
343f350b861SShawn Guo		depends on SOC_IMX28
3445c972af4SRussell King		select DEBUG_UART_PL01X
345f350b861SShawn Guo		help
346f350b861SShawn Guo		  Say Y here if you want kernel low-level debugging support
347f350b861SShawn Guo		  on i.MX28.
348f350b861SShawn Guo
3494ad625d4SShawn Guo	config DEBUG_IMX31_UART
3504ad625d4SShawn Guo		bool "i.MX31 Debug UART"
3514ad625d4SShawn Guo		depends on SOC_IMX31
352f350b861SShawn Guo		help
353f350b861SShawn Guo		  Say Y here if you want kernel low-level debugging support
3544ad625d4SShawn Guo		  on i.MX31.
3554ad625d4SShawn Guo
3564ad625d4SShawn Guo	config DEBUG_IMX35_UART
3574ad625d4SShawn Guo		bool "i.MX35 Debug UART"
3584ad625d4SShawn Guo		depends on SOC_IMX35
3594ad625d4SShawn Guo		help
3604ad625d4SShawn Guo		  Say Y here if you want kernel low-level debugging support
3614ad625d4SShawn Guo		  on i.MX35.
362f350b861SShawn Guo
363ad364a70SGreg Ungerer	config DEBUG_IMX50_UART
364ad364a70SGreg Ungerer		bool "i.MX50 Debug UART"
365ad364a70SGreg Ungerer		depends on SOC_IMX50
366ad364a70SGreg Ungerer		help
367ad364a70SGreg Ungerer		  Say Y here if you want kernel low-level debugging support
368ad364a70SGreg Ungerer		  on i.MX50.
369ad364a70SGreg Ungerer
370f350b861SShawn Guo	config DEBUG_IMX51_UART
371f350b861SShawn Guo		bool "i.MX51 Debug UART"
372f350b861SShawn Guo		depends on SOC_IMX51
373f350b861SShawn Guo		help
374f350b861SShawn Guo		  Say Y here if you want kernel low-level debugging support
375f350b861SShawn Guo		  on i.MX51.
376f350b861SShawn Guo
3777356420cSFabio Estevam	config DEBUG_IMX53_UART
3787356420cSFabio Estevam		bool "i.MX53 Debug UART"
3797356420cSFabio Estevam		depends on SOC_IMX53
380f350b861SShawn Guo		help
381f350b861SShawn Guo		  Say Y here if you want kernel low-level debugging support
3827356420cSFabio Estevam		  on i.MX53.
383f350b861SShawn Guo
38449c9e60eSShawn Guo	config DEBUG_IMX6Q_UART
3853c03a2feSShawn Guo		bool "i.MX6Q/DL Debug UART"
386785d7fabSDirk Behme		depends on SOC_IMX6Q
387785d7fabSDirk Behme		help
388785d7fabSDirk Behme		  Say Y here if you want kernel low-level debugging support
3893c03a2feSShawn Guo		  on i.MX6Q/DL.
390bac89d75SShawn Guo
39134e8a16bSShawn Guo	config DEBUG_IMX6SL_UART
39234e8a16bSShawn Guo		bool "i.MX6SL Debug UART"
39334e8a16bSShawn Guo		depends on SOC_IMX6SL
39434e8a16bSShawn Guo		help
39534e8a16bSShawn Guo		  Say Y here if you want kernel low-level debugging support
39634e8a16bSShawn Guo		  on i.MX6SL.
39734e8a16bSShawn Guo
39874368e81SShawn Guo	config DEBUG_IMX6SX_UART
39974368e81SShawn Guo		bool "i.MX6SX Debug UART"
40074368e81SShawn Guo		depends on SOC_IMX6SX
40174368e81SShawn Guo		help
40274368e81SShawn Guo		  Say Y here if you want kernel low-level debugging support
40374368e81SShawn Guo		  on i.MX6SX.
40474368e81SShawn Guo
405828989adSSantosh Shilimkar	config DEBUG_KEYSTONE_UART0
406828989adSSantosh Shilimkar		bool "Kernel low-level debugging on KEYSTONE2 using UART0"
407828989adSSantosh Shilimkar		depends on ARCH_KEYSTONE
408f2acf003SRussell King		select DEBUG_UART_8250
409828989adSSantosh Shilimkar		help
410828989adSSantosh Shilimkar		  Say Y here if you want the debug print routines to direct
411828989adSSantosh Shilimkar		  their output to UART0 serial port on KEYSTONE2 devices.
412828989adSSantosh Shilimkar
413828989adSSantosh Shilimkar	config DEBUG_KEYSTONE_UART1
414828989adSSantosh Shilimkar		bool "Kernel low-level debugging on KEYSTONE2 using UART1"
415828989adSSantosh Shilimkar		depends on ARCH_KEYSTONE
416f2acf003SRussell King		select DEBUG_UART_8250
417828989adSSantosh Shilimkar		help
418828989adSSantosh Shilimkar		  Say Y here if you want the debug print routines to direct
419828989adSSantosh Shilimkar		  their output to UART1 serial port on KEYSTONE2 devices.
420828989adSSantosh Shilimkar
421abbfb21eSDaniel Thompson	config DEBUG_KS8695_UART
422abbfb21eSDaniel Thompson		bool "KS8695 Debug UART"
423abbfb21eSDaniel Thompson		depends on ARCH_KS8695
424abbfb21eSDaniel Thompson		help
425abbfb21eSDaniel Thompson		  Say Y here if you want kernel low-level debugging support
426abbfb21eSDaniel Thompson		  on KS8695.
427abbfb21eSDaniel Thompson
428d8a00916SCarlo Caione	config DEBUG_MESON_UARTAO
429d8a00916SCarlo Caione		bool "Kernel low-level debugging via Meson6 UARTAO"
430d8a00916SCarlo Caione		depends on ARCH_MESON
431d8a00916SCarlo Caione		help
432d8a00916SCarlo Caione		  Say Y here if you want kernel low-lever debugging support
433d8a00916SCarlo Caione		  on Amlogic Meson6 based platforms on the UARTAO.
434d8a00916SCarlo Caione
435fa4cd2a8SHaojian Zhuang	config DEBUG_MMP_UART2
436fa4cd2a8SHaojian Zhuang		bool "Kernel low-level debugging message via MMP UART2"
437fa4cd2a8SHaojian Zhuang		depends on ARCH_MMP
4384a003647SRussell King		select DEBUG_UART_8250
439fa4cd2a8SHaojian Zhuang		help
440fa4cd2a8SHaojian Zhuang		  Say Y here if you want kernel low-level debugging support
441fa4cd2a8SHaojian Zhuang		  on MMP UART2.
442fa4cd2a8SHaojian Zhuang
443fa4cd2a8SHaojian Zhuang	config DEBUG_MMP_UART3
444fa4cd2a8SHaojian Zhuang		bool "Kernel low-level debugging message via MMP UART3"
445fa4cd2a8SHaojian Zhuang		depends on ARCH_MMP
4464a003647SRussell King		select DEBUG_UART_8250
447fa4cd2a8SHaojian Zhuang		help
448fa4cd2a8SHaojian Zhuang		  Say Y here if you want kernel low-level debugging support
449fa4cd2a8SHaojian Zhuang		  on MMP UART3.
450fa4cd2a8SHaojian Zhuang
4517098cff2SIvan T. Ivanov	config DEBUG_MSM_UART
4527098cff2SIvan T. Ivanov		bool "Kernel low-level debugging messages via MSM UART"
4537098cff2SIvan T. Ivanov		depends on ARCH_MSM
454650e3f0dSStephen Boyd		help
455650e3f0dSStephen Boyd		  Say Y here if you want the debug print routines to direct
4567098cff2SIvan T. Ivanov		  their output to the serial port on MSM devices.
457650e3f0dSStephen Boyd
45830cd6552SStephen Boyd		  ARCH                DEBUG_UART_PHYS   DEBUG_UART_VIRT   #
4597098cff2SIvan T. Ivanov		  MSM7X00A, QSD8X50   0xa9a00000        0xe1000000        UART1
4607098cff2SIvan T. Ivanov		  MSM7X00A, QSD8X50   0xa9b00000        0xe1000000        UART2
4617098cff2SIvan T. Ivanov		  MSM7X00A, QSD8X50   0xa9c00000        0xe1000000        UART3
462650e3f0dSStephen Boyd
4637098cff2SIvan T. Ivanov		  MSM7X30             0xaca00000        0xe1000000        UART1
4647098cff2SIvan T. Ivanov		  MSM7X30             0xacb00000        0xe1000000        UART2
4657098cff2SIvan T. Ivanov		  MSM7X30             0xacc00000        0xe1000000        UART3
466650e3f0dSStephen Boyd
4677098cff2SIvan T. Ivanov		  Please adjust DEBUG_UART_PHYS and DEBUG_UART_BASE configuration
4687098cff2SIvan T. Ivanov		  options based on your needs.
469a3d3ef9dSStephen Boyd
4707098cff2SIvan T. Ivanov	config DEBUG_QCOM_UARTDM
4717098cff2SIvan T. Ivanov		bool "Kernel low-level debugging messages via QCOM UARTDM"
4727098cff2SIvan T. Ivanov		depends on ARCH_QCOM
473a3d3ef9dSStephen Boyd		help
474a3d3ef9dSStephen Boyd		  Say Y here if you want the debug print routines to direct
4757098cff2SIvan T. Ivanov		  their output to the serial port on Qualcomm devices.
476a3d3ef9dSStephen Boyd
47730cd6552SStephen Boyd		  ARCH      DEBUG_UART_PHYS   DEBUG_UART_VIRT
47830cd6552SStephen Boyd		  APQ8064   0x16640000        0xf0040000
4792f528dd3SGeorgi Djakov		  APQ8084   0xf995e000        0xfa75e000
4807098cff2SIvan T. Ivanov		  MSM8X60   0x19c40000        0xf0040000
4817098cff2SIvan T. Ivanov		  MSM8960   0x16440000        0xf0040000
4827098cff2SIvan T. Ivanov		  MSM8974   0xf991e000        0xfa71e000
4837098cff2SIvan T. Ivanov
4847098cff2SIvan T. Ivanov		  Please adjust DEBUG_UART_PHYS and DEBUG_UART_BASE configuration
4857098cff2SIvan T. Ivanov		  options based on your needs.
4863c8828f6SRohit Vaswani
487d91125ddSMaxime Ripard	config DEBUG_MVEBU_UART0
488d91125ddSMaxime Ripard		bool "Kernel low-level debugging messages via MVEBU UART0 (old bootloaders)"
489bfd5af99SRob Herring		depends on ARCH_MVEBU
4904a003647SRussell King		select DEBUG_UART_8250
491bfd5af99SRob Herring		help
492bfd5af99SRob Herring		  Say Y here if you want kernel low-level debugging support
493d91125ddSMaxime Ripard		  on MVEBU based platforms on UART0.
494bfd5af99SRob Herring
495c2804cd6SThomas Petazzoni		  This option should be used with the old bootloaders
496c2804cd6SThomas Petazzoni		  that left the internal registers mapped at
497c2804cd6SThomas Petazzoni		  0xd0000000. As of today, this is the case on
498c2804cd6SThomas Petazzoni		  platforms such as the Globalscale Mirabox or the
499c2804cd6SThomas Petazzoni		  Plathome OpenBlocks AX3, when using the original
500c2804cd6SThomas Petazzoni		  bootloader.
501c2804cd6SThomas Petazzoni
502c2804cd6SThomas Petazzoni		  If the wrong DEBUG_MVEBU_UART* option is selected,
503c2804cd6SThomas Petazzoni		  when u-boot hands over to the kernel, the system
504c2804cd6SThomas Petazzoni		  silently crashes, with no serial output at all.
505c2804cd6SThomas Petazzoni
506d91125ddSMaxime Ripard	config DEBUG_MVEBU_UART0_ALTERNATE
507d91125ddSMaxime Ripard		bool "Kernel low-level debugging messages via MVEBU UART0 (new bootloaders)"
508c2804cd6SThomas Petazzoni		depends on ARCH_MVEBU
5094a003647SRussell King		select DEBUG_UART_8250
510c2804cd6SThomas Petazzoni		help
511c2804cd6SThomas Petazzoni		  Say Y here if you want kernel low-level debugging support
512d91125ddSMaxime Ripard		  on MVEBU based platforms on UART0.
513c2804cd6SThomas Petazzoni
514c2804cd6SThomas Petazzoni		  This option should be used with the new bootloaders
515c2804cd6SThomas Petazzoni		  that remap the internal registers at 0xf1000000.
516c2804cd6SThomas Petazzoni
517c2804cd6SThomas Petazzoni		  If the wrong DEBUG_MVEBU_UART* option is selected,
518c2804cd6SThomas Petazzoni		  when u-boot hands over to the kernel, the system
519c2804cd6SThomas Petazzoni		  silently crashes, with no serial output at all.
520c2804cd6SThomas Petazzoni
521bd920490SMaxime Ripard	config DEBUG_MVEBU_UART1_ALTERNATE
522bd920490SMaxime Ripard		bool "Kernel low-level debugging messages via MVEBU UART1 (new bootloaders)"
523bd920490SMaxime Ripard		depends on ARCH_MVEBU
524bd920490SMaxime Ripard		select DEBUG_UART_8250
525bd920490SMaxime Ripard		help
526bd920490SMaxime Ripard		  Say Y here if you want kernel low-level debugging support
527bd920490SMaxime Ripard		  on MVEBU based platforms on UART1.
5281da177e4SLinus Torvalds
5291da177e4SLinus Torvalds		  This option should be used with the new bootloaders
5301da177e4SLinus Torvalds		  that remap the internal registers at 0xf1000000.
5311da177e4SLinus Torvalds
5321da177e4SLinus Torvalds		  If the wrong DEBUG_MVEBU_UART* option is selected,
5331da177e4SLinus Torvalds		  when u-boot hands over to the kernel, the system
5341da177e4SLinus Torvalds		  silently crashes, with no serial output at all.
5351da177e4SLinus Torvalds
536c7c3eac6SShawn Guo	config DEBUG_VF_UART
537c7c3eac6SShawn Guo		bool "Vybrid UART"
538c7c3eac6SShawn Guo		depends on SOC_VF610
539c7c3eac6SShawn Guo		help
540c7c3eac6SShawn Guo		  Say Y here if you want kernel low-level debugging support
541c7c3eac6SShawn Guo		  on Vybrid based platforms.
542c7c3eac6SShawn Guo
5434d31e664SDaniel Thompson	config DEBUG_NETX_UART
5444d31e664SDaniel Thompson		bool "Kernel low-level debugging messages via NetX UART"
5454d31e664SDaniel Thompson		depends on ARCH_NETX
5464d31e664SDaniel Thompson		help
5474d31e664SDaniel Thompson		  Say Y here if you want kernel low-level debugging support
5484d31e664SDaniel Thompson		  on Hilscher NetX based platforms.
5494d31e664SDaniel Thompson
550266c3479SLinus Walleij	config DEBUG_NOMADIK_UART
551266c3479SLinus Walleij		bool "Kernel low-level debugging messages via NOMADIK UART"
552266c3479SLinus Walleij		depends on ARCH_NOMADIK
5535c972af4SRussell King		select DEBUG_UART_PL01X
554266c3479SLinus Walleij		help
555266c3479SLinus Walleij		  Say Y here if you want kernel low-level debugging support
556266c3479SLinus Walleij		  on NOMADIK based platforms.
557266c3479SLinus Walleij
5589851ca57SDaniel Tang	config DEBUG_NSPIRE_CLASSIC_UART
5599851ca57SDaniel Tang		bool "Kernel low-level debugging via TI-NSPIRE 8250 UART"
5609851ca57SDaniel Tang		depends on ARCH_NSPIRE
5614a003647SRussell King		select DEBUG_UART_8250
5629851ca57SDaniel Tang		help
5639851ca57SDaniel Tang		  Say Y here if you want kernel low-level debugging support
5649851ca57SDaniel Tang		  on TI-NSPIRE classic models.
5659851ca57SDaniel Tang
5669851ca57SDaniel Tang	config DEBUG_NSPIRE_CX_UART
5679851ca57SDaniel Tang		bool "Kernel low-level debugging via TI-NSPIRE PL011 UART"
5689851ca57SDaniel Tang		depends on ARCH_NSPIRE
5695c972af4SRussell King		select DEBUG_UART_PL01X
5709851ca57SDaniel Tang		help
5719851ca57SDaniel Tang		  Say Y here if you want kernel low-level debugging support
5729851ca57SDaniel Tang		  on TI-NSPIRE CX models.
5739851ca57SDaniel Tang
574c26b9993SDaniel Thompson	config DEBUG_OMAP1UART1
575c26b9993SDaniel Thompson		bool "Kernel low-level debugging via OMAP1 UART1"
576c26b9993SDaniel Thompson		depends on ARCH_OMAP1
577c26b9993SDaniel Thompson		select DEBUG_UART_8250
578c26b9993SDaniel Thompson		help
579c26b9993SDaniel Thompson		  Say Y here if you want kernel low-level debugging support
580c26b9993SDaniel Thompson		  on OMAP1 based platforms (except OMAP730) on the UART1.
581c26b9993SDaniel Thompson
582c26b9993SDaniel Thompson	config DEBUG_OMAP1UART2
583c26b9993SDaniel Thompson		bool "Kernel low-level debugging via OMAP1 UART2"
584c26b9993SDaniel Thompson		depends on ARCH_OMAP1
585c26b9993SDaniel Thompson		select DEBUG_UART_8250
586c26b9993SDaniel Thompson		help
587c26b9993SDaniel Thompson		  Say Y here if you want kernel low-level debugging support
588c26b9993SDaniel Thompson		  on OMAP1 based platforms (except OMAP730) on the UART2.
589c26b9993SDaniel Thompson
590c26b9993SDaniel Thompson	config DEBUG_OMAP1UART3
591c26b9993SDaniel Thompson		bool "Kernel low-level debugging via OMAP1 UART3"
592c26b9993SDaniel Thompson		depends on ARCH_OMAP1
593c26b9993SDaniel Thompson		select DEBUG_UART_8250
594c26b9993SDaniel Thompson		help
595c26b9993SDaniel Thompson		  Say Y here if you want kernel low-level debugging support
596c26b9993SDaniel Thompson		  on OMAP1 based platforms (except OMAP730) on the UART3.
597c26b9993SDaniel Thompson
598cce278d2SRussell King	config DEBUG_OMAP2UART1
599cce278d2SRussell King		bool "OMAP2/3/4 UART1 (omap2/3 sdp boards and some omap3 boards)"
600808b7e07STony Lindgren		depends on ARCH_OMAP2PLUS
601cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
602808b7e07STony Lindgren		help
603cce278d2SRussell King		  This covers at least h4, 2430sdp, 3430sdp, 3630sdp,
604cce278d2SRussell King		  omap3 torpedo and 3530 lv som.
605cce278d2SRussell King
606cce278d2SRussell King	config DEBUG_OMAP2UART2
607cce278d2SRussell King		bool "Kernel low-level debugging messages via OMAP2/3/4 UART2"
608cce278d2SRussell King		depends on ARCH_OMAP2PLUS
609cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
610cce278d2SRussell King
611cce278d2SRussell King	config DEBUG_OMAP2UART3
612cce278d2SRussell King		bool "Kernel low-level debugging messages via OMAP2 UART3 (n8x0)"
613cce278d2SRussell King		depends on ARCH_OMAP2PLUS
614cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
615cce278d2SRussell King
616cce278d2SRussell King	config DEBUG_OMAP3UART3
617cce278d2SRussell King		bool "Kernel low-level debugging messages via OMAP3 UART3 (most omap3 boards)"
618cce278d2SRussell King		depends on ARCH_OMAP2PLUS
619cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
620cce278d2SRussell King		help
621cce278d2SRussell King		  This covers at least cm_t3x, beagle, crane, devkit8000,
622cce278d2SRussell King		  igep00x0, ldp, n900, n9(50), pandora, overo, touchbook,
623cce278d2SRussell King		  and 3517evm.
624cce278d2SRussell King
625cce278d2SRussell King	config DEBUG_OMAP4UART3
626cce278d2SRussell King		bool "Kernel low-level debugging messages via OMAP4/5 UART3 (omap4 blaze, panda, omap5 sevm)"
627cce278d2SRussell King		depends on ARCH_OMAP2PLUS
628cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
629cce278d2SRussell King
630cce278d2SRussell King	config DEBUG_OMAP3UART4
631cce278d2SRussell King		bool "Kernel low-level debugging messages via OMAP36XX UART4"
632cce278d2SRussell King		depends on ARCH_OMAP2PLUS
633cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
634cce278d2SRussell King
635cce278d2SRussell King	config DEBUG_OMAP4UART4
636cce278d2SRussell King		bool "Kernel low-level debugging messages via OMAP4/5 UART4"
637cce278d2SRussell King		depends on ARCH_OMAP2PLUS
638cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
639cce278d2SRussell King
640c26b9993SDaniel Thompson	config DEBUG_OMAP7XXUART1
641c26b9993SDaniel Thompson		bool "Kernel low-level debugging via OMAP730 UART1"
642c26b9993SDaniel Thompson		depends on ARCH_OMAP730
643c26b9993SDaniel Thompson		select DEBUG_UART_8250
644c26b9993SDaniel Thompson		help
645c26b9993SDaniel Thompson		  Say Y here if you want kernel low-level debugging support
646c26b9993SDaniel Thompson		  on OMAP730 based platforms on the UART1.
647c26b9993SDaniel Thompson
648c26b9993SDaniel Thompson	config DEBUG_OMAP7XXUART2
649c26b9993SDaniel Thompson		bool "Kernel low-level debugging via OMAP730 UART2"
650c26b9993SDaniel Thompson		depends on ARCH_OMAP730
651c26b9993SDaniel Thompson		select DEBUG_UART_8250
652c26b9993SDaniel Thompson		help
653c26b9993SDaniel Thompson		  Say Y here if you want kernel low-level debugging support
654c26b9993SDaniel Thompson		  on OMAP730 based platforms on the UART2.
655c26b9993SDaniel Thompson
656c26b9993SDaniel Thompson	config DEBUG_OMAP7XXUART3
657c26b9993SDaniel Thompson		bool "Kernel low-level debugging via OMAP730 UART3"
658c26b9993SDaniel Thompson		depends on ARCH_OMAP730
659c26b9993SDaniel Thompson		select DEBUG_UART_8250
660c26b9993SDaniel Thompson		help
661c26b9993SDaniel Thompson		  Say Y here if you want kernel low-level debugging support
662c26b9993SDaniel Thompson		  on OMAP730 based platforms on the UART3.
663c26b9993SDaniel Thompson
664cce278d2SRussell King	config DEBUG_TI81XXUART1
665cce278d2SRussell King		bool "Kernel low-level debugging messages via TI81XX UART1 (ti8148evm)"
666cce278d2SRussell King		depends on ARCH_OMAP2PLUS
667cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
668cce278d2SRussell King
669cce278d2SRussell King	config DEBUG_TI81XXUART2
670cce278d2SRussell King		bool "Kernel low-level debugging messages via TI81XX UART2"
671cce278d2SRussell King		depends on ARCH_OMAP2PLUS
672cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
673cce278d2SRussell King
674cce278d2SRussell King	config DEBUG_TI81XXUART3
675cce278d2SRussell King		bool "Kernel low-level debugging messages via TI81XX UART3 (ti8168evm)"
676cce278d2SRussell King		depends on ARCH_OMAP2PLUS
677cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
678cce278d2SRussell King
679cce278d2SRussell King	config DEBUG_AM33XXUART1
680cce278d2SRussell King		bool "Kernel low-level debugging messages via AM33XX UART1"
681cce278d2SRussell King		depends on ARCH_OMAP2PLUS
682cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
683cce278d2SRussell King
684cce278d2SRussell King	config DEBUG_ZOOM_UART
685cce278d2SRussell King		bool "Kernel low-level debugging messages via Zoom2/3 UART"
686cce278d2SRussell King		depends on ARCH_OMAP2PLUS
687cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
688808b7e07STony Lindgren
68959bba2a9SRob Herring	config DEBUG_PICOXCELL_UART
69059bba2a9SRob Herring		depends on ARCH_PICOXCELL
69159bba2a9SRob Herring		bool "Use PicoXcell UART for low-level debug"
6920b4cccbeSRussell King		select DEBUG_UART_8250
69359bba2a9SRob Herring		help
69459bba2a9SRob Herring		  Say Y here if you want kernel low-level debugging support
69559bba2a9SRob Herring		  on PicoXcell based platforms.
69659bba2a9SRob Herring
6970a43cd3bSHaojian Zhuang	config DEBUG_PXA_UART1
6980a43cd3bSHaojian Zhuang		depends on ARCH_PXA
6990a43cd3bSHaojian Zhuang		bool "Use PXA UART1 for low-level debug"
7004a003647SRussell King		select DEBUG_UART_8250
7010a43cd3bSHaojian Zhuang		help
7020a43cd3bSHaojian Zhuang		  Say Y here if you want kernel low-level debugging support
7030a43cd3bSHaojian Zhuang		  on PXA UART1.
7040a43cd3bSHaojian Zhuang
705e76f4750SRussell King	config DEBUG_REALVIEW_STD_PORT
706e76f4750SRussell King		bool "RealView Default UART"
707e76f4750SRussell King		depends on ARCH_REALVIEW
7085c972af4SRussell King		select DEBUG_UART_PL01X
709e76f4750SRussell King		help
710e76f4750SRussell King		  Say Y here if you want the debug print routines to direct
711e76f4750SRussell King		  their output to the serial port on RealView EB, PB11MP, PBA8
712e76f4750SRussell King		  and PBX platforms.
713e76f4750SRussell King
714e76f4750SRussell King	config DEBUG_REALVIEW_PB1176_PORT
715e76f4750SRussell King		bool "RealView PB1176 UART"
716e76f4750SRussell King		depends on MACH_REALVIEW_PB1176
7175c972af4SRussell King		select DEBUG_UART_PL01X
718e76f4750SRussell King		help
719e76f4750SRussell King		  Say Y here if you want the debug print routines to direct
720e76f4750SRussell King		  their output to the standard serial port on the RealView
721e76f4750SRussell King		  PB1176 platform.
722e76f4750SRussell King
723cce278d2SRussell King	config DEBUG_RK29_UART0
724cce278d2SRussell King		bool "Kernel low-level debugging messages via Rockchip RK29 UART0"
72538bd6892SHeiko Stuebner		depends on ARCH_ROCKCHIP
7264a003647SRussell King		select DEBUG_UART_8250
727cce278d2SRussell King		help
728cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
729cce278d2SRussell King		  on Rockchip based platforms.
730cce278d2SRussell King
731cce278d2SRussell King	config DEBUG_RK29_UART1
732cce278d2SRussell King		bool "Kernel low-level debugging messages via Rockchip RK29 UART1"
733cce278d2SRussell King		depends on ARCH_ROCKCHIP
7344a003647SRussell King		select DEBUG_UART_8250
735cce278d2SRussell King		help
736cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
737cce278d2SRussell King		  on Rockchip based platforms.
738cce278d2SRussell King
739cce278d2SRussell King	config DEBUG_RK29_UART2
740cce278d2SRussell King		bool "Kernel low-level debugging messages via Rockchip RK29 UART2"
741cce278d2SRussell King		depends on ARCH_ROCKCHIP
7424a003647SRussell King		select DEBUG_UART_8250
743cce278d2SRussell King		help
744cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
745cce278d2SRussell King		  on Rockchip based platforms.
746cce278d2SRussell King
747cce278d2SRussell King	config DEBUG_RK3X_UART0
748aa9c4f74SHeiko Stuebner		bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART0"
749cce278d2SRussell King		depends on ARCH_ROCKCHIP
7504a003647SRussell King		select DEBUG_UART_8250
751cce278d2SRussell King		help
752cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
753cce278d2SRussell King		  on Rockchip based platforms.
754cce278d2SRussell King
755cce278d2SRussell King	config DEBUG_RK3X_UART1
756aa9c4f74SHeiko Stuebner		bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART1"
757cce278d2SRussell King		depends on ARCH_ROCKCHIP
7584a003647SRussell King		select DEBUG_UART_8250
759cce278d2SRussell King		help
760cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
761cce278d2SRussell King		  on Rockchip based platforms.
762cce278d2SRussell King
763cce278d2SRussell King	config DEBUG_RK3X_UART2
764aa9c4f74SHeiko Stuebner		bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART2"
765cce278d2SRussell King		depends on ARCH_ROCKCHIP
7664a003647SRussell King		select DEBUG_UART_8250
767cce278d2SRussell King		help
768cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
769cce278d2SRussell King		  on Rockchip based platforms.
770cce278d2SRussell King
771cce278d2SRussell King	config DEBUG_RK3X_UART3
772aa9c4f74SHeiko Stuebner		bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART3"
773cce278d2SRussell King		depends on ARCH_ROCKCHIP
7744a003647SRussell King		select DEBUG_UART_8250
77538bd6892SHeiko Stuebner		help
77638bd6892SHeiko Stuebner		  Say Y here if you want kernel low-level debugging support
77738bd6892SHeiko Stuebner		  on Rockchip based platforms.
77838bd6892SHeiko Stuebner
779efd02ee9SHeiko Stuebner	config DEBUG_RK32_UART2
780efd02ee9SHeiko Stuebner		bool "Kernel low-level debugging messages via Rockchip RK32 UART2"
781efd02ee9SHeiko Stuebner		depends on ARCH_ROCKCHIP
782efd02ee9SHeiko Stuebner		select DEBUG_UART_8250
783efd02ee9SHeiko Stuebner		help
784efd02ee9SHeiko Stuebner		  Say Y here if you want kernel low-level debugging support
785efd02ee9SHeiko Stuebner		  on Rockchip RK32xx based platforms.
786efd02ee9SHeiko Stuebner
7877a2071c5SGeert Uytterhoeven	config DEBUG_R7S72100_SCIF2
7887a2071c5SGeert Uytterhoeven		bool "Kernel low-level debugging messages via SCIF2 on R7S72100"
7897a2071c5SGeert Uytterhoeven		depends on ARCH_R7S72100
7907a2071c5SGeert Uytterhoeven		help
7917a2071c5SGeert Uytterhoeven		  Say Y here if you want kernel low-level debugging support
7927a2071c5SGeert Uytterhoeven		  via SCIF2 on Renesas RZ/A1H (R7S72100).
7937a2071c5SGeert Uytterhoeven
7947a2071c5SGeert Uytterhoeven	config DEBUG_RCAR_GEN1_SCIF0
7957a2071c5SGeert Uytterhoeven		bool "Kernel low-level debugging messages via SCIF0 on R8A7778"
7967a2071c5SGeert Uytterhoeven		depends on ARCH_R8A7778
7977a2071c5SGeert Uytterhoeven		help
7987a2071c5SGeert Uytterhoeven		  Say Y here if you want kernel low-level debugging support
7997a2071c5SGeert Uytterhoeven		  via SCIF0 on Renesas R-Car M1A (R8A7778).
8007a2071c5SGeert Uytterhoeven
8017a2071c5SGeert Uytterhoeven	config DEBUG_RCAR_GEN1_SCIF2
8027a2071c5SGeert Uytterhoeven		bool "Kernel low-level debugging messages via SCIF2 on R8A7779"
8037a2071c5SGeert Uytterhoeven		depends on ARCH_R8A7779
8047a2071c5SGeert Uytterhoeven		help
8057a2071c5SGeert Uytterhoeven		  Say Y here if you want kernel low-level debugging support
8067a2071c5SGeert Uytterhoeven		  via SCIF2 on Renesas R-Car H1 (R8A7779).
8077a2071c5SGeert Uytterhoeven
8087a2071c5SGeert Uytterhoeven	config DEBUG_RCAR_GEN2_SCIF0
809*e2fd51b7SGeert Uytterhoeven		bool "Kernel low-level debugging messages via SCIF0 on R8A7790/R8A7791/R8A7793"
8107a2071c5SGeert Uytterhoeven		depends on ARCH_R8A7790 || ARCH_R8A7791 || ARCH_R8A7793
8117a2071c5SGeert Uytterhoeven		help
8127a2071c5SGeert Uytterhoeven		  Say Y here if you want kernel low-level debugging support
8137a2071c5SGeert Uytterhoeven		  via SCIF0 on Renesas R-Car H2 (R8A7790), M2-W (R8A7791), or
8147a2071c5SGeert Uytterhoeven		  M2-N (R8A7793).
8157a2071c5SGeert Uytterhoeven
8167a2071c5SGeert Uytterhoeven	config DEBUG_RCAR_GEN2_SCIF2
8177a2071c5SGeert Uytterhoeven		bool "Kernel low-level debugging messages via SCIF2 on R8A7794"
8187a2071c5SGeert Uytterhoeven		depends on ARCH_R8A7794
8197a2071c5SGeert Uytterhoeven		help
8207a2071c5SGeert Uytterhoeven		  Say Y here if you want kernel low-level debugging support
8217a2071c5SGeert Uytterhoeven		  via SCIF2 on Renesas R-Car E2 (R8A7794).
8227a2071c5SGeert Uytterhoeven
8237a2071c5SGeert Uytterhoeven	config DEBUG_RMOBILE_SCIFA0
8247a2071c5SGeert Uytterhoeven		bool "Kernel low-level debugging messages via SCIFA0 on R8A73A4/SH7372"
8257a2071c5SGeert Uytterhoeven		depends on ARCH_R8A73A4 || ARCH_SH7372
8267a2071c5SGeert Uytterhoeven		help
8277a2071c5SGeert Uytterhoeven		  Say Y here if you want kernel low-level debugging support
8287a2071c5SGeert Uytterhoeven		  via SCIFA0 on Renesas R-Mobile APE6 (R8A73A4) or SH-Mobile
8297a2071c5SGeert Uytterhoeven		  AP4 (SH7372).
8307a2071c5SGeert Uytterhoeven
8317a2071c5SGeert Uytterhoeven	config DEBUG_RMOBILE_SCIFA1
8327a2071c5SGeert Uytterhoeven		bool "Kernel low-level debugging messages via SCIFA1 on R8A7740"
8337a2071c5SGeert Uytterhoeven		depends on ARCH_R8A7740
8347a2071c5SGeert Uytterhoeven		help
8357a2071c5SGeert Uytterhoeven		  Say Y here if you want kernel low-level debugging support
8367a2071c5SGeert Uytterhoeven		  via SCIFA1 on Renesas R-Mobile A1 (R8A7740).
8377a2071c5SGeert Uytterhoeven
8387a2071c5SGeert Uytterhoeven	config DEBUG_RMOBILE_SCIFA4
8397a2071c5SGeert Uytterhoeven		bool "Kernel low-level debugging messages via SCIFA4 on SH73A0"
8407a2071c5SGeert Uytterhoeven		depends on ARCH_SH73A0
8417a2071c5SGeert Uytterhoeven		help
8427a2071c5SGeert Uytterhoeven		  Say Y here if you want kernel low-level debugging support
8437a2071c5SGeert Uytterhoeven		  via SCIFA4 on Renesas SH-Mobile AG5 (SH73A0).
8447a2071c5SGeert Uytterhoeven
845e76f4750SRussell King	config DEBUG_S3C_UART0
846e76f4750SRussell King		depends on PLAT_SAMSUNG
847a2e40710SArnd Bergmann		select DEBUG_EXYNOS_UART if ARCH_EXYNOS
8481899de28SHeiko Stuebner		select DEBUG_S3C24XX_UART if ARCH_S3C24XX
8497bab7d9eSTomasz Figa		select DEBUG_S5PV210_UART if ARCH_S5PV210
8505cc8a016SSachin Kamat		bool "Use Samsung S3C UART 0 for low-level debug"
851e76f4750SRussell King		help
852e76f4750SRussell King		  Say Y here if you want the debug print routines to direct
853e76f4750SRussell King		  their output to UART 0. The port must have been initialised
854e76f4750SRussell King		  by the boot-loader before use.
855e76f4750SRussell King
856e76f4750SRussell King	config DEBUG_S3C_UART1
857e76f4750SRussell King		depends on PLAT_SAMSUNG
858a2e40710SArnd Bergmann		select DEBUG_EXYNOS_UART if ARCH_EXYNOS
8591899de28SHeiko Stuebner		select DEBUG_S3C24XX_UART if ARCH_S3C24XX
8607bab7d9eSTomasz Figa		select DEBUG_S5PV210_UART if ARCH_S5PV210
8615cc8a016SSachin Kamat		bool "Use Samsung S3C UART 1 for low-level debug"
862e76f4750SRussell King		help
863e76f4750SRussell King		  Say Y here if you want the debug print routines to direct
864e76f4750SRussell King		  their output to UART 1. The port must have been initialised
865e76f4750SRussell King		  by the boot-loader before use.
866e76f4750SRussell King
867e76f4750SRussell King	config DEBUG_S3C_UART2
868e76f4750SRussell King		depends on PLAT_SAMSUNG
869a2e40710SArnd Bergmann		select DEBUG_EXYNOS_UART if ARCH_EXYNOS
8701899de28SHeiko Stuebner		select DEBUG_S3C24XX_UART if ARCH_S3C24XX
8717bab7d9eSTomasz Figa		select DEBUG_S5PV210_UART if ARCH_S5PV210
8725cc8a016SSachin Kamat		bool "Use Samsung S3C UART 2 for low-level debug"
873e76f4750SRussell King		help
874e76f4750SRussell King		  Say Y here if you want the debug print routines to direct
875e76f4750SRussell King		  their output to UART 2. The port must have been initialised
876e76f4750SRussell King		  by the boot-loader before use.
877e76f4750SRussell King
8785fa23ddeSOlof Johansson	config DEBUG_S3C_UART3
8797bab7d9eSTomasz Figa		depends on PLAT_SAMSUNG && (ARCH_EXYNOS || ARCH_S5PV210)
8807bab7d9eSTomasz Figa		select DEBUG_EXYNOS_UART if ARCH_EXYNOS
8817bab7d9eSTomasz Figa		select DEBUG_S5PV210_UART if ARCH_S5PV210
8825cc8a016SSachin Kamat		bool "Use Samsung S3C UART 3 for low-level debug"
8835fa23ddeSOlof Johansson		help
8845fa23ddeSOlof Johansson		  Say Y here if you want the debug print routines to direct
8855fa23ddeSOlof Johansson		  their output to UART 3. The port must have been initialised
8865fa23ddeSOlof Johansson		  by the boot-loader before use.
8875fa23ddeSOlof Johansson
888daf67dfcSHeiko Stuebner	config DEBUG_S3C2410_UART0
889daf67dfcSHeiko Stuebner		depends on ARCH_S3C24XX
890daf67dfcSHeiko Stuebner		select DEBUG_S3C2410_UART
891daf67dfcSHeiko Stuebner		bool "Use S3C2410/S3C2412 UART 0 for low-level debug"
892daf67dfcSHeiko Stuebner		help
893daf67dfcSHeiko Stuebner		  Say Y here if you want the debug print routines to direct
894daf67dfcSHeiko Stuebner		  their output to UART 0. The port must have been initialised
895daf67dfcSHeiko Stuebner		  by the boot-loader before use.
896daf67dfcSHeiko Stuebner
897daf67dfcSHeiko Stuebner	config DEBUG_S3C2410_UART1
898daf67dfcSHeiko Stuebner		depends on ARCH_S3C24XX
899daf67dfcSHeiko Stuebner		select DEBUG_S3C2410_UART
900daf67dfcSHeiko Stuebner		bool "Use S3C2410/S3C2412 UART 1 for low-level debug"
901daf67dfcSHeiko Stuebner		help
902daf67dfcSHeiko Stuebner		  Say Y here if you want the debug print routines to direct
903daf67dfcSHeiko Stuebner		  their output to UART 1. The port must have been initialised
904daf67dfcSHeiko Stuebner		  by the boot-loader before use.
905daf67dfcSHeiko Stuebner
906daf67dfcSHeiko Stuebner	config DEBUG_S3C2410_UART2
907daf67dfcSHeiko Stuebner		depends on ARCH_S3C24XX
908daf67dfcSHeiko Stuebner		select DEBUG_S3C2410_UART
909daf67dfcSHeiko Stuebner		bool "Use S3C2410/S3C2412 UART 2 for low-level debug"
910daf67dfcSHeiko Stuebner		help
911daf67dfcSHeiko Stuebner		  Say Y here if you want the debug print routines to direct
912daf67dfcSHeiko Stuebner		  their output to UART 2. The port must have been initialised
913daf67dfcSHeiko Stuebner		  by the boot-loader before use.
914daf67dfcSHeiko Stuebner
915e6131fa3SDmitry Eremin-Solenikov	config DEBUG_SA1100
916e6131fa3SDmitry Eremin-Solenikov		depends on ARCH_SA1100
917e6131fa3SDmitry Eremin-Solenikov		bool "Use SA1100 UARTs for low-level debug"
918e6131fa3SDmitry Eremin-Solenikov		help
919e6131fa3SDmitry Eremin-Solenikov		  Say Y here if you want kernel low-level debugging support
920e6131fa3SDmitry Eremin-Solenikov		  on SA-11x0 UART ports. The kernel will check for the first
921e6131fa3SDmitry Eremin-Solenikov		  enabled UART in a sequence 3-1-2.
922e6131fa3SDmitry Eremin-Solenikov
9236111bf7cSRob Herring	config DEBUG_SOCFPGA_UART
9246111bf7cSRob Herring		depends on ARCH_SOCFPGA
9256111bf7cSRob Herring		bool "Use SOCFPGA UART for low-level debug"
9260b4cccbeSRussell King		select DEBUG_UART_8250
9276111bf7cSRob Herring		help
9286111bf7cSRob Herring		  Say Y here if you want kernel low-level debugging support
9296111bf7cSRob Herring		  on SOCFPGA based platforms.
9306111bf7cSRob Herring
931d4da889aSChen-Yu Tsai	config DEBUG_SUN9I_UART0
932d4da889aSChen-Yu Tsai		bool "Kernel low-level debugging messages via sun9i UART0"
933d4da889aSChen-Yu Tsai		depends on MACH_SUN9I
934d4da889aSChen-Yu Tsai		select DEBUG_UART_8250
935d4da889aSChen-Yu Tsai		help
936d4da889aSChen-Yu Tsai		  Say Y here if you want kernel low-level debugging support
937d4da889aSChen-Yu Tsai		  on Allwinner A80 based platforms on the UART0.
938d4da889aSChen-Yu Tsai
939aa25115aSStefan Roese	config DEBUG_SUNXI_UART0
940aa25115aSStefan Roese		bool "Kernel low-level debugging messages via sunXi UART0"
941aa25115aSStefan Roese		depends on ARCH_SUNXI
9424a003647SRussell King		select DEBUG_UART_8250
943aa25115aSStefan Roese		help
944aa25115aSStefan Roese		  Say Y here if you want kernel low-level debugging support
945aa25115aSStefan Roese		  on Allwinner A1X based platforms on the UART0.
946aa25115aSStefan Roese
947cb84fa18SMaxime Ripard	config DEBUG_SUNXI_UART1
948cb84fa18SMaxime Ripard		bool "Kernel low-level debugging messages via sunXi UART1"
949cb84fa18SMaxime Ripard		depends on ARCH_SUNXI
9504a003647SRussell King		select DEBUG_UART_8250
951cb84fa18SMaxime Ripard		help
952cb84fa18SMaxime Ripard		  Say Y here if you want kernel low-level debugging support
953cb84fa18SMaxime Ripard		  on Allwinner A1X based platforms on the UART1.
954cb84fa18SMaxime Ripard
955c4718543SChen-Yu Tsai	config DEBUG_SUNXI_R_UART
956c4718543SChen-Yu Tsai		bool "Kernel low-level debugging messages via sunXi R_UART"
957c4718543SChen-Yu Tsai		depends on MACH_SUN6I || MACH_SUN8I
958c4718543SChen-Yu Tsai		select DEBUG_UART_8250
959c4718543SChen-Yu Tsai		help
960c4718543SChen-Yu Tsai		  Say Y here if you want kernel low-level debugging support
961c4718543SChen-Yu Tsai		  on Allwinner A31/A23 based platforms on the R_UART.
962c4718543SChen-Yu Tsai
963cce278d2SRussell King	config TEGRA_DEBUG_UART_AUTO_ODMDATA
964cce278d2SRussell King		bool "Kernel low-level debugging messages via Tegra UART via ODMDATA"
96546067803SStephen Warren		depends on ARCH_TEGRA
966cce278d2SRussell King		select DEBUG_TEGRA_UART
967cce278d2SRussell King		help
968cce278d2SRussell King		  Automatically determines which UART to use for low-level
969cce278d2SRussell King		  debug based on the ODMDATA value. This value is part of
970cce278d2SRussell King		  the BCT, and is written to the boot memory device using
971cce278d2SRussell King		  nvflash, or other flashing tool.  When bits 19:18 are 3,
972cce278d2SRussell King		  then bits 17:15 indicate which UART to use; 0/1/2/3/4
973cce278d2SRussell King		  are UART A/B/C/D/E.
974cce278d2SRussell King
975cce278d2SRussell King	config TEGRA_DEBUG_UARTA
976cce278d2SRussell King		bool "Kernel low-level debugging messages via Tegra UART A"
977cce278d2SRussell King		depends on ARCH_TEGRA
978cce278d2SRussell King		select DEBUG_TEGRA_UART
979cce278d2SRussell King		help
980cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
981cce278d2SRussell King		  on Tegra based platforms.
982cce278d2SRussell King
983cce278d2SRussell King	config TEGRA_DEBUG_UARTB
984cce278d2SRussell King		bool "Kernel low-level debugging messages via Tegra UART B"
985cce278d2SRussell King		depends on ARCH_TEGRA
986cce278d2SRussell King		select DEBUG_TEGRA_UART
987cce278d2SRussell King		help
988cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
989cce278d2SRussell King		  on Tegra based platforms.
990cce278d2SRussell King
991cce278d2SRussell King	config TEGRA_DEBUG_UARTC
992cce278d2SRussell King		bool "Kernel low-level debugging messages via Tegra UART C"
993cce278d2SRussell King		depends on ARCH_TEGRA
994cce278d2SRussell King		select DEBUG_TEGRA_UART
995cce278d2SRussell King		help
996cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
997cce278d2SRussell King		  on Tegra based platforms.
998cce278d2SRussell King
999cce278d2SRussell King	config TEGRA_DEBUG_UARTD
1000cce278d2SRussell King		bool "Kernel low-level debugging messages via Tegra UART D"
1001cce278d2SRussell King		depends on ARCH_TEGRA
1002cce278d2SRussell King		select DEBUG_TEGRA_UART
1003cce278d2SRussell King		help
1004cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
1005cce278d2SRussell King		  on Tegra based platforms.
1006cce278d2SRussell King
1007cce278d2SRussell King	config TEGRA_DEBUG_UARTE
1008cce278d2SRussell King		bool "Kernel low-level debugging messages via Tegra UART E"
1009cce278d2SRussell King		depends on ARCH_TEGRA
1010cce278d2SRussell King		select DEBUG_TEGRA_UART
101146067803SStephen Warren		help
101246067803SStephen Warren		  Say Y here if you want kernel low-level debugging support
101346067803SStephen Warren		  on Tegra based platforms.
101446067803SStephen Warren
10157f46a107SBarry Song	config DEBUG_SIRFPRIMA2_UART1
10167f46a107SBarry Song		bool "Kernel low-level debugging messages via SiRFprimaII UART1"
10177f46a107SBarry Song		depends on ARCH_PRIMA2
101801ea63d9SGuo Zeng		select DEBUG_SIRFSOC_UART
10197f46a107SBarry Song		help
10207f46a107SBarry Song		  Say Y here if you want the debug print routines to direct
10217f46a107SBarry Song		  their output to the uart1 port on SiRFprimaII devices.
10227f46a107SBarry Song
102301ea63d9SGuo Zeng	config DEBUG_SIRFATLAS7_UART0
102401ea63d9SGuo Zeng		bool "Kernel low-level debugging messages via SiRFatlas7 UART0"
102501ea63d9SGuo Zeng		depends on ARCH_ATLAS7
102601ea63d9SGuo Zeng		select DEBUG_SIRFSOC_UART
10277f46a107SBarry Song		help
10287f46a107SBarry Song		  Say Y here if you want the debug print routines to direct
102901ea63d9SGuo Zeng		  their output to the uart0 port on SiRFATLAS7 devices.The uart0
103001ea63d9SGuo Zeng		  is used on SiRFATLAS7 as a extra debug port.sometimes an extra
103101ea63d9SGuo Zeng		  debug port can be very useful.
103201ea63d9SGuo Zeng
103301ea63d9SGuo Zeng	config DEBUG_SIRFATLAS7_UART1
103401ea63d9SGuo Zeng		bool "Kernel low-level debugging messages via SiRFatlas7 UART1"
103501ea63d9SGuo Zeng		depends on ARCH_ATLAS7
103601ea63d9SGuo Zeng		select DEBUG_SIRFSOC_UART
103701ea63d9SGuo Zeng		help
103801ea63d9SGuo Zeng		  Say Y here if you want the debug print routines to direct
103901ea63d9SGuo Zeng		  their output to the uart1 port on SiRFATLAS7 devices.
10407f46a107SBarry Song
1041cce278d2SRussell King	config STIH41X_DEBUG_ASC2
1042cce278d2SRussell King		bool "Use StiH415/416 ASC2 UART for low-level debug"
10435562b800SArnd Bergmann		depends on ARCH_STI
1044cce278d2SRussell King		select DEBUG_STI_UART
10455562b800SArnd Bergmann		help
10465562b800SArnd Bergmann		  Say Y here if you want kernel low-level debugging support
1047cce278d2SRussell King		  on STiH415/416 based platforms like b2000, which has
1048cce278d2SRussell King		  default UART wired up to ASC2.
1049cce278d2SRussell King
1050cce278d2SRussell King		  If unsure, say N.
1051cce278d2SRussell King
1052cce278d2SRussell King	config STIH41X_DEBUG_SBC_ASC1
1053cce278d2SRussell King		bool "Use StiH415/416 SBC ASC1 UART for low-level debug"
1054cce278d2SRussell King		depends on ARCH_STI
1055cce278d2SRussell King		select DEBUG_STI_UART
1056cce278d2SRussell King		help
1057cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
1058cce278d2SRussell King		  on STiH415/416 based platforms like b2020. which has
1059cce278d2SRussell King		  default UART wired up to SBC ASC1.
10605562b800SArnd Bergmann
10615562b800SArnd Bergmann		  If unsure, say N.
10625562b800SArnd Bergmann
1063dd324da7SLinus Walleij	config DEBUG_U300_UART
1064dd324da7SLinus Walleij		bool "Kernel low-level debugging messages via U300 UART0"
1065dd324da7SLinus Walleij		depends on ARCH_U300
10665c972af4SRussell King		select DEBUG_UART_PL01X
1067dd324da7SLinus Walleij		help
1068dd324da7SLinus Walleij		  Say Y here if you want the debug print routines to direct
1069dd324da7SLinus Walleij		  their output to the uart port on U300 devices.
1070dd324da7SLinus Walleij
1071f87b95ddSLinus Walleij	config DEBUG_UX500_UART
1072f87b95ddSLinus Walleij		depends on ARCH_U8500
1073f87b95ddSLinus Walleij		bool "Use Ux500 UART for low-level debug"
1074f87b95ddSLinus Walleij		help
1075f87b95ddSLinus Walleij		  Say Y here if you want kernel low-level debugging support
1076f87b95ddSLinus Walleij		  on Ux500 based platforms.
1077f87b95ddSLinus Walleij
1078d6682085SMatthias Brugger	config DEBUG_MT6589_UART0
1079d6682085SMatthias Brugger		bool "Mediatek mt6589 UART0"
1080d6682085SMatthias Brugger		depends on ARCH_MEDIATEK
1081d6682085SMatthias Brugger		select DEBUG_UART_8250
1082d6682085SMatthias Brugger		help
1083d6682085SMatthias Brugger		  Say Y here if you want kernel low-level debugging support
1084d6682085SMatthias Brugger		  for Mediatek mt6589 based platforms on UART0.
1085d6682085SMatthias Brugger
108665ec48c0SJoe.C	config DEBUG_MT8127_UART0
108760851d7aSMatthias Brugger		bool "Mediatek mt8127/mt6592 UART0"
108865ec48c0SJoe.C		depends on ARCH_MEDIATEK
108965ec48c0SJoe.C		select DEBUG_UART_8250
109065ec48c0SJoe.C		help
109165ec48c0SJoe.C		  Say Y here if you want kernel low-level debugging support
109265ec48c0SJoe.C		  for Mediatek mt8127 based platforms on UART0.
109365ec48c0SJoe.C
109465ec48c0SJoe.C	config DEBUG_MT8135_UART3
109565ec48c0SJoe.C		bool "Mediatek mt8135 UART3"
109665ec48c0SJoe.C		depends on ARCH_MEDIATEK
109765ec48c0SJoe.C		select DEBUG_UART_8250
109865ec48c0SJoe.C		help
109965ec48c0SJoe.C		  Say Y here if you want kernel low-level debugging support
110065ec48c0SJoe.C		  for Mediatek mt8135 based platforms on UART3.
110165ec48c0SJoe.C
11021b820eafSPawel Moll	config DEBUG_VEXPRESS_UART0_DETECT
11031b820eafSPawel Moll		bool "Autodetect UART0 on Versatile Express Cortex-A core tiles"
11041b820eafSPawel Moll		depends on ARCH_VEXPRESS && CPU_CP15_MMU
11051b820eafSPawel Moll		help
11061b820eafSPawel Moll		  This option enables a simple heuristic which tries to determine
11071b820eafSPawel Moll		  the motherboard's memory map variant (original or RS1) and then
11081b820eafSPawel Moll		  choose the relevant UART0 base address.
11091b820eafSPawel Moll
11101b820eafSPawel Moll		  Note that this will only work with standard A-class core tiles,
11111b820eafSPawel Moll		  and may fail with non-standard SMM or custom software models.
11121b820eafSPawel Moll
11131b820eafSPawel Moll	config DEBUG_VEXPRESS_UART0_CA9
11141b820eafSPawel Moll		bool "Use PL011 UART0 at 0x10009000 (V2P-CA9 core tile)"
11151b820eafSPawel Moll		depends on ARCH_VEXPRESS
11165c972af4SRussell King		select DEBUG_UART_PL01X
11171b820eafSPawel Moll		help
11181b820eafSPawel Moll		  This option selects UART0 at 0x10009000. Except for custom models,
11191b820eafSPawel Moll		  this applies only to the V2P-CA9 tile.
11201b820eafSPawel Moll
11211b820eafSPawel Moll	config DEBUG_VEXPRESS_UART0_RS1
11221b820eafSPawel Moll		bool "Use PL011 UART0 at 0x1c090000 (RS1 complaint tiles)"
11231b820eafSPawel Moll		depends on ARCH_VEXPRESS
11245c972af4SRussell King		select DEBUG_UART_PL01X
11251b820eafSPawel Moll		help
11261b820eafSPawel Moll		  This option selects UART0 at 0x1c090000. This applies to most
11271b820eafSPawel Moll		  of the tiles using the RS1 memory map, including all new A-class
11281b820eafSPawel Moll		  core tiles, FPGA-based SMMs and software models.
11291b820eafSPawel Moll
1130ed18bdc8SJonathan Austin	config DEBUG_VEXPRESS_UART0_CRX
1131ed18bdc8SJonathan Austin		bool "Use PL011 UART0 at 0xb0090000 (Cortex-R compliant tiles)"
1132ed18bdc8SJonathan Austin		depends on ARCH_VEXPRESS && !MMU
11335c972af4SRussell King		select DEBUG_UART_PL01X
1134ed18bdc8SJonathan Austin		help
1135ed18bdc8SJonathan Austin		  This option selects UART0 at 0xb0090000. This is appropriate for
1136ed18bdc8SJonathan Austin		  Cortex-R series tiles and SMMs, such as Cortex-R5 and Cortex-R7
1137ed18bdc8SJonathan Austin
1138b61a2722STony Prisk	config DEBUG_VT8500_UART0
1139b61a2722STony Prisk		bool "Use UART0 on VIA/Wondermedia SoCs"
1140b61a2722STony Prisk		depends on ARCH_VT8500
1141b61a2722STony Prisk		help
1142b61a2722STony Prisk		  This option selects UART0 on VIA/Wondermedia System-on-a-chip
1143b61a2722STony Prisk		  devices, including VT8500, WM8505, WM8650 and WM8850.
1144b61a2722STony Prisk
1145e76f4750SRussell King	config DEBUG_ICEDCC
1146e76f4750SRussell King		bool "Kernel low-level debugging via EmbeddedICE DCC channel"
1147e76f4750SRussell King		help
1148e76f4750SRussell King		  Say Y here if you want the debug print routines to direct
1149e76f4750SRussell King		  their output to the EmbeddedICE macrocell's DCC channel using
1150e76f4750SRussell King		  co-processor 14. This is known to work on the ARM9 style ICE
1151e76f4750SRussell King		  channel and on the XScale with the PEEDI.
1152e76f4750SRussell King
1153e76f4750SRussell King		  Note that the system will appear to hang during boot if there
1154e76f4750SRussell King		  is nothing connected to read from the DCC.
1155e76f4750SRussell King
1156b0df8986SRussell King	config DEBUG_SEMIHOSTING
115762194bdaSStephen Boyd		bool "Kernel low-level debug output via semihosting I/O"
1158b0df8986SRussell King		help
1159b0df8986SRussell King		  Semihosting enables code running on an ARM target to use
1160b0df8986SRussell King		  the I/O facilities on a host debugger/emulator through a
116162194bdaSStephen Boyd		  simple SVC call. The host debugger or emulator must have
1162b0df8986SRussell King		  semihosting enabled for the special svc call to be trapped
1163b0df8986SRussell King		  otherwise the kernel will crash.
1164b0df8986SRussell King
1165b0df8986SRussell King		  This is known to work with OpenOCD, as well as
1166b0df8986SRussell King		  ARM's Fast Models, or any other controlling environment
1167b0df8986SRussell King		  that implements semihosting.
1168b0df8986SRussell King
1169b0df8986SRussell King		  For more details about semihosting, please see
1170b0df8986SRussell King		  chapter 8 of DUI0203I_rvct_developer_guide.pdf from ARM Ltd.
1171b0df8986SRussell King
1172f8f1279cSRussell King	config DEBUG_LL_UART_8250
1173f8f1279cSRussell King		bool "Kernel low-level debugging via 8250 UART"
1174f8f1279cSRussell King		help
1175f8f1279cSRussell King		  Say Y here if you wish the debug print routes to direct
1176f8f1279cSRussell King		  their output to an 8250 UART.  You can use this option
1177f8f1279cSRussell King		  to provide the parameters for the 8250 UART rather than
1178f8f1279cSRussell King		  selecting one of the platform specific options above if
1179f8f1279cSRussell King		  you know the parameters for the port.
1180f8f1279cSRussell King
1181f8f1279cSRussell King		  This option is preferred over the platform specific
1182f8f1279cSRussell King		  options; the platform specific options are deprecated
1183f8f1279cSRussell King		  and will be soon removed.
1184f8f1279cSRussell King
1185494e492dSUwe Kleine-König	config DEBUG_LL_UART_EFM32
1186494e492dSUwe Kleine-König		bool "Kernel low-level debugging via efm32 UART"
1187494e492dSUwe Kleine-König		depends on ARCH_EFM32
1188494e492dSUwe Kleine-König		help
1189494e492dSUwe Kleine-König		  Say Y here if you want the debug print routines to direct
1190494e492dSUwe Kleine-König		  their output to an UART or USART port on efm32 based
1191494e492dSUwe Kleine-König		  machines. Use the following addresses for DEBUG_UART_PHYS:
1192494e492dSUwe Kleine-König
1193494e492dSUwe Kleine-König		    0x4000c000 | USART0
1194494e492dSUwe Kleine-König		    0x4000c400 | USART1
1195494e492dSUwe Kleine-König		    0x4000c800 | USART2
1196494e492dSUwe Kleine-König		    0x4000e000 | UART0
1197494e492dSUwe Kleine-König		    0x4000e400 | UART1
1198494e492dSUwe Kleine-König
1199f8f1279cSRussell King	config DEBUG_LL_UART_PL01X
1200f8f1279cSRussell King		bool "Kernel low-level debugging via ARM Ltd PL01x Primecell UART"
1201f8f1279cSRussell King		help
1202f8f1279cSRussell King		  Say Y here if you wish the debug print routes to direct
1203f8f1279cSRussell King		  their output to a PL01x Primecell UART.  You can use
1204f8f1279cSRussell King		  this option to provide the parameters for the UART
1205f8f1279cSRussell King		  rather than selecting one of the platform specific
1206f8f1279cSRussell King		  options above if you know the parameters for the port.
1207f8f1279cSRussell King
1208f8f1279cSRussell King		  This option is preferred over the platform specific
1209f8f1279cSRussell King		  options; the platform specific options are deprecated
1210f8f1279cSRussell King		  and will be soon removed.
1211f8f1279cSRussell King
12121da177e4SLinus Torvaldsendchoice
12131da177e4SLinus Torvalds
121442dfd1e1SNicolas Ferreconfig DEBUG_AT91_UART
121542dfd1e1SNicolas Ferre	bool
121642dfd1e1SNicolas Ferre	depends on ARCH_AT91
121742dfd1e1SNicolas Ferre
1218a2e40710SArnd Bergmannconfig DEBUG_EXYNOS_UART
1219a2e40710SArnd Bergmann	bool
1220a2e40710SArnd Bergmann
1221daf67dfcSHeiko Stuebnerconfig DEBUG_S3C2410_UART
1222daf67dfcSHeiko Stuebner	bool
12231899de28SHeiko Stuebner	select DEBUG_S3C24XX_UART
12241899de28SHeiko Stuebner
12251899de28SHeiko Stuebnerconfig DEBUG_S3C24XX_UART
12261899de28SHeiko Stuebner	bool
1227daf67dfcSHeiko Stuebner
12287bab7d9eSTomasz Figaconfig DEBUG_S5PV210_UART
12297bab7d9eSTomasz Figa	bool
12307bab7d9eSTomasz Figa
1231cce278d2SRussell Kingconfig DEBUG_OMAP2PLUS_UART
1232cce278d2SRussell King	bool
1233cce278d2SRussell King	depends on ARCH_OMAP2PLUS
1234cce278d2SRussell King
1235f8c95fe6SShawn Guoconfig DEBUG_IMX_UART_PORT
1236f8c95fe6SShawn Guo	int "i.MX Debug UART Port Selection" if DEBUG_IMX1_UART || \
1237f8c95fe6SShawn Guo						DEBUG_IMX25_UART || \
1238f8c95fe6SShawn Guo						DEBUG_IMX21_IMX27_UART || \
1239f8c95fe6SShawn Guo						DEBUG_IMX31_UART || \
1240f8c95fe6SShawn Guo						DEBUG_IMX35_UART || \
1241ad364a70SGreg Ungerer						DEBUG_IMX50_UART || \
1242f8c95fe6SShawn Guo						DEBUG_IMX51_UART || \
12430c52db7eSPaul Bolle						DEBUG_IMX53_UART || \
124434e8a16bSShawn Guo						DEBUG_IMX6Q_UART || \
124574368e81SShawn Guo						DEBUG_IMX6SL_UART || \
124674368e81SShawn Guo						DEBUG_IMX6SX_UART
124749c9e60eSShawn Guo	default 1
1248287939a3SShawn Guo	depends on ARCH_MXC
124949c9e60eSShawn Guo	help
125049c9e60eSShawn Guo	  Choose UART port on which kernel low-level debug messages
125149c9e60eSShawn Guo	  should be output.
125249c9e60eSShawn Guo
1253cfdb7d56SStefan Agnerconfig DEBUG_VF_UART_PORT
1254cfdb7d56SStefan Agner	int "Vybrid Debug UART Port Selection" if DEBUG_VF_UART
1255cfdb7d56SStefan Agner	default 1
1256cfdb7d56SStefan Agner	range 0 3
1257cfdb7d56SStefan Agner	depends on SOC_VF610
1258cfdb7d56SStefan Agner	help
1259cfdb7d56SStefan Agner	  Choose UART port on which kernel low-level debug messages
1260cfdb7d56SStefan Agner	  should be output.
1261cfdb7d56SStefan Agner
1262cce278d2SRussell Kingconfig DEBUG_TEGRA_UART
1263cce278d2SRussell King	bool
1264cce278d2SRussell King	depends on ARCH_TEGRA
1265808b7e07STony Lindgren
1266cce278d2SRussell Kingconfig DEBUG_STI_UART
1267cce278d2SRussell King	bool
1268cce278d2SRussell King	depends on ARCH_STI
12695026aecfSSrinivas Kandagatla
127001ea63d9SGuo Zengconfig DEBUG_SIRFSOC_UART
127101ea63d9SGuo Zeng	bool
127201ea63d9SGuo Zeng	depends on ARCH_SIRF
127301ea63d9SGuo Zeng
127491a9fec0SRob Herringconfig DEBUG_LL_INCLUDE
127591a9fec0SRob Herring	string
1276e6131fa3SDmitry Eremin-Solenikov	default "debug/sa1100.S" if DEBUG_SA1100
1277f8f1279cSRussell King	default "debug/8250.S" if DEBUG_LL_UART_8250 || DEBUG_UART_8250
127842dfd1e1SNicolas Ferre	default "debug/at91.S" if DEBUG_AT91_UART
1279d5bd4e8dSOleksij Rempel	default "debug/asm9260.S" if DEBUG_ASM9260_UART
1280dd99eef5SAlexander Shiyan	default "debug/clps711x.S" if DEBUG_CLPS711X_UART1 || DEBUG_CLPS711X_UART2
1281d8a00916SCarlo Caione	default "debug/meson.S" if DEBUG_MESON_UARTAO
1282f8f1279cSRussell King	default "debug/pl01x.S" if DEBUG_LL_UART_PL01X || DEBUG_UART_PL01X
1283a2e40710SArnd Bergmann	default "debug/exynos.S" if DEBUG_EXYNOS_UART
1284494e492dSUwe Kleine-König	default "debug/efm32.S" if DEBUG_LL_UART_EFM32
128591a9fec0SRob Herring	default "debug/icedcc.S" if DEBUG_ICEDCC
12866dde5ac5SShawn Guo	default "debug/imx.S" if DEBUG_IMX1_UART || \
12876dde5ac5SShawn Guo				 DEBUG_IMX25_UART || \
12886dde5ac5SShawn Guo				 DEBUG_IMX21_IMX27_UART || \
12894ad625d4SShawn Guo				 DEBUG_IMX31_UART || \
12904ad625d4SShawn Guo				 DEBUG_IMX35_UART || \
1291ad364a70SGreg Ungerer				 DEBUG_IMX50_UART || \
12926dde5ac5SShawn Guo				 DEBUG_IMX51_UART || \
12937356420cSFabio Estevam				 DEBUG_IMX53_UART ||\
129434e8a16bSShawn Guo				 DEBUG_IMX6Q_UART || \
129574368e81SShawn Guo				 DEBUG_IMX6SL_UART || \
129674368e81SShawn Guo				 DEBUG_IMX6SX_UART
1297abbfb21eSDaniel Thompson	default "debug/ks8695.S" if DEBUG_KS8695_UART
12987098cff2SIvan T. Ivanov	default "debug/msm.S" if DEBUG_MSM_UART || DEBUG_QCOM_UARTDM
12994d31e664SDaniel Thompson	default "debug/netx.S" if DEBUG_NETX_UART
1300808b7e07STony Lindgren	default "debug/omap2plus.S" if DEBUG_OMAP2PLUS_UART
13017a2071c5SGeert Uytterhoeven	default "debug/renesas-scif.S" if DEBUG_R7S72100_SCIF2
13027a2071c5SGeert Uytterhoeven	default "debug/renesas-scif.S" if DEBUG_RCAR_GEN1_SCIF0
13037a2071c5SGeert Uytterhoeven	default "debug/renesas-scif.S" if DEBUG_RCAR_GEN1_SCIF2
13047a2071c5SGeert Uytterhoeven	default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF0
13057a2071c5SGeert Uytterhoeven	default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF2
13067a2071c5SGeert Uytterhoeven	default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA0
13077a2071c5SGeert Uytterhoeven	default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA1
13087a2071c5SGeert Uytterhoeven	default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA4
13092cd62bd4SHeiko Stuebner	default "debug/s3c24xx.S" if DEBUG_S3C24XX_UART
13107bab7d9eSTomasz Figa	default "debug/s5pv210.S" if DEBUG_S5PV210_UART
131101ea63d9SGuo Zeng	default "debug/sirf.S" if DEBUG_SIRFSOC_UART
13125026aecfSSrinivas Kandagatla	default "debug/sti.S" if DEBUG_STI_UART
1313150a8dcfSLinus Torvalds	default "debug/tegra.S" if DEBUG_TEGRA_UART
1314150a8dcfSLinus Torvalds	default "debug/ux500.S" if DEBUG_UX500_UART
13154e218b99SRussell King	default "debug/vexpress.S" if DEBUG_VEXPRESS_UART0_DETECT
1316c7c3eac6SShawn Guo	default "debug/vf.S" if DEBUG_VF_UART
1317b61a2722STony Prisk	default "debug/vt8500.S" if DEBUG_VT8500_UART0
1318385f02b1SJosh Cartwright	default "debug/zynq.S" if DEBUG_ZYNQ_UART0 || DEBUG_ZYNQ_UART1
1319b51312beSFlorian Fainelli	default "debug/bcm63xx.S" if DEBUG_UART_BCM63XX
1320e23814daSBaruch Siach	default "debug/digicolor.S" if DEBUG_DIGICOLOR_UA0
132191a9fec0SRob Herring	default "mach/debug-macro.S"
132291a9fec0SRob Herring
1323f8f1279cSRussell King# Compatibility options for PL01x
13245c972af4SRussell Kingconfig DEBUG_UART_PL01X
1325a61cbf51SDaniel Thompson	bool
13265c972af4SRussell King
1327f8f1279cSRussell King# Compatibility options for 8250
13287610b607SRussell Kingconfig DEBUG_UART_8250
13294a003647SRussell King	def_bool ARCH_DOVE || ARCH_EBSA110 || \
13304a003647SRussell King		(FOOTBRIDGE && !DEBUG_DC21285_PORT) || \
13314a003647SRussell King		ARCH_GEMINI || ARCH_IOP13XX || ARCH_IOP32X || \
1332ba364fc7SAndrew Lunn		ARCH_IOP33X || ARCH_IXP4XX || \
13334a003647SRussell King		ARCH_LPC32XX || ARCH_MV78XX0 || ARCH_ORION5X || ARCH_RPC
13344a003647SRussell King
1335b51312beSFlorian Fainelli# Compatibility options for BCM63xx
1336b51312beSFlorian Fainelliconfig DEBUG_UART_BCM63XX
1337b51312beSFlorian Fainelli	def_bool ARCH_BCM_63XX
1338b51312beSFlorian Fainelli
1339c3faa9b7SRussell Kingconfig DEBUG_UART_PHYS
1340c3faa9b7SRussell King	hex "Physical base address of debug UART"
13414d31e664SDaniel Thompson	default 0x00100a00 if DEBUG_NETX_UART
134297bd1a48SRussell King	default 0x01c20000 if DEBUG_DAVINCI_DMx_UART0
1343c3faa9b7SRussell King	default 0x01c28000 if DEBUG_SUNXI_UART0
1344c3faa9b7SRussell King	default 0x01c28400 if DEBUG_SUNXI_UART1
134597bd1a48SRussell King	default 0x01d0c000 if DEBUG_DAVINCI_DA8XX_UART1
134697bd1a48SRussell King	default 0x01d0d000 if DEBUG_DAVINCI_DA8XX_UART2
1347c4718543SChen-Yu Tsai	default 0x01f02800 if DEBUG_SUNXI_R_UART
1348f2acf003SRussell King	default 0x02530c00 if DEBUG_KEYSTONE_UART0
1349f2acf003SRussell King	default 0x02531000 if DEBUG_KEYSTONE_UART1
1350c3faa9b7SRussell King	default 0x03010fe0 if ARCH_RPC
1351d4da889aSChen-Yu Tsai	default 0x07000000 if DEBUG_SUN9I_UART0
1352b125170aSKrzysztof Hałasa	default 0x10009000 if DEBUG_REALVIEW_STD_PORT || \
13535c972af4SRussell King				DEBUG_VEXPRESS_UART0_CA9
13545c972af4SRussell King	default 0x1010c000 if DEBUG_REALVIEW_PB1176_PORT
1355c3faa9b7SRussell King	default 0x10124000 if DEBUG_RK3X_UART0
1356c3faa9b7SRussell King	default 0x10126000 if DEBUG_RK3X_UART1
13575c972af4SRussell King	default 0x101f1000 if ARCH_VERSATILE
13585c972af4SRussell King	default 0x101fb000 if DEBUG_NOMADIK_UART
135965ec48c0SJoe.C	default 0x11002000 if DEBUG_MT8127_UART0
1360d6682085SMatthias Brugger	default 0x11006000 if DEBUG_MT6589_UART0
136165ec48c0SJoe.C	default 0x11009000 if DEBUG_MT8135_UART3
13625c972af4SRussell King	default 0x16000000 if ARCH_INTEGRATOR
136306580275SHauke Mehrtens	default 0x18000300 if DEBUG_BCM_5301X
136401ea63d9SGuo Zeng	default 0x18010000 if DEBUG_SIRFATLAS7_UART0
136501ea63d9SGuo Zeng	default 0x18020000 if DEBUG_SIRFATLAS7_UART1
13665c972af4SRussell King	default 0x1c090000 if DEBUG_VEXPRESS_UART0_RS1
136727dafaa8SWang Long	default 0x20001000 if DEBUG_HIP01_UART
1368c3faa9b7SRussell King	default 0x20060000 if DEBUG_RK29_UART0
1369c3faa9b7SRussell King	default 0x20064000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
1370c3faa9b7SRussell King	default 0x20068000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
13715c972af4SRussell King	default 0x20201000 if DEBUG_BCM2835
1372753d1243SChristian Daudt	default 0x3e000000 if DEBUG_BCM_KONA_UART
1373494e492dSUwe Kleine-König	default 0x4000e400 if DEBUG_LL_UART_EFM32
1374c3faa9b7SRussell King	default 0x40090000 if ARCH_LPC32XX
1375c3faa9b7SRussell King	default 0x40100000 if DEBUG_PXA_UART1
1376c3faa9b7SRussell King	default 0x42000000 if ARCH_GEMINI
13771899de28SHeiko Stuebner	default 0x50000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \
13781899de28SHeiko Stuebner				DEBUG_S3C2410_UART0)
13791899de28SHeiko Stuebner	default 0x50004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \
13801899de28SHeiko Stuebner				DEBUG_S3C2410_UART1)
13811899de28SHeiko Stuebner	default 0x50008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \
13821899de28SHeiko Stuebner				DEBUG_S3C2410_UART2)
1383c3ca2130SKrzysztof Hałasa	default 0x78000000 if DEBUG_CNS3XXX
1384c3faa9b7SRussell King	default 0x7c0003f8 if FOOTBRIDGE
1385d5bd4e8dSOleksij Rempel	default 0x80010000 if DEBUG_ASM9260_UART
13865c972af4SRussell King	default 0x80070000 if DEBUG_IMX23_UART
13875c972af4SRussell King	default 0x80074000 if DEBUG_IMX28_UART
1388c39e1ef7SAlexander Shiyan	default 0x80230000 if DEBUG_PICOXCELL_UART
13895c972af4SRussell King	default 0x808c0000 if ARCH_EP93XX
13905c972af4SRussell King	default 0x90020000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART
13917098cff2SIvan T. Ivanov	default 0xa9a00000 if DEBUG_MSM_UART
139201ea63d9SGuo Zeng	default 0xb0060000 if DEBUG_SIRFPRIMA2_UART1
13935c972af4SRussell King	default 0xb0090000 if DEBUG_VEXPRESS_UART0_CRX
13945c972af4SRussell King	default 0xc0013000 if DEBUG_U300_UART
1395c3faa9b7SRussell King	default 0xc8000000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
1396c3faa9b7SRussell King	default 0xc8000003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
13970dc0e475SRussell King	default 0xd0000000 if ARCH_SPEAR3XX || ARCH_SPEAR6XX
1398d91125ddSMaxime Ripard	default 0xd0012000 if DEBUG_MVEBU_UART0
1399d8a00916SCarlo Caione	default 0xc81004c0 if DEBUG_MESON_UARTAO
1400c3faa9b7SRussell King	default 0xd4017000 if DEBUG_MMP_UART2
1401c3faa9b7SRussell King	default 0xd4018000 if DEBUG_MMP_UART3
14020dc0e475SRussell King	default 0xe0000000 if ARCH_SPEAR13XX
1403c9a1df48SHaojian Zhuang	default 0xe4007000 if DEBUG_HIP04_UART
14047a2071c5SGeert Uytterhoeven	default 0xe6c40000 if DEBUG_RMOBILE_SCIFA0
14057a2071c5SGeert Uytterhoeven	default 0xe6c50000 if DEBUG_RMOBILE_SCIFA1
14067a2071c5SGeert Uytterhoeven	default 0xe6c80000 if DEBUG_RMOBILE_SCIFA4
14077a2071c5SGeert Uytterhoeven	default 0xe6e58000 if DEBUG_RCAR_GEN2_SCIF2
14087a2071c5SGeert Uytterhoeven	default 0xe6e60000 if DEBUG_RCAR_GEN2_SCIF0
14097a2071c5SGeert Uytterhoeven	default 0xe8008000 if DEBUG_R7S72100_SCIF2
1410c3faa9b7SRussell King	default 0xf0000be0 if ARCH_EBSA110
141181b43a6eSMarc Carino	default 0xf040ab00 if DEBUG_BRCMSTB_UART
1412d91125ddSMaxime Ripard	default 0xf1012000 if DEBUG_MVEBU_UART0_ALTERNATE
1413bd920490SMaxime Ripard	default 0xf1012100 if DEBUG_MVEBU_UART1_ALTERNATE
1414ba364fc7SAndrew Lunn	default 0xf1012000 if ARCH_DOVE || ARCH_MV78XX0 || \
1415c3faa9b7SRussell King				ARCH_ORION5X
1416caad0b41SSebastian Hesselbarth	default 0xf7fc9000 if DEBUG_BERLIN_UART
141712aae309SHaifeng Yan	default 0xf8b00000 if DEBUG_HIX5HD2_UART
14187098cff2SIvan T. Ivanov	default 0xf991e000 if DEBUG_QCOM_UARTDM
14198d258bebSHaojian Zhuang	default 0xfcb00000 if DEBUG_HI3620_UART
1420c3faa9b7SRussell King	default 0xfe800000 if ARCH_IOP32X
1421efd02ee9SHeiko Stuebner	default 0xff690000 if DEBUG_RK32_UART2
14220b4cccbeSRussell King	default 0xffc02000 if DEBUG_SOCFPGA_UART
1423c3faa9b7SRussell King	default 0xffd82340 if ARCH_IOP13XX
14247a2071c5SGeert Uytterhoeven	default 0xffe40000 if DEBUG_RCAR_GEN1_SCIF0
14257a2071c5SGeert Uytterhoeven	default 0xffe42000 if DEBUG_RCAR_GEN1_SCIF2
14265c972af4SRussell King	default 0xfff36000 if DEBUG_HIGHBANK_UART
1427c26b9993SDaniel Thompson	default 0xfffb0000 if DEBUG_OMAP1UART1 || DEBUG_OMAP7XXUART1
1428c26b9993SDaniel Thompson	default 0xfffb0800 if DEBUG_OMAP1UART2 || DEBUG_OMAP7XXUART2
1429c26b9993SDaniel Thompson	default 0xfffb9800 if DEBUG_OMAP1UART3 || DEBUG_OMAP7XXUART3
1430b51312beSFlorian Fainelli	default 0xfffe8600 if DEBUG_UART_BCM63XX
1431c3faa9b7SRussell King	default 0xfffff700 if ARCH_IOP33X
1432d02fde7fSDaniel Thompson	depends on ARCH_EP93XX || \
1433d02fde7fSDaniel Thompson	        DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
1434494e492dSUwe Kleine-König		DEBUG_LL_UART_EFM32 || \
1435d8a00916SCarlo Caione		DEBUG_UART_8250 || DEBUG_UART_PL01X || DEBUG_MESON_UARTAO || \
14364d31e664SDaniel Thompson		DEBUG_MSM_UART || DEBUG_NETX_UART || \
14374d31e664SDaniel Thompson		DEBUG_QCOM_UARTDM || DEBUG_R7S72100_SCIF2 || \
14387a2071c5SGeert Uytterhoeven		DEBUG_RCAR_GEN1_SCIF0 || DEBUG_RCAR_GEN1_SCIF2 || \
14397a2071c5SGeert Uytterhoeven		DEBUG_RCAR_GEN2_SCIF0 || DEBUG_RCAR_GEN2_SCIF2 || \
14407a2071c5SGeert Uytterhoeven		DEBUG_RMOBILE_SCIFA0 || DEBUG_RMOBILE_SCIFA1 || \
14417a2071c5SGeert Uytterhoeven		DEBUG_RMOBILE_SCIFA4 || DEBUG_S3C24XX_UART || \
144201ea63d9SGuo Zeng		DEBUG_UART_BCM63XX || DEBUG_ASM9260_UART || \
1443e23814daSBaruch Siach		DEBUG_SIRFSOC_UART || DEBUG_DIGICOLOR_UA0
1444c3faa9b7SRussell King
1445c3faa9b7SRussell Kingconfig DEBUG_UART_VIRT
1446c3faa9b7SRussell King	hex "Virtual base address of debug UART"
14474d31e664SDaniel Thompson	default 0xe0000a00 if DEBUG_NETX_UART
1448c3faa9b7SRussell King	default 0xe0010fe0 if ARCH_RPC
14497098cff2SIvan T. Ivanov	default 0xe1000000 if DEBUG_MSM_UART
1450c3faa9b7SRussell King	default 0xf0000be0 if ARCH_EBSA110
1451d5bd4e8dSOleksij Rempel	default 0xf0010000 if DEBUG_ASM9260_UART
14525c972af4SRussell King	default 0xf01fb000 if DEBUG_NOMADIK_UART
14535c972af4SRussell King	default 0xf0201000 if DEBUG_BCM2835
145406580275SHauke Mehrtens	default 0xf1000300 if DEBUG_BCM_5301X
145565ec48c0SJoe.C	default 0xf1002000 if DEBUG_MT8127_UART0
1456d6682085SMatthias Brugger	default 0xf1006000 if DEBUG_MT6589_UART0
145765ec48c0SJoe.C	default 0xf1009000 if DEBUG_MT8135_UART3
14585c972af4SRussell King	default 0xf11f1000 if ARCH_VERSATILE
14595c972af4SRussell King	default 0xf1600000 if ARCH_INTEGRATOR
1460c3faa9b7SRussell King	default 0xf1c28000 if DEBUG_SUNXI_UART0
1461c3faa9b7SRussell King	default 0xf1c28400 if DEBUG_SUNXI_UART1
1462c4718543SChen-Yu Tsai	default 0xf1f02800 if DEBUG_SUNXI_R_UART
1463cde7fc87SRobert Jarzmik	default 0xf6200000 if DEBUG_PXA_UART1
1464c3faa9b7SRussell King	default 0xf4090000 if ARCH_LPC32XX
1465c3faa9b7SRussell King	default 0xf4200000 if ARCH_GEMINI
1466d4da889aSChen-Yu Tsai	default 0xf7000000 if DEBUG_SUN9I_UART0
14671899de28SHeiko Stuebner	default 0xf7000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \
14681899de28SHeiko Stuebner				DEBUG_S3C2410_UART0)
14691899de28SHeiko Stuebner	default 0xf7004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \
14701899de28SHeiko Stuebner				DEBUG_S3C2410_UART1)
14711899de28SHeiko Stuebner	default 0xf7008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \
14721899de28SHeiko Stuebner				DEBUG_S3C2410_UART2)
1473caad0b41SSebastian Hesselbarth	default 0xf7fc9000 if DEBUG_BERLIN_UART
1474c9a1df48SHaojian Zhuang	default 0xf8007000 if DEBUG_HIP04_UART
14755c972af4SRussell King	default 0xf8009000 if DEBUG_VEXPRESS_UART0_CA9
14765c972af4SRussell King	default 0xf8090000 if DEBUG_VEXPRESS_UART0_RS1
14777098cff2SIvan T. Ivanov	default 0xfa71e000 if DEBUG_QCOM_UARTDM
1478b125170aSKrzysztof Hałasa	default 0xfb002000 if DEBUG_CNS3XXX
14795c972af4SRussell King	default 0xfb009000 if DEBUG_REALVIEW_STD_PORT
14805c972af4SRussell King	default 0xfb10c000 if DEBUG_REALVIEW_PB1176_PORT
148181b43a6eSMarc Carino	default 0xfc40ab00 if DEBUG_BRCMSTB_UART
1482b51312beSFlorian Fainelli	default 0xfcfe8600 if DEBUG_UART_BCM63XX
14830dc0e475SRussell King	default 0xfd000000 if ARCH_SPEAR3XX || ARCH_SPEAR6XX
14840dc0e475SRussell King	default 0xfd000000 if ARCH_SPEAR13XX
1485c3faa9b7SRussell King	default 0xfd012000 if ARCH_MV78XX0
1486c3faa9b7SRussell King	default 0xfde12000 if ARCH_DOVE
1487c3faa9b7SRussell King	default 0xfe012000 if ARCH_ORION5X
1488d8a00916SCarlo Caione	default 0xf31004c0 if DEBUG_MESON_UARTAO
1489c3faa9b7SRussell King	default 0xfe017000 if DEBUG_MMP_UART2
1490c3faa9b7SRussell King	default 0xfe018000 if DEBUG_MMP_UART3
14915c972af4SRussell King	default 0xfe100000 if DEBUG_IMX23_UART || DEBUG_IMX28_UART
14920b4cccbeSRussell King	default 0xfe230000 if DEBUG_PICOXCELL_UART
1493753d1243SChristian Daudt	default 0xfe300000 if DEBUG_BCM_KONA_UART
1494c3faa9b7SRussell King	default 0xfe800000 if ARCH_IOP32X
149512aae309SHaifeng Yan	default 0xfeb00000 if DEBUG_HI3620_UART || DEBUG_HIX5HD2_UART
1496c3faa9b7SRussell King	default 0xfeb24000 if DEBUG_RK3X_UART0
1497c3faa9b7SRussell King	default 0xfeb26000 if DEBUG_RK3X_UART1
1498f2acf003SRussell King	default 0xfeb30c00 if DEBUG_KEYSTONE_UART0
1499f2acf003SRussell King	default 0xfeb31000 if DEBUG_KEYSTONE_UART1
15000b4cccbeSRussell King	default 0xfec02000 if DEBUG_SOCFPGA_UART
1501d91125ddSMaxime Ripard	default 0xfec12000 if DEBUG_MVEBU_UART0 || DEBUG_MVEBU_UART0_ALTERNATE
1502bd920490SMaxime Ripard	default 0xfec12100 if DEBUG_MVEBU_UART1_ALTERNATE
150301ea63d9SGuo Zeng	default 0xfec10000 if DEBUG_SIRFATLAS7_UART0
150497bd1a48SRussell King	default 0xfec20000 if DEBUG_DAVINCI_DMx_UART0
150501ea63d9SGuo Zeng	default 0xfec20000 if DEBUG_SIRFATLAS7_UART1
150601ea63d9SGuo Zeng	default 0xfec60000 if DEBUG_SIRFPRIMA2_UART1
1507efd02ee9SHeiko Stuebner	default 0xfec90000 if DEBUG_RK32_UART2
150897bd1a48SRussell King	default 0xfed0c000 if DEBUG_DAVINCI_DA8XX_UART1
150997bd1a48SRussell King	default 0xfed0d000 if DEBUG_DAVINCI_DA8XX_UART2
1510c39e1ef7SAlexander Shiyan	default 0xfed60000 if DEBUG_RK29_UART0
1511c39e1ef7SAlexander Shiyan	default 0xfed64000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
1512c39e1ef7SAlexander Shiyan	default 0xfed68000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
15135c972af4SRussell King	default 0xfedc0000 if ARCH_EP93XX
1514c3faa9b7SRussell King	default 0xfee003f8 if FOOTBRIDGE
15155c972af4SRussell King	default 0xfee20000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART
1516c3faa9b7SRussell King	default 0xfee82340 if ARCH_IOP13XX
1517c3faa9b7SRussell King	default 0xfef00000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
1518c3faa9b7SRussell King	default 0xfef00003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
1519c39e1ef7SAlexander Shiyan	default 0xfef36000 if DEBUG_HIGHBANK_UART
1520c26b9993SDaniel Thompson	default 0xfefb0000 if DEBUG_OMAP1UART1 || DEBUG_OMAP7XXUART1
1521c26b9993SDaniel Thompson	default 0xfefb0800 if DEBUG_OMAP1UART2 || DEBUG_OMAP7XXUART2
1522c26b9993SDaniel Thompson	default 0xfefb9800 if DEBUG_OMAP1UART3 || DEBUG_OMAP7XXUART3
1523c3faa9b7SRussell King	default 0xfefff700 if ARCH_IOP33X
15245c972af4SRussell King	default 0xff003000 if DEBUG_U300_UART
152527dafaa8SWang Long	default 0xffd01000 if DEBUG_HIP01_UART
15265c972af4SRussell King	default DEBUG_UART_PHYS if !MMU
1527f8f1279cSRussell King	depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
1528d8a00916SCarlo Caione		DEBUG_UART_8250 || DEBUG_UART_PL01X || DEBUG_MESON_UARTAO || \
15294d31e664SDaniel Thompson		DEBUG_MSM_UART || DEBUG_NETX_UART || \
15304d31e664SDaniel Thompson		DEBUG_QCOM_UARTDM || DEBUG_S3C24XX_UART || \
1531e23814daSBaruch Siach		DEBUG_UART_BCM63XX || DEBUG_ASM9260_UART || \
1532e23814daSBaruch Siach		DEBUG_SIRFSOC_UART || DEBUG_DIGICOLOR_UA0
1533c3faa9b7SRussell King
15344a003647SRussell Kingconfig DEBUG_UART_8250_SHIFT
15354a003647SRussell King	int "Register offset shift for the 8250 debug UART"
1536f8f1279cSRussell King	depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
1537c26b9993SDaniel Thompson	default 0 if FOOTBRIDGE || ARCH_IOP32X || DEBUG_BCM_5301X || \
1538c26b9993SDaniel Thompson		DEBUG_OMAP7XXUART1 || DEBUG_OMAP7XXUART2 || DEBUG_OMAP7XXUART3
15394a003647SRussell King	default 2
15407610b607SRussell King
15410b4cccbeSRussell Kingconfig DEBUG_UART_8250_WORD
15420b4cccbeSRussell King	bool "Use 32-bit accesses for 8250 UART"
1543f8f1279cSRussell King	depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
15440b4cccbeSRussell King	depends on DEBUG_UART_8250_SHIFT >= 2
1545f2acf003SRussell King	default y if DEBUG_PICOXCELL_UART || DEBUG_SOCFPGA_UART || \
154697bd1a48SRussell King		ARCH_KEYSTONE || \
154797bd1a48SRussell King		DEBUG_DAVINCI_DMx_UART0 || DEBUG_DAVINCI_DA8XX_UART1 || \
15489d6eccb9SArnd Bergmann		DEBUG_DAVINCI_DA8XX_UART2 || \
154981b43a6eSMarc Carino		DEBUG_BCM_KONA_UART || DEBUG_RK32_UART2 || \
155081b43a6eSMarc Carino		DEBUG_BRCMSTB_UART
15510b4cccbeSRussell King
15527610b607SRussell Kingconfig DEBUG_UART_8250_FLOW_CONTROL
15537610b607SRussell King	bool "Enable flow control for 8250 UART"
1554f8f1279cSRussell King	depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
15557610b607SRussell King	default y if ARCH_EBSA110 || FOOTBRIDGE || ARCH_GEMINI || ARCH_RPC
15567610b607SRussell King
15573b4af9bcSShawn Guoconfig DEBUG_UNCOMPRESS
15583b4af9bcSShawn Guo	bool
155990266754SHeiko Stuebner	depends on ARCH_MULTIPLATFORM || ARCH_MSM || PLAT_SAMSUNG
1560b6992fa9SRussell King	default y if DEBUG_LL && !DEBUG_OMAP2PLUS_UART && \
1561ae3c99a2SStephen Warren		     (!DEBUG_TEGRA_UART || !ZBOOT_ROM)
1562b6992fa9SRussell King	help
1563b6992fa9SRussell King	  This option influences the normal decompressor output for
1564b6992fa9SRussell King	  multiplatform kernels.  Normally, multiplatform kernels disable
1565b6992fa9SRussell King	  decompressor output because it is not possible to know where to
1566b6992fa9SRussell King	  send the decompressor output.
1567b6992fa9SRussell King
1568b6992fa9SRussell King	  When this option is set, the selected DEBUG_LL output method
1569b6992fa9SRussell King	  will be re-used for normal decompressor output on multiplatform
1570b6992fa9SRussell King	  kernels.
1571b6992fa9SRussell King
15723b4af9bcSShawn Guo
1573615967b0SShawn Guoconfig UNCOMPRESS_INCLUDE
1574615967b0SShawn Guo	string
1575ffd80eccSSachin Kamat	default "debug/uncompress.h" if ARCH_MULTIPLATFORM || ARCH_MSM || \
15762bf73dd6SLinus Torvalds					PLAT_SAMSUNG || ARCH_EFM32
1577615967b0SShawn Guo	default "mach/uncompress.h"
1578615967b0SShawn Guo
15791da177e4SLinus Torvaldsconfig EARLY_PRINTK
15801da177e4SLinus Torvalds	bool "Early printk"
15811da177e4SLinus Torvalds	depends on DEBUG_LL
15821da177e4SLinus Torvalds	help
15831da177e4SLinus Torvalds	  Say Y here if you want to have an early console using the
15841da177e4SLinus Torvalds	  kernel low-level debugging functions. Add earlyprintk to your
15851da177e4SLinus Torvalds	  kernel parameters to enable this console.
15861da177e4SLinus Torvalds
15871da177e4SLinus Torvaldsconfig ARM_KPROBES_TEST
15881da177e4SLinus Torvalds	tristate "Kprobes test module"
15891da177e4SLinus Torvalds	depends on KPROBES && MODULES
15901da177e4SLinus Torvalds	help
15911da177e4SLinus Torvalds	  Perform tests of kprobes API and instruction set simulation.
15921da177e4SLinus Torvalds
1593575320d6SWill Deaconconfig PID_IN_CONTEXTIDR
1594575320d6SWill Deacon	bool "Write the current PID to the CONTEXTIDR register"
1595575320d6SWill Deacon	depends on CPU_COPY_V6
1596575320d6SWill Deacon	help
1597575320d6SWill Deacon	  Enabling this option causes the kernel to write the current PID to
1598575320d6SWill Deacon	  the PROCID field of the CONTEXTIDR register, at the expense of some
1599575320d6SWill Deacon	  additional instructions during context switch. Say Y here only if you
1600575320d6SWill Deacon	  are planning to use hardware trace tools with this kernel.
1601575320d6SWill Deacon
1602dca9aa92SLaura Abbottconfig DEBUG_SET_MODULE_RONX
1603dca9aa92SLaura Abbott	bool "Set loadable kernel module data as NX and text as RO"
1604dca9aa92SLaura Abbott	depends on MODULES
1605dca9aa92SLaura Abbott	---help---
1606dca9aa92SLaura Abbott	  This option helps catch unintended modifications to loadable
1607dca9aa92SLaura Abbott	  kernel module's text and read-only data. It also prevents execution
1608dca9aa92SLaura Abbott	  of module data. Such protection may interfere with run-time code
1609dca9aa92SLaura Abbott	  patching and dynamic kernel tracing - and they might also protect
1610dca9aa92SLaura Abbott	  against certain classes of kernel exploits.
1611dca9aa92SLaura Abbott	  If in doubt, say "N".
1612dca9aa92SLaura Abbott
1613a06ae860SPratik Patelmenuconfig CORESIGHT
1614a06ae860SPratik Patel	bool "CoreSight Tracing Support"
1615a06ae860SPratik Patel	select ARM_AMBA
1616a06ae860SPratik Patel	help
1617a06ae860SPratik Patel	  This framework provides a kernel interface for the CoreSight debug
1618a06ae860SPratik Patel	  and trace drivers to register themselves with. It's intended to build
1619a06ae860SPratik Patel	  a topological view of the CoreSight components based on a DT
1620a06ae860SPratik Patel	  specification and configure the right serie of components when a
1621a06ae860SPratik Patel	  trace source gets enabled.
1622bc4bf7feSPratik Patel
1623bc4bf7feSPratik Patelif CORESIGHT
1624bc4bf7feSPratik Patelconfig CORESIGHT_LINKS_AND_SINKS
1625bc4bf7feSPratik Patel	bool "CoreSight Link and Sink drivers"
1626bc4bf7feSPratik Patel	help
1627bc4bf7feSPratik Patel	  This enables support for CoreSight link and sink drivers that are
1628bc4bf7feSPratik Patel	  responsible for transporting and collecting the trace data
1629bc4bf7feSPratik Patel	  respectively.  Link and sinks are dynamically aggregated with a trace
1630bc4bf7feSPratik Patel	  entity at run time to form a complete trace path.
1631bc4bf7feSPratik Patel
1632bc4bf7feSPratik Patelconfig CORESIGHT_LINK_AND_SINK_TMC
1633bc4bf7feSPratik Patel	bool "Coresight generic TMC driver"
1634bc4bf7feSPratik Patel	depends on CORESIGHT_LINKS_AND_SINKS
1635bc4bf7feSPratik Patel	help
1636bc4bf7feSPratik Patel	  This enables support for the Trace Memory Controller driver.  Depending
1637bc4bf7feSPratik Patel	  on its configuration the device can act as a link (embedded trace router
1638bc4bf7feSPratik Patel	  - ETR) or sink (embedded trace FIFO).  The driver complies with the
1639bc4bf7feSPratik Patel	  generic implementation of the component without special enhancement or
1640bc4bf7feSPratik Patel	  added features.
1641dc161b9fSPratik Patel
1642dc161b9fSPratik Patelconfig CORESIGHT_SINK_TPIU
1643dc161b9fSPratik Patel	bool "Coresight generic TPIU driver"
1644dc161b9fSPratik Patel	depends on CORESIGHT_LINKS_AND_SINKS
1645dc161b9fSPratik Patel	help
1646dc161b9fSPratik Patel	  This enables support for the Trace Port Interface Unit driver, responsible
1647dc161b9fSPratik Patel	  for bridging the gap between the on-chip coresight components and a trace
1648dc161b9fSPratik Patel	  port collection engine, typically connected to an external host for use
1649dc161b9fSPratik Patel	  case capturing more traces than the on-board coresight memory can handle.
1650fdfc0d8aSPratik Patel
1651fdfc0d8aSPratik Patelconfig CORESIGHT_SINK_ETBV10
1652fdfc0d8aSPratik Patel	bool "Coresight ETBv1.0 driver"
1653fdfc0d8aSPratik Patel	depends on CORESIGHT_LINKS_AND_SINKS
1654fdfc0d8aSPratik Patel	help
1655fdfc0d8aSPratik Patel	  This enables support for the Embedded Trace Buffer version 1.0 driver
1656fdfc0d8aSPratik Patel	  that complies with the generic implementation of the component without
1657fdfc0d8aSPratik Patel	  special enhancement or added features.
1658a939fc5aSPratik Patel
1659a939fc5aSPratik Patelconfig CORESIGHT_SOURCE_ETM3X
1660a939fc5aSPratik Patel	bool "CoreSight Embedded Trace Macrocell 3.x driver"
1661a939fc5aSPratik Patel	select CORESIGHT_LINKS_AND_SINKS
1662a939fc5aSPratik Patel	help
1663a939fc5aSPratik Patel	  This driver provides support for processor ETM3.x and PTM1.x modules,
1664a939fc5aSPratik Patel	  which allows tracing the instructions that a processor is executing
1665a939fc5aSPratik Patel	  This is primarily useful for instruction level tracing.  Depending
1666a939fc5aSPratik Patel	  the ETM version data tracing may also be available.
1667bc4bf7feSPratik Patelendif
16681da177e4SLinus Torvaldsendmenu
1669