xref: /linux/arch/arm/Kconfig.debug (revision 5927c4dfe853897c86a581db84c74b7577ec86b1)
11da177e4SLinus Torvaldsmenu "Kernel hacking"
21da177e4SLinus Torvalds
31da177e4SLinus Torvaldssource "lib/Kconfig.debug"
41da177e4SLinus Torvalds
5087aaffcSNicolas Pitreconfig STRICT_DEVMEM
6087aaffcSNicolas Pitre	bool "Filter access to /dev/mem"
7087aaffcSNicolas Pitre	depends on MMU
8087aaffcSNicolas Pitre	---help---
9087aaffcSNicolas Pitre	  If this option is disabled, you allow userspace (root) access to all
10087aaffcSNicolas Pitre	  of memory, including kernel and userspace memory. Accidental
11087aaffcSNicolas Pitre	  access to this is obviously disastrous, but specific access can
12087aaffcSNicolas Pitre	  be used by people debugging the kernel.
13087aaffcSNicolas Pitre
14087aaffcSNicolas Pitre	  If this option is switched on, the /dev/mem file only allows
15087aaffcSNicolas Pitre	  userspace access to memory mapped peripherals.
16087aaffcSNicolas Pitre
17087aaffcSNicolas Pitre          If in doubt, say Y.
18087aaffcSNicolas Pitre
19adf8b37bSCatalin Marinas# RMK wants arm kernels compiled with frame pointers or stack unwinding.
201da177e4SLinus Torvalds# If you know what you are doing and are willing to live without stack
211da177e4SLinus Torvalds# traces, you can get a slightly smaller kernel by setting this option to
221da177e4SLinus Torvalds# n, but then RMK will have to kill you ;).
231da177e4SLinus Torvaldsconfig FRAME_POINTER
241da177e4SLinus Torvalds	bool
2516c79651SCatalin Marinas	depends on !THUMB2_KERNEL
260e341af8SRabin Vincent	default y if !ARM_UNWIND || FUNCTION_GRAPH_TRACER
271da177e4SLinus Torvalds	help
281da177e4SLinus Torvalds	  If you say N here, the resulting kernel will be slightly smaller and
29adf8b37bSCatalin Marinas	  faster. However, if neither FRAME_POINTER nor ARM_UNWIND are enabled,
30adf8b37bSCatalin Marinas	  when a problem occurs with the kernel, the information that is
31adf8b37bSCatalin Marinas	  reported is severely limited.
32adf8b37bSCatalin Marinas
33adf8b37bSCatalin Marinasconfig ARM_UNWIND
344a50bfe3SRussell King	bool "Enable stack unwinding support (EXPERIMENTAL)"
35d6f94fa0SKees Cook	depends on AEABI
36adf8b37bSCatalin Marinas	default y
37adf8b37bSCatalin Marinas	help
38adf8b37bSCatalin Marinas	  This option enables stack unwinding support in the kernel
39adf8b37bSCatalin Marinas	  using the information automatically generated by the
40adf8b37bSCatalin Marinas	  compiler. The resulting kernel image is slightly bigger but
41adf8b37bSCatalin Marinas	  the performance is not affected. Currently, this feature
42adf8b37bSCatalin Marinas	  only works with EABI compilers. If unsure say Y.
431da177e4SLinus Torvalds
4409bfafacSRabin Vincentconfig OLD_MCOUNT
4509bfafacSRabin Vincent	bool
4609bfafacSRabin Vincent	depends on FUNCTION_TRACER && FRAME_POINTER
4709bfafacSRabin Vincent	default y
4809bfafacSRabin Vincent
491da177e4SLinus Torvaldsconfig DEBUG_USER
501da177e4SLinus Torvalds	bool "Verbose user fault messages"
511da177e4SLinus Torvalds	help
521da177e4SLinus Torvalds	  When a user program crashes due to an exception, the kernel can
531da177e4SLinus Torvalds	  print a brief message explaining what the problem was. This is
541da177e4SLinus Torvalds	  sometimes helpful for debugging but serves no purpose on a
551da177e4SLinus Torvalds	  production system. Most people should say N here.
561da177e4SLinus Torvalds
571da177e4SLinus Torvalds	  In addition, you need to pass user_debug=N on the kernel command
581da177e4SLinus Torvalds	  line to enable this feature.  N consists of the sum of:
591da177e4SLinus Torvalds
601da177e4SLinus Torvalds	      1 - undefined instruction events
611da177e4SLinus Torvalds	      2 - system calls
621da177e4SLinus Torvalds	      4 - invalid data aborts
631da177e4SLinus Torvalds	      8 - SIGSEGV faults
641da177e4SLinus Torvalds	     16 - SIGBUS faults
651da177e4SLinus Torvalds
661da177e4SLinus Torvalds# These options are only for real kernel hackers who want to get their hands dirty.
671da177e4SLinus Torvaldsconfig DEBUG_LL
684f5ef922SWill Deacon	bool "Kernel low-level debugging functions (read help!)"
691da177e4SLinus Torvalds	depends on DEBUG_KERNEL
701da177e4SLinus Torvalds	help
7135efb606SRussell King	  Say Y here to include definitions of printascii, printch, printhex
721da177e4SLinus Torvalds	  in the kernel.  This is helpful if you are debugging code that
731da177e4SLinus Torvalds	  executes before the console is initialized.
741da177e4SLinus Torvalds
754f5ef922SWill Deacon	  Note that selecting this option will limit the kernel to a single
764f5ef922SWill Deacon	  UART definition, as specified below. Attempting to boot the kernel
774f5ef922SWill Deacon	  image on a different platform *will not work*, so this option should
784f5ef922SWill Deacon	  not be enabled for kernels that are intended to be portable.
794f5ef922SWill Deacon
8017916b28SWill Deaconchoice
8117916b28SWill Deacon	prompt "Kernel low-level debugging port"
8217916b28SWill Deacon	depends on DEBUG_LL
8317916b28SWill Deacon
8413079a73SJean-Christophe PLAGNIOL-VILLARD	config AT91_DEBUG_LL_DBGU0
8513079a73SJean-Christophe PLAGNIOL-VILLARD		bool "Kernel low-level debugging on rm9200, 9260/9g20, 9261/9g10 and 9rl"
8613079a73SJean-Christophe PLAGNIOL-VILLARD		depends on HAVE_AT91_DBGU0
8713079a73SJean-Christophe PLAGNIOL-VILLARD
8813079a73SJean-Christophe PLAGNIOL-VILLARD	config AT91_DEBUG_LL_DBGU1
899918ceafSJean-Christophe PLAGNIOL-VILLARD		bool "Kernel low-level debugging on 9263 and 9g45"
9013079a73SJean-Christophe PLAGNIOL-VILLARD		depends on HAVE_AT91_DBGU1
9113079a73SJean-Christophe PLAGNIOL-VILLARD
92f1ac922dSStephen Warren	config DEBUG_BCM2835
93f1ac922dSStephen Warren		bool "Kernel low-level debugging on BCM2835 PL011 UART"
94f1ac922dSStephen Warren		depends on ARCH_BCM2835
955c972af4SRussell King		select DEBUG_UART_PL01X
96f1ac922dSStephen Warren
97164acf96SStephen Boyd	config DEBUG_CLPS711X_UART1
98164acf96SStephen Boyd		bool "Kernel low-level debugging messages via UART1"
99164acf96SStephen Boyd		depends on ARCH_CLPS711X
100164acf96SStephen Boyd		help
101164acf96SStephen Boyd		  Say Y here if you want the debug print routines to direct
102164acf96SStephen Boyd		  their output to the first serial port on these devices.
10317916b28SWill Deacon
10417916b28SWill Deacon	config DEBUG_CLPS711X_UART2
10517916b28SWill Deacon		bool "Kernel low-level debugging messages via UART2"
10617916b28SWill Deacon		depends on ARCH_CLPS711X
10717916b28SWill Deacon		help
10817916b28SWill Deacon		  Say Y here if you want the debug print routines to direct
10917916b28SWill Deacon		  their output to the second serial port on these devices.
11017916b28SWill Deacon
11129c9b7beSArnd Bergmann	config DEBUG_CNS3XXX
11229c9b7beSArnd Bergmann		bool "Kernel Kernel low-level debugging on Cavium Networks CNS3xxx"
11329c9b7beSArnd Bergmann		depends on ARCH_CNS3XXX
1145c972af4SRussell King		select DEBUG_UART_PL01X
11529c9b7beSArnd Bergmann		help
11629c9b7beSArnd Bergmann		  Say Y here if you want the debug print routines to direct
11729c9b7beSArnd Bergmann                  their output to the CNS3xxx UART0.
11829c9b7beSArnd Bergmann
119477099f1SUwe Kleine-König	config DEBUG_DAVINCI_DA8XX_UART1
120477099f1SUwe Kleine-König		bool "Kernel low-level debugging on DaVinci DA8XX using UART1"
121477099f1SUwe Kleine-König		depends on ARCH_DAVINCI_DA8XX
12297bd1a48SRussell King		select DEBUG_UART_8250
123477099f1SUwe Kleine-König		help
124477099f1SUwe Kleine-König		  Say Y here if you want the debug print routines to direct
125477099f1SUwe Kleine-König		  their output to UART1 serial port on DaVinci DA8XX devices.
126477099f1SUwe Kleine-König
127477099f1SUwe Kleine-König	config DEBUG_DAVINCI_DA8XX_UART2
128477099f1SUwe Kleine-König		bool "Kernel low-level debugging on DaVinci DA8XX using UART2"
129477099f1SUwe Kleine-König		depends on ARCH_DAVINCI_DA8XX
13097bd1a48SRussell King		select DEBUG_UART_8250
131477099f1SUwe Kleine-König		help
132477099f1SUwe Kleine-König		  Say Y here if you want the debug print routines to direct
133477099f1SUwe Kleine-König		  their output to UART2 serial port on DaVinci DA8XX devices.
134477099f1SUwe Kleine-König
135477099f1SUwe Kleine-König	config DEBUG_DAVINCI_DMx_UART0
136477099f1SUwe Kleine-König		bool "Kernel low-level debugging on DaVinci DMx using UART0"
137477099f1SUwe Kleine-König		depends on ARCH_DAVINCI_DMx
13897bd1a48SRussell King		select DEBUG_UART_8250
139477099f1SUwe Kleine-König		help
140477099f1SUwe Kleine-König		  Say Y here if you want the debug print routines to direct
141477099f1SUwe Kleine-König		  their output to UART0 serial port on DaVinci DMx devices.
142477099f1SUwe Kleine-König
143477099f1SUwe Kleine-König	config DEBUG_DAVINCI_TNETV107X_UART1
144477099f1SUwe Kleine-König		bool "Kernel low-level debugging on DaVinci TNETV107x using UART1"
145477099f1SUwe Kleine-König		depends on ARCH_DAVINCI_TNETV107X
14697bd1a48SRussell King		select DEBUG_UART_8250
147477099f1SUwe Kleine-König		help
148477099f1SUwe Kleine-König		  Say Y here if you want the debug print routines to direct
149477099f1SUwe Kleine-König		  their output to UART1 serial port on DaVinci TNETV107X
150477099f1SUwe Kleine-König		  devices.
151477099f1SUwe Kleine-König
152aaf5e0beSNick Bowler	config DEBUG_ZYNQ_UART0
153aaf5e0beSNick Bowler		bool "Kernel low-level debugging on Xilinx Zynq using UART0"
154aaf5e0beSNick Bowler		depends on ARCH_ZYNQ
155aaf5e0beSNick Bowler		help
156aaf5e0beSNick Bowler		  Say Y here if you want the debug print routines to direct
157aaf5e0beSNick Bowler		  their output to UART0 on the Zynq platform.
158aaf5e0beSNick Bowler
159aaf5e0beSNick Bowler	config DEBUG_ZYNQ_UART1
160aaf5e0beSNick Bowler		bool "Kernel low-level debugging on Xilinx Zynq using UART1"
161aaf5e0beSNick Bowler		depends on ARCH_ZYNQ
162aaf5e0beSNick Bowler		help
163aaf5e0beSNick Bowler		  Say Y here if you want the debug print routines to direct
164aaf5e0beSNick Bowler		  their output to UART1 on the Zynq platform.
165aaf5e0beSNick Bowler
166aaf5e0beSNick Bowler		  If you have a ZC702 board and want early boot messages to
167aaf5e0beSNick Bowler		  appear on the USB serial adaptor, select this option.
168aaf5e0beSNick Bowler
169e76f4750SRussell King	config DEBUG_DC21285_PORT
170e76f4750SRussell King		bool "Kernel low-level debugging messages via footbridge serial port"
171e76f4750SRussell King		depends on FOOTBRIDGE
172e76f4750SRussell King		help
173e76f4750SRussell King		  Say Y here if you want the debug print routines to direct
174e76f4750SRussell King		  their output to the serial port in the DC21285 (Footbridge).
175e76f4750SRussell King
176e76f4750SRussell King	config DEBUG_FOOTBRIDGE_COM1
177e76f4750SRussell King		bool "Kernel low-level debugging messages via footbridge 8250 at PCI COM1"
178e76f4750SRussell King		depends on FOOTBRIDGE
179e76f4750SRussell King		help
180e76f4750SRussell King		  Say Y here if you want the debug print routines to direct
181e76f4750SRussell King		  their output to the 8250 at PCI COM1.
182e76f4750SRussell King
183220e6cf7SRob Herring	config DEBUG_HIGHBANK_UART
184220e6cf7SRob Herring		bool "Kernel low-level debugging messages via Highbank UART"
185220e6cf7SRob Herring		depends on ARCH_HIGHBANK
1865c972af4SRussell King		select DEBUG_UART_PL01X
187220e6cf7SRob Herring		help
188220e6cf7SRob Herring		  Say Y here if you want the debug print routines to direct
189220e6cf7SRob Herring		  their output to the UART on Highbank based devices.
190220e6cf7SRob Herring
191f350b861SShawn Guo	config DEBUG_IMX1_UART
192f350b861SShawn Guo		bool "i.MX1 Debug UART"
193f350b861SShawn Guo		depends on SOC_IMX1
194f350b861SShawn Guo		help
195f350b861SShawn Guo		  Say Y here if you want kernel low-level debugging support
196f350b861SShawn Guo		  on i.MX1.
197f350b861SShawn Guo
198f350b861SShawn Guo	config DEBUG_IMX23_UART
199f350b861SShawn Guo		bool "i.MX23 Debug UART"
200f350b861SShawn Guo		depends on SOC_IMX23
2015c972af4SRussell King		select DEBUG_UART_PL01X
202f350b861SShawn Guo		help
203f350b861SShawn Guo		  Say Y here if you want kernel low-level debugging support
204f350b861SShawn Guo		  on i.MX23.
205f350b861SShawn Guo
206f350b861SShawn Guo	config DEBUG_IMX25_UART
207f350b861SShawn Guo		bool "i.MX25 Debug UART"
208f350b861SShawn Guo		depends on SOC_IMX25
209f350b861SShawn Guo		help
210f350b861SShawn Guo		  Say Y here if you want kernel low-level debugging support
211f350b861SShawn Guo		  on i.MX25.
212f350b861SShawn Guo
213f350b861SShawn Guo	config DEBUG_IMX21_IMX27_UART
214f350b861SShawn Guo		bool "i.MX21 and i.MX27 Debug UART"
215f350b861SShawn Guo		depends on SOC_IMX21 || SOC_IMX27
216f350b861SShawn Guo		help
217f350b861SShawn Guo		  Say Y here if you want kernel low-level debugging support
218f350b861SShawn Guo		  on i.MX21 or i.MX27.
219f350b861SShawn Guo
220f350b861SShawn Guo	config DEBUG_IMX28_UART
221f350b861SShawn Guo		bool "i.MX28 Debug UART"
222f350b861SShawn Guo		depends on SOC_IMX28
2235c972af4SRussell King		select DEBUG_UART_PL01X
224f350b861SShawn Guo		help
225f350b861SShawn Guo		  Say Y here if you want kernel low-level debugging support
226f350b861SShawn Guo		  on i.MX28.
227f350b861SShawn Guo
2284ad625d4SShawn Guo	config DEBUG_IMX31_UART
2294ad625d4SShawn Guo		bool "i.MX31 Debug UART"
2304ad625d4SShawn Guo		depends on SOC_IMX31
231f350b861SShawn Guo		help
232f350b861SShawn Guo		  Say Y here if you want kernel low-level debugging support
2334ad625d4SShawn Guo		  on i.MX31.
2344ad625d4SShawn Guo
2354ad625d4SShawn Guo	config DEBUG_IMX35_UART
2364ad625d4SShawn Guo		bool "i.MX35 Debug UART"
2374ad625d4SShawn Guo		depends on SOC_IMX35
2384ad625d4SShawn Guo		help
2394ad625d4SShawn Guo		  Say Y here if you want kernel low-level debugging support
2404ad625d4SShawn Guo		  on i.MX35.
241f350b861SShawn Guo
242f350b861SShawn Guo	config DEBUG_IMX51_UART
243f350b861SShawn Guo		bool "i.MX51 Debug UART"
244f350b861SShawn Guo		depends on SOC_IMX51
245f350b861SShawn Guo		help
246f350b861SShawn Guo		  Say Y here if you want kernel low-level debugging support
247f350b861SShawn Guo		  on i.MX51.
248f350b861SShawn Guo
2497356420cSFabio Estevam	config DEBUG_IMX53_UART
2507356420cSFabio Estevam		bool "i.MX53 Debug UART"
2517356420cSFabio Estevam		depends on SOC_IMX53
252f350b861SShawn Guo		help
253f350b861SShawn Guo		  Say Y here if you want kernel low-level debugging support
2547356420cSFabio Estevam		  on i.MX53.
255f350b861SShawn Guo
25649c9e60eSShawn Guo	config DEBUG_IMX6Q_UART
2573c03a2feSShawn Guo		bool "i.MX6Q/DL Debug UART"
258785d7fabSDirk Behme		depends on SOC_IMX6Q
259785d7fabSDirk Behme		help
260785d7fabSDirk Behme		  Say Y here if you want kernel low-level debugging support
2613c03a2feSShawn Guo		  on i.MX6Q/DL.
262bac89d75SShawn Guo
26334e8a16bSShawn Guo	config DEBUG_IMX6SL_UART
26434e8a16bSShawn Guo		bool "i.MX6SL Debug UART"
26534e8a16bSShawn Guo		depends on SOC_IMX6SL
26634e8a16bSShawn Guo		help
26734e8a16bSShawn Guo		  Say Y here if you want kernel low-level debugging support
26834e8a16bSShawn Guo		  on i.MX6SL.
26934e8a16bSShawn Guo
270828989adSSantosh Shilimkar	config DEBUG_KEYSTONE_UART0
271828989adSSantosh Shilimkar		bool "Kernel low-level debugging on KEYSTONE2 using UART0"
272828989adSSantosh Shilimkar		depends on ARCH_KEYSTONE
273f2acf003SRussell King		select DEBUG_UART_8250
274828989adSSantosh Shilimkar		help
275828989adSSantosh Shilimkar		  Say Y here if you want the debug print routines to direct
276828989adSSantosh Shilimkar		  their output to UART0 serial port on KEYSTONE2 devices.
277828989adSSantosh Shilimkar
278828989adSSantosh Shilimkar	config DEBUG_KEYSTONE_UART1
279828989adSSantosh Shilimkar		bool "Kernel low-level debugging on KEYSTONE2 using UART1"
280828989adSSantosh Shilimkar		depends on ARCH_KEYSTONE
281f2acf003SRussell King		select DEBUG_UART_8250
282828989adSSantosh Shilimkar		help
283828989adSSantosh Shilimkar		  Say Y here if you want the debug print routines to direct
284828989adSSantosh Shilimkar		  their output to UART1 serial port on KEYSTONE2 devices.
285828989adSSantosh Shilimkar
286fa4cd2a8SHaojian Zhuang	config DEBUG_MMP_UART2
287fa4cd2a8SHaojian Zhuang		bool "Kernel low-level debugging message via MMP UART2"
288fa4cd2a8SHaojian Zhuang		depends on ARCH_MMP
2894a003647SRussell King		select DEBUG_UART_8250
290fa4cd2a8SHaojian Zhuang		help
291fa4cd2a8SHaojian Zhuang		  Say Y here if you want kernel low-level debugging support
292fa4cd2a8SHaojian Zhuang		  on MMP UART2.
293fa4cd2a8SHaojian Zhuang
294fa4cd2a8SHaojian Zhuang	config DEBUG_MMP_UART3
295fa4cd2a8SHaojian Zhuang		bool "Kernel low-level debugging message via MMP UART3"
296fa4cd2a8SHaojian Zhuang		depends on ARCH_MMP
2974a003647SRussell King		select DEBUG_UART_8250
298fa4cd2a8SHaojian Zhuang		help
299fa4cd2a8SHaojian Zhuang		  Say Y here if you want kernel low-level debugging support
300fa4cd2a8SHaojian Zhuang		  on MMP UART3.
301fa4cd2a8SHaojian Zhuang
302650e3f0dSStephen Boyd	config DEBUG_MSM_UART1
303650e3f0dSStephen Boyd		bool "Kernel low-level debugging messages via MSM UART1"
304650e3f0dSStephen Boyd		depends on ARCH_MSM7X00A || ARCH_MSM7X30 || ARCH_QSD8X50
305650e3f0dSStephen Boyd		help
306650e3f0dSStephen Boyd		  Say Y here if you want the debug print routines to direct
307650e3f0dSStephen Boyd		  their output to the first serial port on MSM devices.
308650e3f0dSStephen Boyd
309650e3f0dSStephen Boyd	config DEBUG_MSM_UART2
310650e3f0dSStephen Boyd		bool "Kernel low-level debugging messages via MSM UART2"
311650e3f0dSStephen Boyd		depends on ARCH_MSM7X00A || ARCH_MSM7X30 || ARCH_QSD8X50
312650e3f0dSStephen Boyd		help
313650e3f0dSStephen Boyd		  Say Y here if you want the debug print routines to direct
314650e3f0dSStephen Boyd		  their output to the second serial port on MSM devices.
315650e3f0dSStephen Boyd
316650e3f0dSStephen Boyd	config DEBUG_MSM_UART3
317650e3f0dSStephen Boyd		bool "Kernel low-level debugging messages via MSM UART3"
318650e3f0dSStephen Boyd		depends on ARCH_MSM7X00A || ARCH_MSM7X30 || ARCH_QSD8X50
319650e3f0dSStephen Boyd		help
320650e3f0dSStephen Boyd		  Say Y here if you want the debug print routines to direct
321650e3f0dSStephen Boyd		  their output to the third serial port on MSM devices.
322650e3f0dSStephen Boyd
323a3d3ef9dSStephen Boyd	config DEBUG_MSM8660_UART
324a3d3ef9dSStephen Boyd		bool "Kernel low-level debugging messages via MSM 8660 UART"
325a3d3ef9dSStephen Boyd		depends on ARCH_MSM8X60
326a3d3ef9dSStephen Boyd		select MSM_HAS_DEBUG_UART_HS
327a3d3ef9dSStephen Boyd		help
328a3d3ef9dSStephen Boyd		  Say Y here if you want the debug print routines to direct
329a3d3ef9dSStephen Boyd		  their output to the serial port on MSM 8660 devices.
330a3d3ef9dSStephen Boyd
331a3d3ef9dSStephen Boyd	config DEBUG_MSM8960_UART
332a3d3ef9dSStephen Boyd		bool "Kernel low-level debugging messages via MSM 8960 UART"
333a3d3ef9dSStephen Boyd		depends on ARCH_MSM8960
334a3d3ef9dSStephen Boyd		select MSM_HAS_DEBUG_UART_HS
335a3d3ef9dSStephen Boyd		help
336a3d3ef9dSStephen Boyd		  Say Y here if you want the debug print routines to direct
337a3d3ef9dSStephen Boyd		  their output to the serial port on MSM 8960 devices.
338a3d3ef9dSStephen Boyd
339bfd5af99SRob Herring	config DEBUG_MVEBU_UART
340c2804cd6SThomas Petazzoni		bool "Kernel low-level debugging messages via MVEBU UART (old bootloaders)"
341bfd5af99SRob Herring		depends on ARCH_MVEBU
3424a003647SRussell King		select DEBUG_UART_8250
343bfd5af99SRob Herring		help
344bfd5af99SRob Herring		  Say Y here if you want kernel low-level debugging support
345bfd5af99SRob Herring		  on MVEBU based platforms.
346bfd5af99SRob Herring
347c2804cd6SThomas Petazzoni		  This option should be used with the old bootloaders
348c2804cd6SThomas Petazzoni		  that left the internal registers mapped at
349c2804cd6SThomas Petazzoni		  0xd0000000. As of today, this is the case on
350c2804cd6SThomas Petazzoni		  platforms such as the Globalscale Mirabox or the
351c2804cd6SThomas Petazzoni		  Plathome OpenBlocks AX3, when using the original
352c2804cd6SThomas Petazzoni		  bootloader.
353c2804cd6SThomas Petazzoni
354c2804cd6SThomas Petazzoni		  If the wrong DEBUG_MVEBU_UART* option is selected,
355c2804cd6SThomas Petazzoni		  when u-boot hands over to the kernel, the system
356c2804cd6SThomas Petazzoni		  silently crashes, with no serial output at all.
357c2804cd6SThomas Petazzoni
358c2804cd6SThomas Petazzoni	config DEBUG_MVEBU_UART_ALTERNATE
359c2804cd6SThomas Petazzoni		bool "Kernel low-level debugging messages via MVEBU UART (new bootloaders)"
360c2804cd6SThomas Petazzoni		depends on ARCH_MVEBU
3614a003647SRussell King		select DEBUG_UART_8250
362c2804cd6SThomas Petazzoni		help
363c2804cd6SThomas Petazzoni		  Say Y here if you want kernel low-level debugging support
364c2804cd6SThomas Petazzoni		  on MVEBU based platforms.
365c2804cd6SThomas Petazzoni
366c2804cd6SThomas Petazzoni		  This option should be used with the new bootloaders
367c2804cd6SThomas Petazzoni		  that remap the internal registers at 0xf1000000.
368c2804cd6SThomas Petazzoni
369c2804cd6SThomas Petazzoni		  If the wrong DEBUG_MVEBU_UART* option is selected,
370c2804cd6SThomas Petazzoni		  when u-boot hands over to the kernel, the system
371c2804cd6SThomas Petazzoni		  silently crashes, with no serial output at all.
372c2804cd6SThomas Petazzoni
373266c3479SLinus Walleij	config DEBUG_NOMADIK_UART
374266c3479SLinus Walleij		bool "Kernel low-level debugging messages via NOMADIK UART"
375266c3479SLinus Walleij		depends on ARCH_NOMADIK
3765c972af4SRussell King		select DEBUG_UART_PL01X
377266c3479SLinus Walleij		help
378266c3479SLinus Walleij		  Say Y here if you want kernel low-level debugging support
379266c3479SLinus Walleij		  on NOMADIK based platforms.
380266c3479SLinus Walleij
3819851ca57SDaniel Tang	config DEBUG_NSPIRE_CLASSIC_UART
3829851ca57SDaniel Tang		bool "Kernel low-level debugging via TI-NSPIRE 8250 UART"
3839851ca57SDaniel Tang		depends on ARCH_NSPIRE
3844a003647SRussell King		select DEBUG_UART_8250
3859851ca57SDaniel Tang		help
3869851ca57SDaniel Tang		  Say Y here if you want kernel low-level debugging support
3879851ca57SDaniel Tang		  on TI-NSPIRE classic models.
3889851ca57SDaniel Tang
3899851ca57SDaniel Tang	config DEBUG_NSPIRE_CX_UART
3909851ca57SDaniel Tang		bool "Kernel low-level debugging via TI-NSPIRE PL011 UART"
3919851ca57SDaniel Tang		depends on ARCH_NSPIRE
3925c972af4SRussell King		select DEBUG_UART_PL01X
3939851ca57SDaniel Tang		help
3949851ca57SDaniel Tang		  Say Y here if you want kernel low-level debugging support
3959851ca57SDaniel Tang		  on TI-NSPIRE CX models.
3969851ca57SDaniel Tang
397cce278d2SRussell King	config DEBUG_OMAP2UART1
398cce278d2SRussell King		bool "OMAP2/3/4 UART1 (omap2/3 sdp boards and some omap3 boards)"
399808b7e07STony Lindgren		depends on ARCH_OMAP2PLUS
400cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
401808b7e07STony Lindgren		help
402cce278d2SRussell King		  This covers at least h4, 2430sdp, 3430sdp, 3630sdp,
403cce278d2SRussell King		  omap3 torpedo and 3530 lv som.
404cce278d2SRussell King
405cce278d2SRussell King	config DEBUG_OMAP2UART2
406cce278d2SRussell King		bool "Kernel low-level debugging messages via OMAP2/3/4 UART2"
407cce278d2SRussell King		depends on ARCH_OMAP2PLUS
408cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
409cce278d2SRussell King
410cce278d2SRussell King	config DEBUG_OMAP2UART3
411cce278d2SRussell King		bool "Kernel low-level debugging messages via OMAP2 UART3 (n8x0)"
412cce278d2SRussell King		depends on ARCH_OMAP2PLUS
413cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
414cce278d2SRussell King
415cce278d2SRussell King	config DEBUG_OMAP3UART3
416cce278d2SRussell King		bool "Kernel low-level debugging messages via OMAP3 UART3 (most omap3 boards)"
417cce278d2SRussell King		depends on ARCH_OMAP2PLUS
418cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
419cce278d2SRussell King		help
420cce278d2SRussell King		  This covers at least cm_t3x, beagle, crane, devkit8000,
421cce278d2SRussell King		  igep00x0, ldp, n900, n9(50), pandora, overo, touchbook,
422cce278d2SRussell King		  and 3517evm.
423cce278d2SRussell King
424cce278d2SRussell King	config DEBUG_OMAP4UART3
425cce278d2SRussell King		bool "Kernel low-level debugging messages via OMAP4/5 UART3 (omap4 blaze, panda, omap5 sevm)"
426cce278d2SRussell King		depends on ARCH_OMAP2PLUS
427cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
428cce278d2SRussell King
429cce278d2SRussell King	config DEBUG_OMAP3UART4
430cce278d2SRussell King		bool "Kernel low-level debugging messages via OMAP36XX UART4"
431cce278d2SRussell King		depends on ARCH_OMAP2PLUS
432cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
433cce278d2SRussell King
434cce278d2SRussell King	config DEBUG_OMAP4UART4
435cce278d2SRussell King		bool "Kernel low-level debugging messages via OMAP4/5 UART4"
436cce278d2SRussell King		depends on ARCH_OMAP2PLUS
437cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
438cce278d2SRussell King
439cce278d2SRussell King	config DEBUG_TI81XXUART1
440cce278d2SRussell King		bool "Kernel low-level debugging messages via TI81XX UART1 (ti8148evm)"
441cce278d2SRussell King		depends on ARCH_OMAP2PLUS
442cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
443cce278d2SRussell King
444cce278d2SRussell King	config DEBUG_TI81XXUART2
445cce278d2SRussell King		bool "Kernel low-level debugging messages via TI81XX UART2"
446cce278d2SRussell King		depends on ARCH_OMAP2PLUS
447cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
448cce278d2SRussell King
449cce278d2SRussell King	config DEBUG_TI81XXUART3
450cce278d2SRussell King		bool "Kernel low-level debugging messages via TI81XX UART3 (ti8168evm)"
451cce278d2SRussell King		depends on ARCH_OMAP2PLUS
452cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
453cce278d2SRussell King
454cce278d2SRussell King	config DEBUG_AM33XXUART1
455cce278d2SRussell King		bool "Kernel low-level debugging messages via AM33XX UART1"
456cce278d2SRussell King		depends on ARCH_OMAP2PLUS
457cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
458cce278d2SRussell King
459cce278d2SRussell King	config DEBUG_ZOOM_UART
460cce278d2SRussell King		bool "Kernel low-level debugging messages via Zoom2/3 UART"
461cce278d2SRussell King		depends on ARCH_OMAP2PLUS
462cce278d2SRussell King		select DEBUG_OMAP2PLUS_UART
463808b7e07STony Lindgren
46459bba2a9SRob Herring	config DEBUG_PICOXCELL_UART
46559bba2a9SRob Herring		depends on ARCH_PICOXCELL
46659bba2a9SRob Herring		bool "Use PicoXcell UART for low-level debug"
4670b4cccbeSRussell King		select DEBUG_UART_8250
46859bba2a9SRob Herring		help
46959bba2a9SRob Herring		  Say Y here if you want kernel low-level debugging support
47059bba2a9SRob Herring		  on PicoXcell based platforms.
47159bba2a9SRob Herring
4720a43cd3bSHaojian Zhuang	config DEBUG_PXA_UART1
4730a43cd3bSHaojian Zhuang		depends on ARCH_PXA
4740a43cd3bSHaojian Zhuang		bool "Use PXA UART1 for low-level debug"
4754a003647SRussell King		select DEBUG_UART_8250
4760a43cd3bSHaojian Zhuang		help
4770a43cd3bSHaojian Zhuang		  Say Y here if you want kernel low-level debugging support
4780a43cd3bSHaojian Zhuang		  on PXA UART1.
4790a43cd3bSHaojian Zhuang
480e76f4750SRussell King	config DEBUG_REALVIEW_STD_PORT
481e76f4750SRussell King		bool "RealView Default UART"
482e76f4750SRussell King		depends on ARCH_REALVIEW
4835c972af4SRussell King		select DEBUG_UART_PL01X
484e76f4750SRussell King		help
485e76f4750SRussell King		  Say Y here if you want the debug print routines to direct
486e76f4750SRussell King		  their output to the serial port on RealView EB, PB11MP, PBA8
487e76f4750SRussell King		  and PBX platforms.
488e76f4750SRussell King
489e76f4750SRussell King	config DEBUG_REALVIEW_PB1176_PORT
490e76f4750SRussell King		bool "RealView PB1176 UART"
491e76f4750SRussell King		depends on MACH_REALVIEW_PB1176
4925c972af4SRussell King		select DEBUG_UART_PL01X
493e76f4750SRussell King		help
494e76f4750SRussell King		  Say Y here if you want the debug print routines to direct
495e76f4750SRussell King		  their output to the standard serial port on the RealView
496e76f4750SRussell King		  PB1176 platform.
497e76f4750SRussell King
498cce278d2SRussell King	config DEBUG_RK29_UART0
499cce278d2SRussell King		bool "Kernel low-level debugging messages via Rockchip RK29 UART0"
50038bd6892SHeiko Stuebner		depends on ARCH_ROCKCHIP
5014a003647SRussell King		select DEBUG_UART_8250
502cce278d2SRussell King		help
503cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
504cce278d2SRussell King		  on Rockchip based platforms.
505cce278d2SRussell King
506cce278d2SRussell King	config DEBUG_RK29_UART1
507cce278d2SRussell King		bool "Kernel low-level debugging messages via Rockchip RK29 UART1"
508cce278d2SRussell King		depends on ARCH_ROCKCHIP
5094a003647SRussell King		select DEBUG_UART_8250
510cce278d2SRussell King		help
511cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
512cce278d2SRussell King		  on Rockchip based platforms.
513cce278d2SRussell King
514cce278d2SRussell King	config DEBUG_RK29_UART2
515cce278d2SRussell King		bool "Kernel low-level debugging messages via Rockchip RK29 UART2"
516cce278d2SRussell King		depends on ARCH_ROCKCHIP
5174a003647SRussell King		select DEBUG_UART_8250
518cce278d2SRussell King		help
519cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
520cce278d2SRussell King		  on Rockchip based platforms.
521cce278d2SRussell King
522cce278d2SRussell King	config DEBUG_RK3X_UART0
523cce278d2SRussell King		bool "Kernel low-level debugging messages via Rockchip RK3X UART0"
524cce278d2SRussell King		depends on ARCH_ROCKCHIP
5254a003647SRussell King		select DEBUG_UART_8250
526cce278d2SRussell King		help
527cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
528cce278d2SRussell King		  on Rockchip based platforms.
529cce278d2SRussell King
530cce278d2SRussell King	config DEBUG_RK3X_UART1
531cce278d2SRussell King		bool "Kernel low-level debugging messages via Rockchip RK3X UART1"
532cce278d2SRussell King		depends on ARCH_ROCKCHIP
5334a003647SRussell King		select DEBUG_UART_8250
534cce278d2SRussell King		help
535cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
536cce278d2SRussell King		  on Rockchip based platforms.
537cce278d2SRussell King
538cce278d2SRussell King	config DEBUG_RK3X_UART2
539cce278d2SRussell King		bool "Kernel low-level debugging messages via Rockchip RK3X UART2"
540cce278d2SRussell King		depends on ARCH_ROCKCHIP
5414a003647SRussell King		select DEBUG_UART_8250
542cce278d2SRussell King		help
543cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
544cce278d2SRussell King		  on Rockchip based platforms.
545cce278d2SRussell King
546cce278d2SRussell King	config DEBUG_RK3X_UART3
547cce278d2SRussell King		bool "Kernel low-level debugging messages via Rockchip RK3X UART3"
548cce278d2SRussell King		depends on ARCH_ROCKCHIP
5494a003647SRussell King		select DEBUG_UART_8250
55038bd6892SHeiko Stuebner		help
55138bd6892SHeiko Stuebner		  Say Y here if you want kernel low-level debugging support
55238bd6892SHeiko Stuebner		  on Rockchip based platforms.
55338bd6892SHeiko Stuebner
554e76f4750SRussell King	config DEBUG_S3C_UART0
555e76f4750SRussell King		depends on PLAT_SAMSUNG
556a2e40710SArnd Bergmann		select DEBUG_EXYNOS_UART if ARCH_EXYNOS
557e76f4750SRussell King		bool "Use S3C UART 0 for low-level debug"
558e76f4750SRussell King		help
559e76f4750SRussell King		  Say Y here if you want the debug print routines to direct
560e76f4750SRussell King		  their output to UART 0. The port must have been initialised
561e76f4750SRussell King		  by the boot-loader before use.
562e76f4750SRussell King
563e76f4750SRussell King		  The uncompressor code port configuration is now handled
564e76f4750SRussell King		  by CONFIG_S3C_LOWLEVEL_UART_PORT.
565e76f4750SRussell King
566e76f4750SRussell King	config DEBUG_S3C_UART1
567e76f4750SRussell King		depends on PLAT_SAMSUNG
568a2e40710SArnd Bergmann		select DEBUG_EXYNOS_UART if ARCH_EXYNOS
569e76f4750SRussell King		bool "Use S3C UART 1 for low-level debug"
570e76f4750SRussell King		help
571e76f4750SRussell King		  Say Y here if you want the debug print routines to direct
572e76f4750SRussell King		  their output to UART 1. The port must have been initialised
573e76f4750SRussell King		  by the boot-loader before use.
574e76f4750SRussell King
575e76f4750SRussell King		  The uncompressor code port configuration is now handled
576e76f4750SRussell King		  by CONFIG_S3C_LOWLEVEL_UART_PORT.
577e76f4750SRussell King
578e76f4750SRussell King	config DEBUG_S3C_UART2
579e76f4750SRussell King		depends on PLAT_SAMSUNG
580a2e40710SArnd Bergmann		select DEBUG_EXYNOS_UART if ARCH_EXYNOS
581e76f4750SRussell King		bool "Use S3C UART 2 for low-level debug"
582e76f4750SRussell King		help
583e76f4750SRussell King		  Say Y here if you want the debug print routines to direct
584e76f4750SRussell King		  their output to UART 2. The port must have been initialised
585e76f4750SRussell King		  by the boot-loader before use.
586e76f4750SRussell King
587e76f4750SRussell King		  The uncompressor code port configuration is now handled
588e76f4750SRussell King		  by CONFIG_S3C_LOWLEVEL_UART_PORT.
589e76f4750SRussell King
5905fa23ddeSOlof Johansson	config DEBUG_S3C_UART3
5915fa23ddeSOlof Johansson		depends on PLAT_SAMSUNG && ARCH_EXYNOS
592a2e40710SArnd Bergmann		select DEBUG_EXYNOS_UART
5935fa23ddeSOlof Johansson		bool "Use S3C UART 3 for low-level debug"
5945fa23ddeSOlof Johansson		help
5955fa23ddeSOlof Johansson		  Say Y here if you want the debug print routines to direct
5965fa23ddeSOlof Johansson		  their output to UART 3. The port must have been initialised
5975fa23ddeSOlof Johansson		  by the boot-loader before use.
5985fa23ddeSOlof Johansson
5995fa23ddeSOlof Johansson		  The uncompressor code port configuration is now handled
6005fa23ddeSOlof Johansson		  by CONFIG_S3C_LOWLEVEL_UART_PORT.
6015fa23ddeSOlof Johansson
6026111bf7cSRob Herring	config DEBUG_SOCFPGA_UART
6036111bf7cSRob Herring		depends on ARCH_SOCFPGA
6046111bf7cSRob Herring		bool "Use SOCFPGA UART for low-level debug"
6050b4cccbeSRussell King		select DEBUG_UART_8250
6066111bf7cSRob Herring		help
6076111bf7cSRob Herring		  Say Y here if you want kernel low-level debugging support
6086111bf7cSRob Herring		  on SOCFPGA based platforms.
6096111bf7cSRob Herring
610aa25115aSStefan Roese	config DEBUG_SUNXI_UART0
611aa25115aSStefan Roese		bool "Kernel low-level debugging messages via sunXi UART0"
612aa25115aSStefan Roese		depends on ARCH_SUNXI
6134a003647SRussell King		select DEBUG_UART_8250
614aa25115aSStefan Roese		help
615aa25115aSStefan Roese		  Say Y here if you want kernel low-level debugging support
616aa25115aSStefan Roese		  on Allwinner A1X based platforms on the UART0.
617aa25115aSStefan Roese
618cb84fa18SMaxime Ripard	config DEBUG_SUNXI_UART1
619cb84fa18SMaxime Ripard		bool "Kernel low-level debugging messages via sunXi UART1"
620cb84fa18SMaxime Ripard		depends on ARCH_SUNXI
6214a003647SRussell King		select DEBUG_UART_8250
622cb84fa18SMaxime Ripard		help
623cb84fa18SMaxime Ripard		  Say Y here if you want kernel low-level debugging support
624cb84fa18SMaxime Ripard		  on Allwinner A1X based platforms on the UART1.
625cb84fa18SMaxime Ripard
626cce278d2SRussell King	config TEGRA_DEBUG_UART_AUTO_ODMDATA
627cce278d2SRussell King		bool "Kernel low-level debugging messages via Tegra UART via ODMDATA"
62846067803SStephen Warren		depends on ARCH_TEGRA
629cce278d2SRussell King		select DEBUG_TEGRA_UART
630cce278d2SRussell King		help
631cce278d2SRussell King		  Automatically determines which UART to use for low-level
632cce278d2SRussell King		  debug based on the ODMDATA value. This value is part of
633cce278d2SRussell King		  the BCT, and is written to the boot memory device using
634cce278d2SRussell King		  nvflash, or other flashing tool.  When bits 19:18 are 3,
635cce278d2SRussell King		  then bits 17:15 indicate which UART to use; 0/1/2/3/4
636cce278d2SRussell King		  are UART A/B/C/D/E.
637cce278d2SRussell King
638cce278d2SRussell King	config TEGRA_DEBUG_UARTA
639cce278d2SRussell King		bool "Kernel low-level debugging messages via Tegra UART A"
640cce278d2SRussell King		depends on ARCH_TEGRA
641cce278d2SRussell King		select DEBUG_TEGRA_UART
642cce278d2SRussell King		help
643cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
644cce278d2SRussell King		  on Tegra based platforms.
645cce278d2SRussell King
646cce278d2SRussell King	config TEGRA_DEBUG_UARTB
647cce278d2SRussell King		bool "Kernel low-level debugging messages via Tegra UART B"
648cce278d2SRussell King		depends on ARCH_TEGRA
649cce278d2SRussell King		select DEBUG_TEGRA_UART
650cce278d2SRussell King		help
651cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
652cce278d2SRussell King		  on Tegra based platforms.
653cce278d2SRussell King
654cce278d2SRussell King	config TEGRA_DEBUG_UARTC
655cce278d2SRussell King		bool "Kernel low-level debugging messages via Tegra UART C"
656cce278d2SRussell King		depends on ARCH_TEGRA
657cce278d2SRussell King		select DEBUG_TEGRA_UART
658cce278d2SRussell King		help
659cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
660cce278d2SRussell King		  on Tegra based platforms.
661cce278d2SRussell King
662cce278d2SRussell King	config TEGRA_DEBUG_UARTD
663cce278d2SRussell King		bool "Kernel low-level debugging messages via Tegra UART D"
664cce278d2SRussell King		depends on ARCH_TEGRA
665cce278d2SRussell King		select DEBUG_TEGRA_UART
666cce278d2SRussell King		help
667cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
668cce278d2SRussell King		  on Tegra based platforms.
669cce278d2SRussell King
670cce278d2SRussell King	config TEGRA_DEBUG_UARTE
671cce278d2SRussell King		bool "Kernel low-level debugging messages via Tegra UART E"
672cce278d2SRussell King		depends on ARCH_TEGRA
673cce278d2SRussell King		select DEBUG_TEGRA_UART
67446067803SStephen Warren		help
67546067803SStephen Warren		  Say Y here if you want kernel low-level debugging support
67646067803SStephen Warren		  on Tegra based platforms.
67746067803SStephen Warren
6787f46a107SBarry Song	config DEBUG_SIRFPRIMA2_UART1
6797f46a107SBarry Song		bool "Kernel low-level debugging messages via SiRFprimaII UART1"
6807f46a107SBarry Song		depends on ARCH_PRIMA2
6817f46a107SBarry Song		help
6827f46a107SBarry Song		  Say Y here if you want the debug print routines to direct
6837f46a107SBarry Song		  their output to the uart1 port on SiRFprimaII devices.
6847f46a107SBarry Song
6857f46a107SBarry Song	config DEBUG_SIRFMARCO_UART1
6867f46a107SBarry Song		bool "Kernel low-level debugging messages via SiRFmarco UART1"
6877f46a107SBarry Song		depends on ARCH_MARCO
6887f46a107SBarry Song		help
6897f46a107SBarry Song		  Say Y here if you want the debug print routines to direct
6907f46a107SBarry Song		  their output to the uart1 port on SiRFmarco devices.
6917f46a107SBarry Song
692cce278d2SRussell King	config STIH41X_DEBUG_ASC2
693cce278d2SRussell King		bool "Use StiH415/416 ASC2 UART for low-level debug"
6945562b800SArnd Bergmann		depends on ARCH_STI
695cce278d2SRussell King		select DEBUG_STI_UART
6965562b800SArnd Bergmann		help
6975562b800SArnd Bergmann		  Say Y here if you want kernel low-level debugging support
698cce278d2SRussell King		  on STiH415/416 based platforms like b2000, which has
699cce278d2SRussell King		  default UART wired up to ASC2.
700cce278d2SRussell King
701cce278d2SRussell King		  If unsure, say N.
702cce278d2SRussell King
703cce278d2SRussell King	config STIH41X_DEBUG_SBC_ASC1
704cce278d2SRussell King		bool "Use StiH415/416 SBC ASC1 UART for low-level debug"
705cce278d2SRussell King		depends on ARCH_STI
706cce278d2SRussell King		select DEBUG_STI_UART
707cce278d2SRussell King		help
708cce278d2SRussell King		  Say Y here if you want kernel low-level debugging support
709cce278d2SRussell King		  on STiH415/416 based platforms like b2020. which has
710cce278d2SRussell King		  default UART wired up to SBC ASC1.
7115562b800SArnd Bergmann
7125562b800SArnd Bergmann		  If unsure, say N.
7135562b800SArnd Bergmann
714dd324da7SLinus Walleij	config DEBUG_U300_UART
715dd324da7SLinus Walleij		bool "Kernel low-level debugging messages via U300 UART0"
716dd324da7SLinus Walleij		depends on ARCH_U300
7175c972af4SRussell King		select DEBUG_UART_PL01X
718dd324da7SLinus Walleij		help
719dd324da7SLinus Walleij		  Say Y here if you want the debug print routines to direct
720dd324da7SLinus Walleij		  their output to the uart port on U300 devices.
721dd324da7SLinus Walleij
722f87b95ddSLinus Walleij	config DEBUG_UX500_UART
723f87b95ddSLinus Walleij		depends on ARCH_U8500
724f87b95ddSLinus Walleij		bool "Use Ux500 UART for low-level debug"
725f87b95ddSLinus Walleij		help
726f87b95ddSLinus Walleij		  Say Y here if you want kernel low-level debugging support
727f87b95ddSLinus Walleij		  on Ux500 based platforms.
728f87b95ddSLinus Walleij
7291b820eafSPawel Moll	config DEBUG_VEXPRESS_UART0_DETECT
7301b820eafSPawel Moll		bool "Autodetect UART0 on Versatile Express Cortex-A core tiles"
7311b820eafSPawel Moll		depends on ARCH_VEXPRESS && CPU_CP15_MMU
7321b820eafSPawel Moll		help
7331b820eafSPawel Moll		  This option enables a simple heuristic which tries to determine
7341b820eafSPawel Moll		  the motherboard's memory map variant (original or RS1) and then
7351b820eafSPawel Moll		  choose the relevant UART0 base address.
7361b820eafSPawel Moll
7371b820eafSPawel Moll		  Note that this will only work with standard A-class core tiles,
7381b820eafSPawel Moll		  and may fail with non-standard SMM or custom software models.
7391b820eafSPawel Moll
7401b820eafSPawel Moll	config DEBUG_VEXPRESS_UART0_CA9
7411b820eafSPawel Moll		bool "Use PL011 UART0 at 0x10009000 (V2P-CA9 core tile)"
7421b820eafSPawel Moll		depends on ARCH_VEXPRESS
7435c972af4SRussell King		select DEBUG_UART_PL01X
7441b820eafSPawel Moll		help
7451b820eafSPawel Moll		  This option selects UART0 at 0x10009000. Except for custom models,
7461b820eafSPawel Moll		  this applies only to the V2P-CA9 tile.
7471b820eafSPawel Moll
7481b820eafSPawel Moll	config DEBUG_VEXPRESS_UART0_RS1
7491b820eafSPawel Moll		bool "Use PL011 UART0 at 0x1c090000 (RS1 complaint tiles)"
7501b820eafSPawel Moll		depends on ARCH_VEXPRESS
7515c972af4SRussell King		select DEBUG_UART_PL01X
7521b820eafSPawel Moll		help
7531b820eafSPawel Moll		  This option selects UART0 at 0x1c090000. This applies to most
7541b820eafSPawel Moll		  of the tiles using the RS1 memory map, including all new A-class
7551b820eafSPawel Moll		  core tiles, FPGA-based SMMs and software models.
7561b820eafSPawel Moll
757ed18bdc8SJonathan Austin	config DEBUG_VEXPRESS_UART0_CRX
758ed18bdc8SJonathan Austin		bool "Use PL011 UART0 at 0xb0090000 (Cortex-R compliant tiles)"
759ed18bdc8SJonathan Austin		depends on ARCH_VEXPRESS && !MMU
7605c972af4SRussell King		select DEBUG_UART_PL01X
761ed18bdc8SJonathan Austin		help
762ed18bdc8SJonathan Austin		  This option selects UART0 at 0xb0090000. This is appropriate for
763ed18bdc8SJonathan Austin		  Cortex-R series tiles and SMMs, such as Cortex-R5 and Cortex-R7
764ed18bdc8SJonathan Austin
765b61a2722STony Prisk	config DEBUG_VT8500_UART0
766b61a2722STony Prisk		bool "Use UART0 on VIA/Wondermedia SoCs"
767b61a2722STony Prisk		depends on ARCH_VT8500
768b61a2722STony Prisk		help
769b61a2722STony Prisk		  This option selects UART0 on VIA/Wondermedia System-on-a-chip
770b61a2722STony Prisk		  devices, including VT8500, WM8505, WM8650 and WM8850.
771b61a2722STony Prisk
772e76f4750SRussell King	config DEBUG_LL_UART_NONE
773e76f4750SRussell King		bool "No low-level debugging UART"
774387798b3SRob Herring		depends on !ARCH_MULTIPLATFORM
775e76f4750SRussell King		help
776e76f4750SRussell King		  Say Y here if your platform doesn't provide a UART option
777730cc26fSRussell King		  above. This relies on your platform choosing the right UART
778e76f4750SRussell King		  definition internally in order for low-level debugging to
779e76f4750SRussell King		  work.
780e76f4750SRussell King
781e76f4750SRussell King	config DEBUG_ICEDCC
782e76f4750SRussell King		bool "Kernel low-level debugging via EmbeddedICE DCC channel"
783e76f4750SRussell King		help
784e76f4750SRussell King		  Say Y here if you want the debug print routines to direct
785e76f4750SRussell King		  their output to the EmbeddedICE macrocell's DCC channel using
786e76f4750SRussell King		  co-processor 14. This is known to work on the ARM9 style ICE
787e76f4750SRussell King		  channel and on the XScale with the PEEDI.
788e76f4750SRussell King
789e76f4750SRussell King		  Note that the system will appear to hang during boot if there
790e76f4750SRussell King		  is nothing connected to read from the DCC.
791e76f4750SRussell King
792b0df8986SRussell King	config DEBUG_SEMIHOSTING
79362194bdaSStephen Boyd		bool "Kernel low-level debug output via semihosting I/O"
794b0df8986SRussell King		help
795b0df8986SRussell King		  Semihosting enables code running on an ARM target to use
796b0df8986SRussell King		  the I/O facilities on a host debugger/emulator through a
79762194bdaSStephen Boyd		  simple SVC call. The host debugger or emulator must have
798b0df8986SRussell King		  semihosting enabled for the special svc call to be trapped
799b0df8986SRussell King		  otherwise the kernel will crash.
800b0df8986SRussell King
801b0df8986SRussell King		  This is known to work with OpenOCD, as well as
802b0df8986SRussell King		  ARM's Fast Models, or any other controlling environment
803b0df8986SRussell King		  that implements semihosting.
804b0df8986SRussell King
805b0df8986SRussell King		  For more details about semihosting, please see
806b0df8986SRussell King		  chapter 8 of DUI0203I_rvct_developer_guide.pdf from ARM Ltd.
807b0df8986SRussell King
808f8f1279cSRussell King	config DEBUG_LL_UART_8250
809f8f1279cSRussell King		bool "Kernel low-level debugging via 8250 UART"
810f8f1279cSRussell King		help
811f8f1279cSRussell King		  Say Y here if you wish the debug print routes to direct
812f8f1279cSRussell King		  their output to an 8250 UART.  You can use this option
813f8f1279cSRussell King		  to provide the parameters for the 8250 UART rather than
814f8f1279cSRussell King		  selecting one of the platform specific options above if
815f8f1279cSRussell King		  you know the parameters for the port.
816f8f1279cSRussell King
817f8f1279cSRussell King		  This option is preferred over the platform specific
818f8f1279cSRussell King		  options; the platform specific options are deprecated
819f8f1279cSRussell King		  and will be soon removed.
820f8f1279cSRussell King
821f8f1279cSRussell King	config DEBUG_LL_UART_PL01X
822f8f1279cSRussell King		bool "Kernel low-level debugging via ARM Ltd PL01x Primecell UART"
823f8f1279cSRussell King		help
824f8f1279cSRussell King		  Say Y here if you wish the debug print routes to direct
825f8f1279cSRussell King		  their output to a PL01x Primecell UART.  You can use
826f8f1279cSRussell King		  this option to provide the parameters for the UART
827f8f1279cSRussell King		  rather than selecting one of the platform specific
828f8f1279cSRussell King		  options above if you know the parameters for the port.
829f8f1279cSRussell King
830f8f1279cSRussell King		  This option is preferred over the platform specific
831f8f1279cSRussell King		  options; the platform specific options are deprecated
832f8f1279cSRussell King		  and will be soon removed.
833f8f1279cSRussell King
83417916b28SWill Deaconendchoice
83517916b28SWill Deacon
836a2e40710SArnd Bergmannconfig DEBUG_EXYNOS_UART
837a2e40710SArnd Bergmann	bool
838a2e40710SArnd Bergmann
839cce278d2SRussell Kingconfig DEBUG_OMAP2PLUS_UART
840cce278d2SRussell King	bool
841cce278d2SRussell King	depends on ARCH_OMAP2PLUS
842cce278d2SRussell King
843f8c95fe6SShawn Guoconfig DEBUG_IMX_UART_PORT
844f8c95fe6SShawn Guo	int "i.MX Debug UART Port Selection" if DEBUG_IMX1_UART || \
845f8c95fe6SShawn Guo						DEBUG_IMX25_UART || \
846f8c95fe6SShawn Guo						DEBUG_IMX21_IMX27_UART || \
847f8c95fe6SShawn Guo						DEBUG_IMX31_UART || \
848f8c95fe6SShawn Guo						DEBUG_IMX35_UART || \
849f8c95fe6SShawn Guo						DEBUG_IMX51_UART || \
8500c52db7eSPaul Bolle						DEBUG_IMX53_UART || \
85134e8a16bSShawn Guo						DEBUG_IMX6Q_UART || \
85234e8a16bSShawn Guo						DEBUG_IMX6SL_UART
85349c9e60eSShawn Guo	default 1
854287939a3SShawn Guo	depends on ARCH_MXC
85549c9e60eSShawn Guo	help
85649c9e60eSShawn Guo	  Choose UART port on which kernel low-level debug messages
85749c9e60eSShawn Guo	  should be output.
85849c9e60eSShawn Guo
859cce278d2SRussell Kingconfig DEBUG_TEGRA_UART
860cce278d2SRussell King	bool
861cce278d2SRussell King	depends on ARCH_TEGRA
862808b7e07STony Lindgren
863cce278d2SRussell Kingconfig DEBUG_STI_UART
864cce278d2SRussell King	bool
865cce278d2SRussell King	depends on ARCH_STI
8665026aecfSSrinivas Kandagatla
86791a9fec0SRob Herringconfig DEBUG_LL_INCLUDE
86891a9fec0SRob Herring	string
869f8f1279cSRussell King	default "debug/8250.S" if DEBUG_LL_UART_8250 || DEBUG_UART_8250
870f8f1279cSRussell King	default "debug/pl01x.S" if DEBUG_LL_UART_PL01X || DEBUG_UART_PL01X
871a2e40710SArnd Bergmann	default "debug/exynos.S" if DEBUG_EXYNOS_UART
87291a9fec0SRob Herring	default "debug/icedcc.S" if DEBUG_ICEDCC
8736dde5ac5SShawn Guo	default "debug/imx.S" if DEBUG_IMX1_UART || \
8746dde5ac5SShawn Guo				 DEBUG_IMX25_UART || \
8756dde5ac5SShawn Guo				 DEBUG_IMX21_IMX27_UART || \
8764ad625d4SShawn Guo				 DEBUG_IMX31_UART || \
8774ad625d4SShawn Guo				 DEBUG_IMX35_UART || \
8786dde5ac5SShawn Guo				 DEBUG_IMX51_UART || \
8797356420cSFabio Estevam				 DEBUG_IMX53_UART ||\
88034e8a16bSShawn Guo				 DEBUG_IMX6Q_UART || \
88134e8a16bSShawn Guo				 DEBUG_IMX6SL_UART
882808b7e07STony Lindgren	default "debug/omap2plus.S" if DEBUG_OMAP2PLUS_UART
88367bdb287SArnd Bergmann	default "debug/sirf.S" if DEBUG_SIRFPRIMA2_UART1 || DEBUG_SIRFMARCO_UART1
8845026aecfSSrinivas Kandagatla	default "debug/sti.S" if DEBUG_STI_UART
885150a8dcfSLinus Torvalds	default "debug/tegra.S" if DEBUG_TEGRA_UART
886150a8dcfSLinus Torvalds	default "debug/ux500.S" if DEBUG_UX500_UART
8874e218b99SRussell King	default "debug/vexpress.S" if DEBUG_VEXPRESS_UART0_DETECT
888b61a2722STony Prisk	default "debug/vt8500.S" if DEBUG_VT8500_UART0
889385f02b1SJosh Cartwright	default "debug/zynq.S" if DEBUG_ZYNQ_UART0 || DEBUG_ZYNQ_UART1
89091a9fec0SRob Herring	default "mach/debug-macro.S"
89191a9fec0SRob Herring
892f8f1279cSRussell King# Compatibility options for PL01x
8935c972af4SRussell Kingconfig DEBUG_UART_PL01X
8945c972af4SRussell King	def_bool ARCH_EP93XX || \
8955c972af4SRussell King		ARCH_INTEGRATOR || \
8960dc0e475SRussell King		ARCH_SPEAR3XX || \
8970dc0e475SRussell King		ARCH_SPEAR6XX || \
8980dc0e475SRussell King		ARCH_SPEAR13XX || \
8995c972af4SRussell King		ARCH_VERSATILE
9005c972af4SRussell King
901f8f1279cSRussell King# Compatibility options for 8250
9027610b607SRussell Kingconfig DEBUG_UART_8250
9034a003647SRussell King	def_bool ARCH_DOVE || ARCH_EBSA110 || \
9044a003647SRussell King		(FOOTBRIDGE && !DEBUG_DC21285_PORT) || \
9054a003647SRussell King		ARCH_GEMINI || ARCH_IOP13XX || ARCH_IOP32X || \
9064a003647SRussell King		ARCH_IOP33X || ARCH_IXP4XX || ARCH_KIRKWOOD || \
9074a003647SRussell King		ARCH_LPC32XX || ARCH_MV78XX0 || ARCH_ORION5X || ARCH_RPC
9084a003647SRussell King
909c3faa9b7SRussell Kingconfig DEBUG_UART_PHYS
910c3faa9b7SRussell King	hex "Physical base address of debug UART"
91197bd1a48SRussell King	default 0x01c20000 if DEBUG_DAVINCI_DMx_UART0
912c3faa9b7SRussell King	default 0x01c28000 if DEBUG_SUNXI_UART0
913c3faa9b7SRussell King	default 0x01c28400 if DEBUG_SUNXI_UART1
91497bd1a48SRussell King	default 0x01d0c000 if DEBUG_DAVINCI_DA8XX_UART1
91597bd1a48SRussell King	default 0x01d0d000 if DEBUG_DAVINCI_DA8XX_UART2
916f2acf003SRussell King	default 0x02530c00 if DEBUG_KEYSTONE_UART0
917f2acf003SRussell King	default 0x02531000 if DEBUG_KEYSTONE_UART1
918c3faa9b7SRussell King	default 0x03010fe0 if ARCH_RPC
91997bd1a48SRussell King	default 0x08108300 if DEBUG_DAVINCI_TNETV107X_UART1
9205c972af4SRussell King	default 0x10009000 if DEBUG_REALVIEW_STD_PORT || DEBUG_CNS3XXX || \
9215c972af4SRussell King				DEBUG_VEXPRESS_UART0_CA9
9225c972af4SRussell King	default 0x1010c000 if DEBUG_REALVIEW_PB1176_PORT
923c3faa9b7SRussell King	default 0x10124000 if DEBUG_RK3X_UART0
924c3faa9b7SRussell King	default 0x10126000 if DEBUG_RK3X_UART1
9255c972af4SRussell King	default 0x101f1000 if ARCH_VERSATILE
9265c972af4SRussell King	default 0x101fb000 if DEBUG_NOMADIK_UART
9275c972af4SRussell King	default 0x16000000 if ARCH_INTEGRATOR
9285c972af4SRussell King	default 0x1c090000 if DEBUG_VEXPRESS_UART0_RS1
929c3faa9b7SRussell King	default 0x20060000 if DEBUG_RK29_UART0
930c3faa9b7SRussell King	default 0x20064000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
931c3faa9b7SRussell King	default 0x20068000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
9325c972af4SRussell King	default 0x20201000 if DEBUG_BCM2835
933c3faa9b7SRussell King	default 0x40090000 if ARCH_LPC32XX
934c3faa9b7SRussell King	default 0x40100000 if DEBUG_PXA_UART1
935c3faa9b7SRussell King	default 0x42000000 if ARCH_GEMINI
936c3faa9b7SRussell King	default 0x7c0003f8 if FOOTBRIDGE
9370b4cccbeSRussell King	default 0x80230000 if DEBUG_PICOXCELL_UART
9385c972af4SRussell King	default 0x80070000 if DEBUG_IMX23_UART
9395c972af4SRussell King	default 0x80074000 if DEBUG_IMX28_UART
9405c972af4SRussell King	default 0x808c0000 if ARCH_EP93XX
9415c972af4SRussell King	default 0x90020000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART
9425c972af4SRussell King	default 0xb0090000 if DEBUG_VEXPRESS_UART0_CRX
9435c972af4SRussell King	default 0xc0013000 if DEBUG_U300_UART
944c3faa9b7SRussell King	default 0xc8000000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
945c3faa9b7SRussell King	default 0xc8000003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
9460dc0e475SRussell King	default 0xd0000000 if ARCH_SPEAR3XX || ARCH_SPEAR6XX
947c3faa9b7SRussell King	default 0xd0012000 if DEBUG_MVEBU_UART
948c3faa9b7SRussell King	default 0xd4017000 if DEBUG_MMP_UART2
949c3faa9b7SRussell King	default 0xd4018000 if DEBUG_MMP_UART3
9500dc0e475SRussell King	default 0xe0000000 if ARCH_SPEAR13XX
951c3faa9b7SRussell King	default 0xf0000be0 if ARCH_EBSA110
952c3faa9b7SRussell King	default 0xf1012000 if DEBUG_MVEBU_UART_ALTERNATE
953c3faa9b7SRussell King	default 0xf1012000 if ARCH_DOVE || ARCH_KIRKWOOD || ARCH_MV78XX0 || \
954c3faa9b7SRussell King				ARCH_ORION5X
955c3faa9b7SRussell King	default 0xfe800000 if ARCH_IOP32X
9560b4cccbeSRussell King	default 0xffc02000 if DEBUG_SOCFPGA_UART
957c3faa9b7SRussell King	default 0xffd82340 if ARCH_IOP13XX
9585c972af4SRussell King	default 0xfff36000 if DEBUG_HIGHBANK_UART
959c3faa9b7SRussell King	default 0xfffff700 if ARCH_IOP33X
960f8f1279cSRussell King	depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
961f8f1279cSRussell King		DEBUG_UART_8250 || DEBUG_UART_PL01X
962c3faa9b7SRussell King
963c3faa9b7SRussell Kingconfig DEBUG_UART_VIRT
964c3faa9b7SRussell King	hex "Virtual base address of debug UART"
965c3faa9b7SRussell King	default 0xe0010fe0 if ARCH_RPC
966c3faa9b7SRussell King	default 0xf0000be0 if ARCH_EBSA110
9675c972af4SRussell King	default 0xf0009000 if DEBUG_CNS3XXX
9685c972af4SRussell King	default 0xf01fb000 if DEBUG_NOMADIK_UART
9695c972af4SRussell King	default 0xf0201000 if DEBUG_BCM2835
9705c972af4SRussell King	default 0xf11f1000 if ARCH_VERSATILE
9715c972af4SRussell King	default 0xf1600000 if ARCH_INTEGRATOR
972c3faa9b7SRussell King	default 0xf1c28000 if DEBUG_SUNXI_UART0
973c3faa9b7SRussell King	default 0xf1c28400 if DEBUG_SUNXI_UART1
974c3faa9b7SRussell King	default 0xf2100000 if DEBUG_PXA_UART1
975c3faa9b7SRussell King	default 0xf4090000 if ARCH_LPC32XX
976c3faa9b7SRussell King	default 0xf4200000 if ARCH_GEMINI
9775c972af4SRussell King	default 0xf8009000 if DEBUG_VEXPRESS_UART0_CA9
9785c972af4SRussell King	default 0xf8090000 if DEBUG_VEXPRESS_UART0_RS1
9795c972af4SRussell King	default 0xfb009000 if DEBUG_REALVIEW_STD_PORT
9805c972af4SRussell King	default 0xfb10c000 if DEBUG_REALVIEW_PB1176_PORT
9810dc0e475SRussell King	default 0xfd000000 if ARCH_SPEAR3XX || ARCH_SPEAR6XX
9820dc0e475SRussell King	default 0xfd000000 if ARCH_SPEAR13XX
983c3faa9b7SRussell King	default 0xfd012000 if ARCH_MV78XX0
984c3faa9b7SRussell King	default 0xfde12000 if ARCH_DOVE
985c3faa9b7SRussell King	default 0xfe012000 if ARCH_ORION5X
986c3faa9b7SRussell King	default 0xfe017000 if DEBUG_MMP_UART2
987c3faa9b7SRussell King	default 0xfe018000 if DEBUG_MMP_UART3
9885c972af4SRussell King	default 0xfe100000 if DEBUG_IMX23_UART || DEBUG_IMX28_UART
9890b4cccbeSRussell King	default 0xfe230000 if DEBUG_PICOXCELL_UART
990c3faa9b7SRussell King	default 0xfe800000 if ARCH_IOP32X
991c3faa9b7SRussell King	default 0xfeb24000 if DEBUG_RK3X_UART0
992c3faa9b7SRussell King	default 0xfeb26000 if DEBUG_RK3X_UART1
993f2acf003SRussell King	default 0xfeb30c00 if DEBUG_KEYSTONE_UART0
994f2acf003SRussell King	default 0xfeb31000 if DEBUG_KEYSTONE_UART1
995c3faa9b7SRussell King	default 0xfec12000 if DEBUG_MVEBU_UART || DEBUG_MVEBU_UART_ALTERNATE
996c3faa9b7SRussell King	default 0xfed60000 if DEBUG_RK29_UART0
997c3faa9b7SRussell King	default 0xfed64000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
998c3faa9b7SRussell King	default 0xfed68000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
9990b4cccbeSRussell King	default 0xfec02000 if DEBUG_SOCFPGA_UART
100097bd1a48SRussell King	default 0xfec20000 if DEBUG_DAVINCI_DMx_UART0
100197bd1a48SRussell King	default 0xfed0c000 if DEBUG_DAVINCI_DA8XX_UART1
100297bd1a48SRussell King	default 0xfed0d000 if DEBUG_DAVINCI_DA8XX_UART2
1003c3faa9b7SRussell King	default 0xfed12000 if ARCH_KIRKWOOD
10045c972af4SRussell King	default 0xfedc0000 if ARCH_EP93XX
1005c3faa9b7SRussell King	default 0xfee003f8 if FOOTBRIDGE
100697bd1a48SRussell King	default 0xfee08300 if DEBUG_DAVINCI_TNETV107X_UART1
10075c972af4SRussell King	default 0xfee20000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART
1008*5927c4dfSRob Herring	default 0xfef36000 if DEBUG_HIGHBANK_UART
1009c3faa9b7SRussell King	default 0xfee82340 if ARCH_IOP13XX
1010c3faa9b7SRussell King	default 0xfef00000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
1011c3faa9b7SRussell King	default 0xfef00003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
1012c3faa9b7SRussell King	default 0xfefff700 if ARCH_IOP33X
10135c972af4SRussell King	default 0xff003000 if DEBUG_U300_UART
10145c972af4SRussell King	default DEBUG_UART_PHYS if !MMU
1015f8f1279cSRussell King	depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
1016f8f1279cSRussell King		DEBUG_UART_8250 || DEBUG_UART_PL01X
1017c3faa9b7SRussell King
10184a003647SRussell Kingconfig DEBUG_UART_8250_SHIFT
10194a003647SRussell King	int "Register offset shift for the 8250 debug UART"
1020f8f1279cSRussell King	depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
10214a003647SRussell King	default 0 if FOOTBRIDGE || ARCH_IOP32X
10224a003647SRussell King	default 2
10237610b607SRussell King
10240b4cccbeSRussell Kingconfig DEBUG_UART_8250_WORD
10250b4cccbeSRussell King	bool "Use 32-bit accesses for 8250 UART"
1026f8f1279cSRussell King	depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
10270b4cccbeSRussell King	depends on DEBUG_UART_8250_SHIFT >= 2
1028f2acf003SRussell King	default y if DEBUG_PICOXCELL_UART || DEBUG_SOCFPGA_UART || \
102997bd1a48SRussell King		ARCH_KEYSTONE || \
103097bd1a48SRussell King		DEBUG_DAVINCI_DMx_UART0 || DEBUG_DAVINCI_DA8XX_UART1 || \
103197bd1a48SRussell King		DEBUG_DAVINCI_DA8XX_UART2 || DEBUG_DAVINCI_TNETV107X_UART1
10320b4cccbeSRussell King
10337610b607SRussell Kingconfig DEBUG_UART_8250_FLOW_CONTROL
10347610b607SRussell King	bool "Enable flow control for 8250 UART"
1035f8f1279cSRussell King	depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
10367610b607SRussell King	default y if ARCH_EBSA110 || FOOTBRIDGE || ARCH_GEMINI || ARCH_RPC
10377610b607SRussell King
10383b4af9bcSShawn Guoconfig DEBUG_UNCOMPRESS
10393b4af9bcSShawn Guo	bool
1040b6992fa9SRussell King	depends on ARCH_MULTIPLATFORM
1041b6992fa9SRussell King	default y if DEBUG_LL && !DEBUG_OMAP2PLUS_UART && \
1042ae3c99a2SStephen Warren		     (!DEBUG_TEGRA_UART || !ZBOOT_ROM)
1043b6992fa9SRussell King	help
1044b6992fa9SRussell King	  This option influences the normal decompressor output for
1045b6992fa9SRussell King	  multiplatform kernels.  Normally, multiplatform kernels disable
1046b6992fa9SRussell King	  decompressor output because it is not possible to know where to
1047b6992fa9SRussell King	  send the decompressor output.
1048b6992fa9SRussell King
1049b6992fa9SRussell King	  When this option is set, the selected DEBUG_LL output method
1050b6992fa9SRussell King	  will be re-used for normal decompressor output on multiplatform
1051b6992fa9SRussell King	  kernels.
1052b6992fa9SRussell King
10533b4af9bcSShawn Guo
1054615967b0SShawn Guoconfig UNCOMPRESS_INCLUDE
1055615967b0SShawn Guo	string
1056615967b0SShawn Guo	default "debug/uncompress.h" if ARCH_MULTIPLATFORM
1057615967b0SShawn Guo	default "mach/uncompress.h"
1058615967b0SShawn Guo
105993fd03a8SCatalin Marinasconfig EARLY_PRINTK
106093fd03a8SCatalin Marinas	bool "Early printk"
106193fd03a8SCatalin Marinas	depends on DEBUG_LL
106293fd03a8SCatalin Marinas	help
106393fd03a8SCatalin Marinas	  Say Y here if you want to have an early console using the
106493fd03a8SCatalin Marinas	  kernel low-level debugging functions. Add earlyprintk to your
106593fd03a8SCatalin Marinas	  kernel parameters to enable this console.
106693fd03a8SCatalin Marinas
1067c5d6c770SAlexander Shishkinconfig OC_ETM
1068c5d6c770SAlexander Shishkin	bool "On-chip ETM and ETB"
106953eebb0dSArnd Bergmann	depends on ARM_AMBA
1070c5d6c770SAlexander Shishkin	help
1071c5d6c770SAlexander Shishkin	  Enables the on-chip embedded trace macrocell and embedded trace
1072c5d6c770SAlexander Shishkin	  buffer driver that will allow you to collect traces of the
1073c5d6c770SAlexander Shishkin	  kernel code.
1074c5d6c770SAlexander Shishkin
10754189bc71SJon Medhurstconfig ARM_KPROBES_TEST
10764189bc71SJon Medhurst	tristate "Kprobes test module"
10774189bc71SJon Medhurst	depends on KPROBES && MODULES
10784189bc71SJon Medhurst	help
10794189bc71SJon Medhurst	  Perform tests of kprobes API and instruction set simulation.
10804189bc71SJon Medhurst
1081575320d6SWill Deaconconfig PID_IN_CONTEXTIDR
1082575320d6SWill Deacon	bool "Write the current PID to the CONTEXTIDR register"
1083575320d6SWill Deacon	depends on CPU_COPY_V6
1084575320d6SWill Deacon	help
1085575320d6SWill Deacon	  Enabling this option causes the kernel to write the current PID to
1086575320d6SWill Deacon	  the PROCID field of the CONTEXTIDR register, at the expense of some
1087575320d6SWill Deacon	  additional instructions during context switch. Say Y here only if you
1088575320d6SWill Deacon	  are planning to use hardware trace tools with this kernel.
1089575320d6SWill Deacon
10901da177e4SLinus Torvaldsendmenu
1091