Kconfig.debug 43 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334
  1. menu "Kernel hacking"
  2. source "lib/Kconfig.debug"
  3. config ARM_PTDUMP
  4. bool "Export kernel pagetable layout to userspace via debugfs"
  5. depends on DEBUG_KERNEL
  6. select DEBUG_FS
  7. ---help---
  8. Say Y here if you want to show the kernel pagetable layout in a
  9. debugfs file. This information is only useful for kernel developers
  10. who are working in architecture specific areas of the kernel.
  11. It is probably not a good idea to enable this feature in a production
  12. kernel.
  13. If in doubt, say "N"
  14. config STRICT_DEVMEM
  15. bool "Filter access to /dev/mem"
  16. depends on MMU
  17. ---help---
  18. If this option is disabled, you allow userspace (root) access to all
  19. of memory, including kernel and userspace memory. Accidental
  20. access to this is obviously disastrous, but specific access can
  21. be used by people debugging the kernel.
  22. If this option is switched on, the /dev/mem file only allows
  23. userspace access to memory mapped peripherals.
  24. If in doubt, say Y.
  25. # RMK wants arm kernels compiled with frame pointers or stack unwinding.
  26. # If you know what you are doing and are willing to live without stack
  27. # traces, you can get a slightly smaller kernel by setting this option to
  28. # n, but then RMK will have to kill you ;).
  29. config FRAME_POINTER
  30. bool
  31. depends on !THUMB2_KERNEL
  32. default y if !ARM_UNWIND || FUNCTION_GRAPH_TRACER
  33. help
  34. If you say N here, the resulting kernel will be slightly smaller and
  35. faster. However, if neither FRAME_POINTER nor ARM_UNWIND are enabled,
  36. when a problem occurs with the kernel, the information that is
  37. reported is severely limited.
  38. config ARM_UNWIND
  39. bool "Enable stack unwinding support (EXPERIMENTAL)"
  40. depends on AEABI
  41. default y
  42. help
  43. This option enables stack unwinding support in the kernel
  44. using the information automatically generated by the
  45. compiler. The resulting kernel image is slightly bigger but
  46. the performance is not affected. Currently, this feature
  47. only works with EABI compilers. If unsure say Y.
  48. config OLD_MCOUNT
  49. bool
  50. depends on FUNCTION_TRACER && FRAME_POINTER
  51. default y
  52. config DEBUG_USER
  53. bool "Verbose user fault messages"
  54. help
  55. When a user program crashes due to an exception, the kernel can
  56. print a brief message explaining what the problem was. This is
  57. sometimes helpful for debugging but serves no purpose on a
  58. production system. Most people should say N here.
  59. In addition, you need to pass user_debug=N on the kernel command
  60. line to enable this feature. N consists of the sum of:
  61. 1 - undefined instruction events
  62. 2 - system calls
  63. 4 - invalid data aborts
  64. 8 - SIGSEGV faults
  65. 16 - SIGBUS faults
  66. # These options are only for real kernel hackers who want to get their hands dirty.
  67. config DEBUG_LL
  68. bool "Kernel low-level debugging functions (read help!)"
  69. depends on DEBUG_KERNEL
  70. help
  71. Say Y here to include definitions of printascii, printch, printhex
  72. in the kernel. This is helpful if you are debugging code that
  73. executes before the console is initialized.
  74. Note that selecting this option will limit the kernel to a single
  75. UART definition, as specified below. Attempting to boot the kernel
  76. image on a different platform *will not work*, so this option should
  77. not be enabled for kernels that are intended to be portable.
  78. choice
  79. prompt "Kernel low-level debugging port"
  80. depends on DEBUG_LL
  81. config AT91_DEBUG_LL_DBGU0
  82. bool "Kernel low-level debugging on rm9200, 9260/9g20, 9261/9g10 and 9rl"
  83. depends on HAVE_AT91_DBGU0
  84. config AT91_DEBUG_LL_DBGU1
  85. bool "Kernel low-level debugging on 9263 and 9g45"
  86. depends on HAVE_AT91_DBGU1
  87. config AT91_DEBUG_LL_DBGU2
  88. bool "Kernel low-level debugging on sama5d4"
  89. depends on HAVE_AT91_DBGU2
  90. config DEBUG_BCM2835
  91. bool "Kernel low-level debugging on BCM2835 PL011 UART"
  92. depends on ARCH_BCM2835
  93. select DEBUG_UART_PL01X
  94. config DEBUG_BCM_5301X
  95. bool "Kernel low-level debugging on BCM5301X UART1"
  96. depends on ARCH_BCM_5301X
  97. select DEBUG_UART_PL01X
  98. config DEBUG_BCM_KONA_UART
  99. bool "Kernel low-level debugging messages via BCM KONA UART"
  100. depends on ARCH_BCM_MOBILE
  101. select DEBUG_UART_8250
  102. help
  103. Say Y here if you want kernel low-level debugging support
  104. on Broadcom SoC platforms.
  105. This low level debug works for Broadcom
  106. mobile SoCs in the Kona family of chips (e.g. bcm28155,
  107. bcm11351, etc...)
  108. config DEBUG_BCM63XX
  109. bool "Kernel low-level debugging on BCM63XX UART"
  110. depends on ARCH_BCM_63XX
  111. select DEBUG_UART_BCM63XX
  112. config DEBUG_BERLIN_UART
  113. bool "Marvell Berlin SoC Debug UART"
  114. depends on ARCH_BERLIN
  115. select DEBUG_UART_8250
  116. help
  117. Say Y here if you want kernel low-level debugging support
  118. on Marvell Berlin SoC based platforms.
  119. config DEBUG_CLPS711X_UART1
  120. bool "Kernel low-level debugging messages via UART1"
  121. depends on ARCH_CLPS711X
  122. help
  123. Say Y here if you want the debug print routines to direct
  124. their output to the first serial port on these devices.
  125. config DEBUG_CLPS711X_UART2
  126. bool "Kernel low-level debugging messages via UART2"
  127. depends on ARCH_CLPS711X
  128. help
  129. Say Y here if you want the debug print routines to direct
  130. their output to the second serial port on these devices.
  131. config DEBUG_CNS3XXX
  132. bool "Kernel Kernel low-level debugging on Cavium Networks CNS3xxx"
  133. depends on ARCH_CNS3XXX
  134. select DEBUG_UART_8250
  135. help
  136. Say Y here if you want the debug print routines to direct
  137. their output to the CNS3xxx UART0.
  138. config DEBUG_DAVINCI_DA8XX_UART1
  139. bool "Kernel low-level debugging on DaVinci DA8XX using UART1"
  140. depends on ARCH_DAVINCI_DA8XX
  141. select DEBUG_UART_8250
  142. help
  143. Say Y here if you want the debug print routines to direct
  144. their output to UART1 serial port on DaVinci DA8XX devices.
  145. config DEBUG_DAVINCI_DA8XX_UART2
  146. bool "Kernel low-level debugging on DaVinci DA8XX using UART2"
  147. depends on ARCH_DAVINCI_DA8XX
  148. select DEBUG_UART_8250
  149. help
  150. Say Y here if you want the debug print routines to direct
  151. their output to UART2 serial port on DaVinci DA8XX devices.
  152. config DEBUG_DAVINCI_DMx_UART0
  153. bool "Kernel low-level debugging on DaVinci DMx using UART0"
  154. depends on ARCH_DAVINCI_DMx
  155. select DEBUG_UART_8250
  156. help
  157. Say Y here if you want the debug print routines to direct
  158. their output to UART0 serial port on DaVinci DMx devices.
  159. config DEBUG_ZYNQ_UART0
  160. bool "Kernel low-level debugging on Xilinx Zynq using UART0"
  161. depends on ARCH_ZYNQ
  162. help
  163. Say Y here if you want the debug print routines to direct
  164. their output to UART0 on the Zynq platform.
  165. config DEBUG_ZYNQ_UART1
  166. bool "Kernel low-level debugging on Xilinx Zynq using UART1"
  167. depends on ARCH_ZYNQ
  168. help
  169. Say Y here if you want the debug print routines to direct
  170. their output to UART1 on the Zynq platform.
  171. If you have a ZC702 board and want early boot messages to
  172. appear on the USB serial adaptor, select this option.
  173. config DEBUG_DC21285_PORT
  174. bool "Kernel low-level debugging messages via footbridge serial port"
  175. depends on FOOTBRIDGE
  176. help
  177. Say Y here if you want the debug print routines to direct
  178. their output to the serial port in the DC21285 (Footbridge).
  179. config DEBUG_FOOTBRIDGE_COM1
  180. bool "Kernel low-level debugging messages via footbridge 8250 at PCI COM1"
  181. depends on FOOTBRIDGE
  182. help
  183. Say Y here if you want the debug print routines to direct
  184. their output to the 8250 at PCI COM1.
  185. config DEBUG_HI3620_UART
  186. bool "Hisilicon HI3620 Debug UART"
  187. depends on ARCH_HI3xxx
  188. select DEBUG_UART_PL01X
  189. help
  190. Say Y here if you want kernel low-level debugging support
  191. on HI3620 UART.
  192. config DEBUG_HI3716_UART
  193. bool "Hisilicon Hi3716 Debug UART"
  194. depends on ARCH_HI3xxx
  195. select DEBUG_UART_PL01X
  196. help
  197. Say Y here if you want kernel low-level debugging support
  198. on HI3716 UART.
  199. config DEBUG_HIGHBANK_UART
  200. bool "Kernel low-level debugging messages via Highbank UART"
  201. depends on ARCH_HIGHBANK
  202. select DEBUG_UART_PL01X
  203. help
  204. Say Y here if you want the debug print routines to direct
  205. their output to the UART on Highbank based devices.
  206. config DEBUG_HIP04_UART
  207. bool "Hisilicon HiP04 Debug UART"
  208. depends on ARCH_HIP04
  209. select DEBUG_UART_8250
  210. help
  211. Say Y here if you want kernel low-level debugging support
  212. on HIP04 UART.
  213. config DEBUG_HIX5HD2_UART
  214. bool "Hisilicon Hix5hd2 Debug UART"
  215. depends on ARCH_HIX5HD2
  216. select DEBUG_UART_PL01X
  217. help
  218. Say Y here if you want kernel low-level debugging support
  219. on Hix5hd2 UART.
  220. config DEBUG_IMX1_UART
  221. bool "i.MX1 Debug UART"
  222. depends on SOC_IMX1
  223. help
  224. Say Y here if you want kernel low-level debugging support
  225. on i.MX1.
  226. config DEBUG_IMX23_UART
  227. bool "i.MX23 Debug UART"
  228. depends on SOC_IMX23
  229. select DEBUG_UART_PL01X
  230. help
  231. Say Y here if you want kernel low-level debugging support
  232. on i.MX23.
  233. config DEBUG_IMX25_UART
  234. bool "i.MX25 Debug UART"
  235. depends on SOC_IMX25
  236. help
  237. Say Y here if you want kernel low-level debugging support
  238. on i.MX25.
  239. config DEBUG_IMX21_IMX27_UART
  240. bool "i.MX21 and i.MX27 Debug UART"
  241. depends on SOC_IMX21 || SOC_IMX27
  242. help
  243. Say Y here if you want kernel low-level debugging support
  244. on i.MX21 or i.MX27.
  245. config DEBUG_IMX28_UART
  246. bool "i.MX28 Debug UART"
  247. depends on SOC_IMX28
  248. select DEBUG_UART_PL01X
  249. help
  250. Say Y here if you want kernel low-level debugging support
  251. on i.MX28.
  252. config DEBUG_IMX31_UART
  253. bool "i.MX31 Debug UART"
  254. depends on SOC_IMX31
  255. help
  256. Say Y here if you want kernel low-level debugging support
  257. on i.MX31.
  258. config DEBUG_IMX35_UART
  259. bool "i.MX35 Debug UART"
  260. depends on SOC_IMX35
  261. help
  262. Say Y here if you want kernel low-level debugging support
  263. on i.MX35.
  264. config DEBUG_IMX50_UART
  265. bool "i.MX50 Debug UART"
  266. depends on SOC_IMX50
  267. help
  268. Say Y here if you want kernel low-level debugging support
  269. on i.MX50.
  270. config DEBUG_IMX51_UART
  271. bool "i.MX51 Debug UART"
  272. depends on SOC_IMX51
  273. help
  274. Say Y here if you want kernel low-level debugging support
  275. on i.MX51.
  276. config DEBUG_IMX53_UART
  277. bool "i.MX53 Debug UART"
  278. depends on SOC_IMX53
  279. help
  280. Say Y here if you want kernel low-level debugging support
  281. on i.MX53.
  282. config DEBUG_IMX6Q_UART
  283. bool "i.MX6Q/DL Debug UART"
  284. depends on SOC_IMX6Q
  285. help
  286. Say Y here if you want kernel low-level debugging support
  287. on i.MX6Q/DL.
  288. config DEBUG_IMX6SL_UART
  289. bool "i.MX6SL Debug UART"
  290. depends on SOC_IMX6SL
  291. help
  292. Say Y here if you want kernel low-level debugging support
  293. on i.MX6SL.
  294. config DEBUG_IMX6SX_UART
  295. bool "i.MX6SX Debug UART"
  296. depends on SOC_IMX6SX
  297. help
  298. Say Y here if you want kernel low-level debugging support
  299. on i.MX6SX.
  300. config DEBUG_KEYSTONE_UART0
  301. bool "Kernel low-level debugging on KEYSTONE2 using UART0"
  302. depends on ARCH_KEYSTONE
  303. select DEBUG_UART_8250
  304. help
  305. Say Y here if you want the debug print routines to direct
  306. their output to UART0 serial port on KEYSTONE2 devices.
  307. config DEBUG_KEYSTONE_UART1
  308. bool "Kernel low-level debugging on KEYSTONE2 using UART1"
  309. depends on ARCH_KEYSTONE
  310. select DEBUG_UART_8250
  311. help
  312. Say Y here if you want the debug print routines to direct
  313. their output to UART1 serial port on KEYSTONE2 devices.
  314. config DEBUG_MESON_UARTAO
  315. bool "Kernel low-level debugging via Meson6 UARTAO"
  316. depends on ARCH_MESON
  317. help
  318. Say Y here if you want kernel low-lever debugging support
  319. on Amlogic Meson6 based platforms on the UARTAO.
  320. config DEBUG_MMP_UART2
  321. bool "Kernel low-level debugging message via MMP UART2"
  322. depends on ARCH_MMP
  323. select DEBUG_UART_8250
  324. help
  325. Say Y here if you want kernel low-level debugging support
  326. on MMP UART2.
  327. config DEBUG_MMP_UART3
  328. bool "Kernel low-level debugging message via MMP UART3"
  329. depends on ARCH_MMP
  330. select DEBUG_UART_8250
  331. help
  332. Say Y here if you want kernel low-level debugging support
  333. on MMP UART3.
  334. config DEBUG_MSM_UART
  335. bool "Kernel low-level debugging messages via MSM UART"
  336. depends on ARCH_MSM
  337. help
  338. Say Y here if you want the debug print routines to direct
  339. their output to the serial port on MSM devices.
  340. ARCH DEBUG_UART_PHYS DEBUG_UART_BASE #
  341. MSM7X00A, QSD8X50 0xa9a00000 0xe1000000 UART1
  342. MSM7X00A, QSD8X50 0xa9b00000 0xe1000000 UART2
  343. MSM7X00A, QSD8X50 0xa9c00000 0xe1000000 UART3
  344. MSM7X30 0xaca00000 0xe1000000 UART1
  345. MSM7X30 0xacb00000 0xe1000000 UART2
  346. MSM7X30 0xacc00000 0xe1000000 UART3
  347. Please adjust DEBUG_UART_PHYS and DEBUG_UART_BASE configuration
  348. options based on your needs.
  349. config DEBUG_QCOM_UARTDM
  350. bool "Kernel low-level debugging messages via QCOM UARTDM"
  351. depends on ARCH_QCOM
  352. help
  353. Say Y here if you want the debug print routines to direct
  354. their output to the serial port on Qualcomm devices.
  355. ARCH DEBUG_UART_PHYS DEBUG_UART_BASE
  356. APQ8084 0xf995e000 0xfa75e000
  357. MSM8X60 0x19c40000 0xf0040000
  358. MSM8960 0x16440000 0xf0040000
  359. MSM8974 0xf991e000 0xfa71e000
  360. Please adjust DEBUG_UART_PHYS and DEBUG_UART_BASE configuration
  361. options based on your needs.
  362. config DEBUG_MVEBU_UART
  363. bool "Kernel low-level debugging messages via MVEBU UART (old bootloaders)"
  364. depends on ARCH_MVEBU
  365. select DEBUG_UART_8250
  366. help
  367. Say Y here if you want kernel low-level debugging support
  368. on MVEBU based platforms.
  369. This option should be used with the old bootloaders
  370. that left the internal registers mapped at
  371. 0xd0000000. As of today, this is the case on
  372. platforms such as the Globalscale Mirabox or the
  373. Plathome OpenBlocks AX3, when using the original
  374. bootloader.
  375. If the wrong DEBUG_MVEBU_UART* option is selected,
  376. when u-boot hands over to the kernel, the system
  377. silently crashes, with no serial output at all.
  378. config DEBUG_MVEBU_UART_ALTERNATE
  379. bool "Kernel low-level debugging messages via MVEBU UART (new bootloaders)"
  380. depends on ARCH_MVEBU
  381. select DEBUG_UART_8250
  382. help
  383. Say Y here if you want kernel low-level debugging support
  384. on MVEBU based platforms.
  385. This option should be used with the new bootloaders
  386. that remap the internal registers at 0xf1000000.
  387. If the wrong DEBUG_MVEBU_UART* option is selected,
  388. when u-boot hands over to the kernel, the system
  389. silently crashes, with no serial output at all.
  390. config DEBUG_VF_UART
  391. bool "Vybrid UART"
  392. depends on SOC_VF610
  393. help
  394. Say Y here if you want kernel low-level debugging support
  395. on Vybrid based platforms.
  396. config DEBUG_NOMADIK_UART
  397. bool "Kernel low-level debugging messages via NOMADIK UART"
  398. depends on ARCH_NOMADIK
  399. select DEBUG_UART_PL01X
  400. help
  401. Say Y here if you want kernel low-level debugging support
  402. on NOMADIK based platforms.
  403. config DEBUG_NSPIRE_CLASSIC_UART
  404. bool "Kernel low-level debugging via TI-NSPIRE 8250 UART"
  405. depends on ARCH_NSPIRE
  406. select DEBUG_UART_8250
  407. help
  408. Say Y here if you want kernel low-level debugging support
  409. on TI-NSPIRE classic models.
  410. config DEBUG_NSPIRE_CX_UART
  411. bool "Kernel low-level debugging via TI-NSPIRE PL011 UART"
  412. depends on ARCH_NSPIRE
  413. select DEBUG_UART_PL01X
  414. help
  415. Say Y here if you want kernel low-level debugging support
  416. on TI-NSPIRE CX models.
  417. config DEBUG_OMAP2UART1
  418. bool "OMAP2/3/4 UART1 (omap2/3 sdp boards and some omap3 boards)"
  419. depends on ARCH_OMAP2PLUS
  420. select DEBUG_OMAP2PLUS_UART
  421. help
  422. This covers at least h4, 2430sdp, 3430sdp, 3630sdp,
  423. omap3 torpedo and 3530 lv som.
  424. config DEBUG_OMAP2UART2
  425. bool "Kernel low-level debugging messages via OMAP2/3/4 UART2"
  426. depends on ARCH_OMAP2PLUS
  427. select DEBUG_OMAP2PLUS_UART
  428. config DEBUG_OMAP2UART3
  429. bool "Kernel low-level debugging messages via OMAP2 UART3 (n8x0)"
  430. depends on ARCH_OMAP2PLUS
  431. select DEBUG_OMAP2PLUS_UART
  432. config DEBUG_OMAP3UART3
  433. bool "Kernel low-level debugging messages via OMAP3 UART3 (most omap3 boards)"
  434. depends on ARCH_OMAP2PLUS
  435. select DEBUG_OMAP2PLUS_UART
  436. help
  437. This covers at least cm_t3x, beagle, crane, devkit8000,
  438. igep00x0, ldp, n900, n9(50), pandora, overo, touchbook,
  439. and 3517evm.
  440. config DEBUG_OMAP4UART3
  441. bool "Kernel low-level debugging messages via OMAP4/5 UART3 (omap4 blaze, panda, omap5 sevm)"
  442. depends on ARCH_OMAP2PLUS
  443. select DEBUG_OMAP2PLUS_UART
  444. config DEBUG_OMAP3UART4
  445. bool "Kernel low-level debugging messages via OMAP36XX UART4"
  446. depends on ARCH_OMAP2PLUS
  447. select DEBUG_OMAP2PLUS_UART
  448. config DEBUG_OMAP4UART4
  449. bool "Kernel low-level debugging messages via OMAP4/5 UART4"
  450. depends on ARCH_OMAP2PLUS
  451. select DEBUG_OMAP2PLUS_UART
  452. config DEBUG_TI81XXUART1
  453. bool "Kernel low-level debugging messages via TI81XX UART1 (ti8148evm)"
  454. depends on ARCH_OMAP2PLUS
  455. select DEBUG_OMAP2PLUS_UART
  456. config DEBUG_TI81XXUART2
  457. bool "Kernel low-level debugging messages via TI81XX UART2"
  458. depends on ARCH_OMAP2PLUS
  459. select DEBUG_OMAP2PLUS_UART
  460. config DEBUG_TI81XXUART3
  461. bool "Kernel low-level debugging messages via TI81XX UART3 (ti8168evm)"
  462. depends on ARCH_OMAP2PLUS
  463. select DEBUG_OMAP2PLUS_UART
  464. config DEBUG_AM33XXUART1
  465. bool "Kernel low-level debugging messages via AM33XX UART1"
  466. depends on ARCH_OMAP2PLUS
  467. select DEBUG_OMAP2PLUS_UART
  468. config DEBUG_ZOOM_UART
  469. bool "Kernel low-level debugging messages via Zoom2/3 UART"
  470. depends on ARCH_OMAP2PLUS
  471. select DEBUG_OMAP2PLUS_UART
  472. config DEBUG_PICOXCELL_UART
  473. depends on ARCH_PICOXCELL
  474. bool "Use PicoXcell UART for low-level debug"
  475. select DEBUG_UART_8250
  476. help
  477. Say Y here if you want kernel low-level debugging support
  478. on PicoXcell based platforms.
  479. config DEBUG_PXA_UART1
  480. depends on ARCH_PXA
  481. bool "Use PXA UART1 for low-level debug"
  482. select DEBUG_UART_8250
  483. help
  484. Say Y here if you want kernel low-level debugging support
  485. on PXA UART1.
  486. config DEBUG_REALVIEW_STD_PORT
  487. bool "RealView Default UART"
  488. depends on ARCH_REALVIEW
  489. select DEBUG_UART_PL01X
  490. help
  491. Say Y here if you want the debug print routines to direct
  492. their output to the serial port on RealView EB, PB11MP, PBA8
  493. and PBX platforms.
  494. config DEBUG_REALVIEW_PB1176_PORT
  495. bool "RealView PB1176 UART"
  496. depends on MACH_REALVIEW_PB1176
  497. select DEBUG_UART_PL01X
  498. help
  499. Say Y here if you want the debug print routines to direct
  500. their output to the standard serial port on the RealView
  501. PB1176 platform.
  502. config DEBUG_RK29_UART0
  503. bool "Kernel low-level debugging messages via Rockchip RK29 UART0"
  504. depends on ARCH_ROCKCHIP
  505. select DEBUG_UART_8250
  506. help
  507. Say Y here if you want kernel low-level debugging support
  508. on Rockchip based platforms.
  509. config DEBUG_RK29_UART1
  510. bool "Kernel low-level debugging messages via Rockchip RK29 UART1"
  511. depends on ARCH_ROCKCHIP
  512. select DEBUG_UART_8250
  513. help
  514. Say Y here if you want kernel low-level debugging support
  515. on Rockchip based platforms.
  516. config DEBUG_RK29_UART2
  517. bool "Kernel low-level debugging messages via Rockchip RK29 UART2"
  518. depends on ARCH_ROCKCHIP
  519. select DEBUG_UART_8250
  520. help
  521. Say Y here if you want kernel low-level debugging support
  522. on Rockchip based platforms.
  523. config DEBUG_RK3X_UART0
  524. bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART0"
  525. depends on ARCH_ROCKCHIP
  526. select DEBUG_UART_8250
  527. help
  528. Say Y here if you want kernel low-level debugging support
  529. on Rockchip based platforms.
  530. config DEBUG_RK3X_UART1
  531. bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART1"
  532. depends on ARCH_ROCKCHIP
  533. select DEBUG_UART_8250
  534. help
  535. Say Y here if you want kernel low-level debugging support
  536. on Rockchip based platforms.
  537. config DEBUG_RK3X_UART2
  538. bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART2"
  539. depends on ARCH_ROCKCHIP
  540. select DEBUG_UART_8250
  541. help
  542. Say Y here if you want kernel low-level debugging support
  543. on Rockchip based platforms.
  544. config DEBUG_RK3X_UART3
  545. bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART3"
  546. depends on ARCH_ROCKCHIP
  547. select DEBUG_UART_8250
  548. help
  549. Say Y here if you want kernel low-level debugging support
  550. on Rockchip based platforms.
  551. config DEBUG_RK32_UART2
  552. bool "Kernel low-level debugging messages via Rockchip RK32 UART2"
  553. depends on ARCH_ROCKCHIP
  554. select DEBUG_UART_8250
  555. help
  556. Say Y here if you want kernel low-level debugging support
  557. on Rockchip RK32xx based platforms.
  558. config DEBUG_S3C_UART0
  559. depends on PLAT_SAMSUNG
  560. select DEBUG_EXYNOS_UART if ARCH_EXYNOS
  561. select DEBUG_S3C24XX_UART if ARCH_S3C24XX
  562. select DEBUG_S5PV210_UART if ARCH_S5PV210
  563. bool "Use Samsung S3C UART 0 for low-level debug"
  564. help
  565. Say Y here if you want the debug print routines to direct
  566. their output to UART 0. The port must have been initialised
  567. by the boot-loader before use.
  568. config DEBUG_S3C_UART1
  569. depends on PLAT_SAMSUNG
  570. select DEBUG_EXYNOS_UART if ARCH_EXYNOS
  571. select DEBUG_S3C24XX_UART if ARCH_S3C24XX
  572. select DEBUG_S5PV210_UART if ARCH_S5PV210
  573. bool "Use Samsung S3C UART 1 for low-level debug"
  574. help
  575. Say Y here if you want the debug print routines to direct
  576. their output to UART 1. The port must have been initialised
  577. by the boot-loader before use.
  578. config DEBUG_S3C_UART2
  579. depends on PLAT_SAMSUNG
  580. select DEBUG_EXYNOS_UART if ARCH_EXYNOS
  581. select DEBUG_S3C24XX_UART if ARCH_S3C24XX
  582. select DEBUG_S5PV210_UART if ARCH_S5PV210
  583. bool "Use Samsung S3C UART 2 for low-level debug"
  584. help
  585. Say Y here if you want the debug print routines to direct
  586. their output to UART 2. The port must have been initialised
  587. by the boot-loader before use.
  588. config DEBUG_S3C_UART3
  589. depends on PLAT_SAMSUNG && (ARCH_EXYNOS || ARCH_S5PV210)
  590. select DEBUG_EXYNOS_UART if ARCH_EXYNOS
  591. select DEBUG_S5PV210_UART if ARCH_S5PV210
  592. bool "Use Samsung S3C UART 3 for low-level debug"
  593. help
  594. Say Y here if you want the debug print routines to direct
  595. their output to UART 3. The port must have been initialised
  596. by the boot-loader before use.
  597. config DEBUG_S3C2410_UART0
  598. depends on ARCH_S3C24XX
  599. select DEBUG_S3C2410_UART
  600. bool "Use S3C2410/S3C2412 UART 0 for low-level debug"
  601. help
  602. Say Y here if you want the debug print routines to direct
  603. their output to UART 0. The port must have been initialised
  604. by the boot-loader before use.
  605. config DEBUG_S3C2410_UART1
  606. depends on ARCH_S3C24XX
  607. select DEBUG_S3C2410_UART
  608. bool "Use S3C2410/S3C2412 UART 1 for low-level debug"
  609. help
  610. Say Y here if you want the debug print routines to direct
  611. their output to UART 1. The port must have been initialised
  612. by the boot-loader before use.
  613. config DEBUG_S3C2410_UART2
  614. depends on ARCH_S3C24XX
  615. select DEBUG_S3C2410_UART
  616. bool "Use S3C2410/S3C2412 UART 2 for low-level debug"
  617. help
  618. Say Y here if you want the debug print routines to direct
  619. their output to UART 2. The port must have been initialised
  620. by the boot-loader before use.
  621. config DEBUG_SOCFPGA_UART
  622. depends on ARCH_SOCFPGA
  623. bool "Use SOCFPGA UART for low-level debug"
  624. select DEBUG_UART_8250
  625. help
  626. Say Y here if you want kernel low-level debugging support
  627. on SOCFPGA based platforms.
  628. config DEBUG_SUNXI_UART0
  629. bool "Kernel low-level debugging messages via sunXi UART0"
  630. depends on ARCH_SUNXI
  631. select DEBUG_UART_8250
  632. help
  633. Say Y here if you want kernel low-level debugging support
  634. on Allwinner A1X based platforms on the UART0.
  635. config DEBUG_SUNXI_UART1
  636. bool "Kernel low-level debugging messages via sunXi UART1"
  637. depends on ARCH_SUNXI
  638. select DEBUG_UART_8250
  639. help
  640. Say Y here if you want kernel low-level debugging support
  641. on Allwinner A1X based platforms on the UART1.
  642. config DEBUG_SUNXI_R_UART
  643. bool "Kernel low-level debugging messages via sunXi R_UART"
  644. depends on MACH_SUN6I || MACH_SUN8I
  645. select DEBUG_UART_8250
  646. help
  647. Say Y here if you want kernel low-level debugging support
  648. on Allwinner A31/A23 based platforms on the R_UART.
  649. config TEGRA_DEBUG_UART_AUTO_ODMDATA
  650. bool "Kernel low-level debugging messages via Tegra UART via ODMDATA"
  651. depends on ARCH_TEGRA
  652. select DEBUG_TEGRA_UART
  653. help
  654. Automatically determines which UART to use for low-level
  655. debug based on the ODMDATA value. This value is part of
  656. the BCT, and is written to the boot memory device using
  657. nvflash, or other flashing tool. When bits 19:18 are 3,
  658. then bits 17:15 indicate which UART to use; 0/1/2/3/4
  659. are UART A/B/C/D/E.
  660. config TEGRA_DEBUG_UARTA
  661. bool "Kernel low-level debugging messages via Tegra UART A"
  662. depends on ARCH_TEGRA
  663. select DEBUG_TEGRA_UART
  664. help
  665. Say Y here if you want kernel low-level debugging support
  666. on Tegra based platforms.
  667. config TEGRA_DEBUG_UARTB
  668. bool "Kernel low-level debugging messages via Tegra UART B"
  669. depends on ARCH_TEGRA
  670. select DEBUG_TEGRA_UART
  671. help
  672. Say Y here if you want kernel low-level debugging support
  673. on Tegra based platforms.
  674. config TEGRA_DEBUG_UARTC
  675. bool "Kernel low-level debugging messages via Tegra UART C"
  676. depends on ARCH_TEGRA
  677. select DEBUG_TEGRA_UART
  678. help
  679. Say Y here if you want kernel low-level debugging support
  680. on Tegra based platforms.
  681. config TEGRA_DEBUG_UARTD
  682. bool "Kernel low-level debugging messages via Tegra UART D"
  683. depends on ARCH_TEGRA
  684. select DEBUG_TEGRA_UART
  685. help
  686. Say Y here if you want kernel low-level debugging support
  687. on Tegra based platforms.
  688. config TEGRA_DEBUG_UARTE
  689. bool "Kernel low-level debugging messages via Tegra UART E"
  690. depends on ARCH_TEGRA
  691. select DEBUG_TEGRA_UART
  692. help
  693. Say Y here if you want kernel low-level debugging support
  694. on Tegra based platforms.
  695. config DEBUG_SIRFPRIMA2_UART1
  696. bool "Kernel low-level debugging messages via SiRFprimaII UART1"
  697. depends on ARCH_PRIMA2
  698. help
  699. Say Y here if you want the debug print routines to direct
  700. their output to the uart1 port on SiRFprimaII devices.
  701. config DEBUG_SIRFMARCO_UART1
  702. bool "Kernel low-level debugging messages via SiRFmarco UART1"
  703. depends on ARCH_MARCO
  704. help
  705. Say Y here if you want the debug print routines to direct
  706. their output to the uart1 port on SiRFmarco devices.
  707. config STIH41X_DEBUG_ASC2
  708. bool "Use StiH415/416 ASC2 UART for low-level debug"
  709. depends on ARCH_STI
  710. select DEBUG_STI_UART
  711. help
  712. Say Y here if you want kernel low-level debugging support
  713. on STiH415/416 based platforms like b2000, which has
  714. default UART wired up to ASC2.
  715. If unsure, say N.
  716. config STIH41X_DEBUG_SBC_ASC1
  717. bool "Use StiH415/416 SBC ASC1 UART for low-level debug"
  718. depends on ARCH_STI
  719. select DEBUG_STI_UART
  720. help
  721. Say Y here if you want kernel low-level debugging support
  722. on STiH415/416 based platforms like b2020. which has
  723. default UART wired up to SBC ASC1.
  724. If unsure, say N.
  725. config DEBUG_U300_UART
  726. bool "Kernel low-level debugging messages via U300 UART0"
  727. depends on ARCH_U300
  728. select DEBUG_UART_PL01X
  729. help
  730. Say Y here if you want the debug print routines to direct
  731. their output to the uart port on U300 devices.
  732. config DEBUG_UX500_UART
  733. depends on ARCH_U8500
  734. bool "Use Ux500 UART for low-level debug"
  735. help
  736. Say Y here if you want kernel low-level debugging support
  737. on Ux500 based platforms.
  738. config DEBUG_MT6589_UART0
  739. bool "Mediatek mt6589 UART0"
  740. depends on ARCH_MEDIATEK
  741. select DEBUG_UART_8250
  742. help
  743. Say Y here if you want kernel low-level debugging support
  744. for Mediatek mt6589 based platforms on UART0.
  745. config DEBUG_VEXPRESS_UART0_DETECT
  746. bool "Autodetect UART0 on Versatile Express Cortex-A core tiles"
  747. depends on ARCH_VEXPRESS && CPU_CP15_MMU
  748. help
  749. This option enables a simple heuristic which tries to determine
  750. the motherboard's memory map variant (original or RS1) and then
  751. choose the relevant UART0 base address.
  752. Note that this will only work with standard A-class core tiles,
  753. and may fail with non-standard SMM or custom software models.
  754. config DEBUG_VEXPRESS_UART0_CA9
  755. bool "Use PL011 UART0 at 0x10009000 (V2P-CA9 core tile)"
  756. depends on ARCH_VEXPRESS
  757. select DEBUG_UART_PL01X
  758. help
  759. This option selects UART0 at 0x10009000. Except for custom models,
  760. this applies only to the V2P-CA9 tile.
  761. config DEBUG_VEXPRESS_UART0_RS1
  762. bool "Use PL011 UART0 at 0x1c090000 (RS1 complaint tiles)"
  763. depends on ARCH_VEXPRESS
  764. select DEBUG_UART_PL01X
  765. help
  766. This option selects UART0 at 0x1c090000. This applies to most
  767. of the tiles using the RS1 memory map, including all new A-class
  768. core tiles, FPGA-based SMMs and software models.
  769. config DEBUG_VEXPRESS_UART0_CRX
  770. bool "Use PL011 UART0 at 0xb0090000 (Cortex-R compliant tiles)"
  771. depends on ARCH_VEXPRESS && !MMU
  772. select DEBUG_UART_PL01X
  773. help
  774. This option selects UART0 at 0xb0090000. This is appropriate for
  775. Cortex-R series tiles and SMMs, such as Cortex-R5 and Cortex-R7
  776. config DEBUG_VT8500_UART0
  777. bool "Use UART0 on VIA/Wondermedia SoCs"
  778. depends on ARCH_VT8500
  779. help
  780. This option selects UART0 on VIA/Wondermedia System-on-a-chip
  781. devices, including VT8500, WM8505, WM8650 and WM8850.
  782. config DEBUG_LL_UART_NONE
  783. bool "No low-level debugging UART"
  784. depends on !ARCH_MULTIPLATFORM
  785. help
  786. Say Y here if your platform doesn't provide a UART option
  787. above. This relies on your platform choosing the right UART
  788. definition internally in order for low-level debugging to
  789. work.
  790. config DEBUG_ICEDCC
  791. bool "Kernel low-level debugging via EmbeddedICE DCC channel"
  792. help
  793. Say Y here if you want the debug print routines to direct
  794. their output to the EmbeddedICE macrocell's DCC channel using
  795. co-processor 14. This is known to work on the ARM9 style ICE
  796. channel and on the XScale with the PEEDI.
  797. Note that the system will appear to hang during boot if there
  798. is nothing connected to read from the DCC.
  799. config DEBUG_SEMIHOSTING
  800. bool "Kernel low-level debug output via semihosting I/O"
  801. help
  802. Semihosting enables code running on an ARM target to use
  803. the I/O facilities on a host debugger/emulator through a
  804. simple SVC call. The host debugger or emulator must have
  805. semihosting enabled for the special svc call to be trapped
  806. otherwise the kernel will crash.
  807. This is known to work with OpenOCD, as well as
  808. ARM's Fast Models, or any other controlling environment
  809. that implements semihosting.
  810. For more details about semihosting, please see
  811. chapter 8 of DUI0203I_rvct_developer_guide.pdf from ARM Ltd.
  812. config DEBUG_LL_UART_8250
  813. bool "Kernel low-level debugging via 8250 UART"
  814. help
  815. Say Y here if you wish the debug print routes to direct
  816. their output to an 8250 UART. You can use this option
  817. to provide the parameters for the 8250 UART rather than
  818. selecting one of the platform specific options above if
  819. you know the parameters for the port.
  820. This option is preferred over the platform specific
  821. options; the platform specific options are deprecated
  822. and will be soon removed.
  823. config DEBUG_LL_UART_EFM32
  824. bool "Kernel low-level debugging via efm32 UART"
  825. depends on ARCH_EFM32
  826. help
  827. Say Y here if you want the debug print routines to direct
  828. their output to an UART or USART port on efm32 based
  829. machines. Use the following addresses for DEBUG_UART_PHYS:
  830. 0x4000c000 | USART0
  831. 0x4000c400 | USART1
  832. 0x4000c800 | USART2
  833. 0x4000e000 | UART0
  834. 0x4000e400 | UART1
  835. config DEBUG_LL_UART_PL01X
  836. bool "Kernel low-level debugging via ARM Ltd PL01x Primecell UART"
  837. help
  838. Say Y here if you wish the debug print routes to direct
  839. their output to a PL01x Primecell UART. You can use
  840. this option to provide the parameters for the UART
  841. rather than selecting one of the platform specific
  842. options above if you know the parameters for the port.
  843. This option is preferred over the platform specific
  844. options; the platform specific options are deprecated
  845. and will be soon removed.
  846. endchoice
  847. config DEBUG_EXYNOS_UART
  848. bool
  849. config DEBUG_S3C2410_UART
  850. bool
  851. select DEBUG_S3C24XX_UART
  852. config DEBUG_S3C24XX_UART
  853. bool
  854. config DEBUG_S5PV210_UART
  855. bool
  856. config DEBUG_OMAP2PLUS_UART
  857. bool
  858. depends on ARCH_OMAP2PLUS
  859. config DEBUG_IMX_UART_PORT
  860. int "i.MX Debug UART Port Selection" if DEBUG_IMX1_UART || \
  861. DEBUG_IMX25_UART || \
  862. DEBUG_IMX21_IMX27_UART || \
  863. DEBUG_IMX31_UART || \
  864. DEBUG_IMX35_UART || \
  865. DEBUG_IMX50_UART || \
  866. DEBUG_IMX51_UART || \
  867. DEBUG_IMX53_UART || \
  868. DEBUG_IMX6Q_UART || \
  869. DEBUG_IMX6SL_UART || \
  870. DEBUG_IMX6SX_UART
  871. default 1
  872. depends on ARCH_MXC
  873. help
  874. Choose UART port on which kernel low-level debug messages
  875. should be output.
  876. config DEBUG_VF_UART_PORT
  877. int "Vybrid Debug UART Port Selection" if DEBUG_VF_UART
  878. default 1
  879. range 0 3
  880. depends on SOC_VF610
  881. help
  882. Choose UART port on which kernel low-level debug messages
  883. should be output.
  884. config DEBUG_TEGRA_UART
  885. bool
  886. depends on ARCH_TEGRA
  887. config DEBUG_STI_UART
  888. bool
  889. depends on ARCH_STI
  890. config DEBUG_LL_INCLUDE
  891. string
  892. default "debug/8250.S" if DEBUG_LL_UART_8250 || DEBUG_UART_8250
  893. default "debug/clps711x.S" if DEBUG_CLPS711X_UART1 || DEBUG_CLPS711X_UART2
  894. default "debug/meson.S" if DEBUG_MESON_UARTAO
  895. default "debug/pl01x.S" if DEBUG_LL_UART_PL01X || DEBUG_UART_PL01X
  896. default "debug/exynos.S" if DEBUG_EXYNOS_UART
  897. default "debug/efm32.S" if DEBUG_LL_UART_EFM32
  898. default "debug/icedcc.S" if DEBUG_ICEDCC
  899. default "debug/imx.S" if DEBUG_IMX1_UART || \
  900. DEBUG_IMX25_UART || \
  901. DEBUG_IMX21_IMX27_UART || \
  902. DEBUG_IMX31_UART || \
  903. DEBUG_IMX35_UART || \
  904. DEBUG_IMX50_UART || \
  905. DEBUG_IMX51_UART || \
  906. DEBUG_IMX53_UART ||\
  907. DEBUG_IMX6Q_UART || \
  908. DEBUG_IMX6SL_UART || \
  909. DEBUG_IMX6SX_UART
  910. default "debug/msm.S" if DEBUG_MSM_UART || DEBUG_QCOM_UARTDM
  911. default "debug/omap2plus.S" if DEBUG_OMAP2PLUS_UART
  912. default "debug/s3c24xx.S" if DEBUG_S3C24XX_UART
  913. default "debug/s5pv210.S" if DEBUG_S5PV210_UART
  914. default "debug/sirf.S" if DEBUG_SIRFPRIMA2_UART1 || DEBUG_SIRFMARCO_UART1
  915. default "debug/sti.S" if DEBUG_STI_UART
  916. default "debug/tegra.S" if DEBUG_TEGRA_UART
  917. default "debug/ux500.S" if DEBUG_UX500_UART
  918. default "debug/vexpress.S" if DEBUG_VEXPRESS_UART0_DETECT
  919. default "debug/vf.S" if DEBUG_VF_UART
  920. default "debug/vt8500.S" if DEBUG_VT8500_UART0
  921. default "debug/zynq.S" if DEBUG_ZYNQ_UART0 || DEBUG_ZYNQ_UART1
  922. default "debug/bcm63xx.S" if DEBUG_UART_BCM63XX
  923. default "mach/debug-macro.S"
  924. # Compatibility options for PL01x
  925. config DEBUG_UART_PL01X
  926. def_bool ARCH_EP93XX || \
  927. ARCH_INTEGRATOR || \
  928. ARCH_SPEAR3XX || \
  929. ARCH_SPEAR6XX || \
  930. ARCH_SPEAR13XX || \
  931. ARCH_VERSATILE
  932. # Compatibility options for 8250
  933. config DEBUG_UART_8250
  934. def_bool ARCH_DOVE || ARCH_EBSA110 || \
  935. (FOOTBRIDGE && !DEBUG_DC21285_PORT) || \
  936. ARCH_GEMINI || ARCH_IOP13XX || ARCH_IOP32X || \
  937. ARCH_IOP33X || ARCH_IXP4XX || \
  938. ARCH_LPC32XX || ARCH_MV78XX0 || ARCH_ORION5X || ARCH_RPC
  939. # Compatibility options for BCM63xx
  940. config DEBUG_UART_BCM63XX
  941. def_bool ARCH_BCM_63XX
  942. config DEBUG_UART_PHYS
  943. hex "Physical base address of debug UART"
  944. default 0x01c20000 if DEBUG_DAVINCI_DMx_UART0
  945. default 0x01c28000 if DEBUG_SUNXI_UART0
  946. default 0x01c28400 if DEBUG_SUNXI_UART1
  947. default 0x01d0c000 if DEBUG_DAVINCI_DA8XX_UART1
  948. default 0x01d0d000 if DEBUG_DAVINCI_DA8XX_UART2
  949. default 0x01f02800 if DEBUG_SUNXI_R_UART
  950. default 0x02530c00 if DEBUG_KEYSTONE_UART0
  951. default 0x02531000 if DEBUG_KEYSTONE_UART1
  952. default 0x03010fe0 if ARCH_RPC
  953. default 0x10009000 if DEBUG_REALVIEW_STD_PORT || \
  954. DEBUG_VEXPRESS_UART0_CA9
  955. default 0x1010c000 if DEBUG_REALVIEW_PB1176_PORT
  956. default 0x10124000 if DEBUG_RK3X_UART0
  957. default 0x10126000 if DEBUG_RK3X_UART1
  958. default 0x101f1000 if ARCH_VERSATILE
  959. default 0x101fb000 if DEBUG_NOMADIK_UART
  960. default 0x11006000 if DEBUG_MT6589_UART0
  961. default 0x16000000 if ARCH_INTEGRATOR
  962. default 0x18000300 if DEBUG_BCM_5301X
  963. default 0x1c090000 if DEBUG_VEXPRESS_UART0_RS1
  964. default 0x20060000 if DEBUG_RK29_UART0
  965. default 0x20064000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
  966. default 0x20068000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
  967. default 0x20201000 if DEBUG_BCM2835
  968. default 0x3e000000 if DEBUG_BCM_KONA_UART
  969. default 0x4000e400 if DEBUG_LL_UART_EFM32
  970. default 0x40090000 if ARCH_LPC32XX
  971. default 0x40100000 if DEBUG_PXA_UART1
  972. default 0x42000000 if ARCH_GEMINI
  973. default 0x50000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \
  974. DEBUG_S3C2410_UART0)
  975. default 0x50004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \
  976. DEBUG_S3C2410_UART1)
  977. default 0x50008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \
  978. DEBUG_S3C2410_UART2)
  979. default 0x78000000 if DEBUG_CNS3XXX
  980. default 0x7c0003f8 if FOOTBRIDGE
  981. default 0x78000000 if DEBUG_CNS3XXX
  982. default 0x80070000 if DEBUG_IMX23_UART
  983. default 0x80074000 if DEBUG_IMX28_UART
  984. default 0x80230000 if DEBUG_PICOXCELL_UART
  985. default 0x808c0000 if ARCH_EP93XX
  986. default 0x90020000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART
  987. default 0xa9a00000 if DEBUG_MSM_UART
  988. default 0xb0090000 if DEBUG_VEXPRESS_UART0_CRX
  989. default 0xc0013000 if DEBUG_U300_UART
  990. default 0xc8000000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
  991. default 0xc8000003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
  992. default 0xd0000000 if ARCH_SPEAR3XX || ARCH_SPEAR6XX
  993. default 0xd0012000 if DEBUG_MVEBU_UART
  994. default 0xc81004c0 if DEBUG_MESON_UARTAO
  995. default 0xd4017000 if DEBUG_MMP_UART2
  996. default 0xd4018000 if DEBUG_MMP_UART3
  997. default 0xe0000000 if ARCH_SPEAR13XX
  998. default 0xe4007000 if DEBUG_HIP04_UART
  999. default 0xf0000be0 if ARCH_EBSA110
  1000. default 0xf1012000 if DEBUG_MVEBU_UART_ALTERNATE
  1001. default 0xf1012000 if ARCH_DOVE || ARCH_MV78XX0 || \
  1002. ARCH_ORION5X
  1003. default 0xf7fc9000 if DEBUG_BERLIN_UART
  1004. default 0xf8b00000 if DEBUG_HIX5HD2_UART
  1005. default 0xf991e000 if DEBUG_QCOM_UARTDM
  1006. default 0xfcb00000 if DEBUG_HI3620_UART
  1007. default 0xfe800000 if ARCH_IOP32X
  1008. default 0xff690000 if DEBUG_RK32_UART2
  1009. default 0xffc02000 if DEBUG_SOCFPGA_UART
  1010. default 0xffd82340 if ARCH_IOP13XX
  1011. default 0xfff36000 if DEBUG_HIGHBANK_UART
  1012. default 0xfffe8600 if DEBUG_UART_BCM63XX
  1013. default 0xfffff700 if ARCH_IOP33X
  1014. depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
  1015. DEBUG_LL_UART_EFM32 || \
  1016. DEBUG_UART_8250 || DEBUG_UART_PL01X || DEBUG_MESON_UARTAO || \
  1017. DEBUG_MSM_UART || DEBUG_QCOM_UARTDM || DEBUG_S3C24XX_UART || \
  1018. DEBUG_UART_BCM63XX
  1019. config DEBUG_UART_VIRT
  1020. hex "Virtual base address of debug UART"
  1021. default 0xe0010fe0 if ARCH_RPC
  1022. default 0xe1000000 if DEBUG_MSM_UART
  1023. default 0xf0000be0 if ARCH_EBSA110
  1024. default 0xf01fb000 if DEBUG_NOMADIK_UART
  1025. default 0xf0201000 if DEBUG_BCM2835
  1026. default 0xf1000300 if DEBUG_BCM_5301X
  1027. default 0xf1006000 if DEBUG_MT6589_UART0
  1028. default 0xf11f1000 if ARCH_VERSATILE
  1029. default 0xf1600000 if ARCH_INTEGRATOR
  1030. default 0xf1c28000 if DEBUG_SUNXI_UART0
  1031. default 0xf1c28400 if DEBUG_SUNXI_UART1
  1032. default 0xf1f02800 if DEBUG_SUNXI_R_UART
  1033. default 0xf2100000 if DEBUG_PXA_UART1
  1034. default 0xf4090000 if ARCH_LPC32XX
  1035. default 0xf4200000 if ARCH_GEMINI
  1036. default 0xf7000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \
  1037. DEBUG_S3C2410_UART0)
  1038. default 0xf7004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \
  1039. DEBUG_S3C2410_UART1)
  1040. default 0xf7008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \
  1041. DEBUG_S3C2410_UART2)
  1042. default 0xf7fc9000 if DEBUG_BERLIN_UART
  1043. default 0xf8007000 if DEBUG_HIP04_UART
  1044. default 0xf8009000 if DEBUG_VEXPRESS_UART0_CA9
  1045. default 0xf8090000 if DEBUG_VEXPRESS_UART0_RS1
  1046. default 0xfa71e000 if DEBUG_QCOM_UARTDM
  1047. default 0xfb002000 if DEBUG_CNS3XXX
  1048. default 0xfb009000 if DEBUG_REALVIEW_STD_PORT
  1049. default 0xfb10c000 if DEBUG_REALVIEW_PB1176_PORT
  1050. default 0xfcfe8600 if DEBUG_UART_BCM63XX
  1051. default 0xfd000000 if ARCH_SPEAR3XX || ARCH_SPEAR6XX
  1052. default 0xfd000000 if ARCH_SPEAR13XX
  1053. default 0xfd012000 if ARCH_MV78XX0
  1054. default 0xfde12000 if ARCH_DOVE
  1055. default 0xfe012000 if ARCH_ORION5X
  1056. default 0xf31004c0 if DEBUG_MESON_UARTAO
  1057. default 0xfe017000 if DEBUG_MMP_UART2
  1058. default 0xfe018000 if DEBUG_MMP_UART3
  1059. default 0xfe100000 if DEBUG_IMX23_UART || DEBUG_IMX28_UART
  1060. default 0xfe230000 if DEBUG_PICOXCELL_UART
  1061. default 0xfe300000 if DEBUG_BCM_KONA_UART
  1062. default 0xfe800000 if ARCH_IOP32X
  1063. default 0xfeb00000 if DEBUG_HI3620_UART || DEBUG_HIX5HD2_UART
  1064. default 0xfeb24000 if DEBUG_RK3X_UART0
  1065. default 0xfeb26000 if DEBUG_RK3X_UART1
  1066. default 0xfeb30c00 if DEBUG_KEYSTONE_UART0
  1067. default 0xfeb31000 if DEBUG_KEYSTONE_UART1
  1068. default 0xfec02000 if DEBUG_SOCFPGA_UART
  1069. default 0xfec12000 if DEBUG_MVEBU_UART || DEBUG_MVEBU_UART_ALTERNATE
  1070. default 0xfec20000 if DEBUG_DAVINCI_DMx_UART0
  1071. default 0xfec90000 if DEBUG_RK32_UART2
  1072. default 0xfed0c000 if DEBUG_DAVINCI_DA8XX_UART1
  1073. default 0xfed0d000 if DEBUG_DAVINCI_DA8XX_UART2
  1074. default 0xfed60000 if DEBUG_RK29_UART0
  1075. default 0xfed64000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
  1076. default 0xfed68000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
  1077. default 0xfedc0000 if ARCH_EP93XX
  1078. default 0xfee003f8 if FOOTBRIDGE
  1079. default 0xfee20000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART
  1080. default 0xfee82340 if ARCH_IOP13XX
  1081. default 0xfef00000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
  1082. default 0xfef00003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
  1083. default 0xfef36000 if DEBUG_HIGHBANK_UART
  1084. default 0xfefff700 if ARCH_IOP33X
  1085. default 0xff003000 if DEBUG_U300_UART
  1086. default DEBUG_UART_PHYS if !MMU
  1087. depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
  1088. DEBUG_UART_8250 || DEBUG_UART_PL01X || DEBUG_MESON_UARTAO || \
  1089. DEBUG_MSM_UART || DEBUG_QCOM_UARTDM || DEBUG_S3C24XX_UART || \
  1090. DEBUG_UART_BCM63XX
  1091. config DEBUG_UART_8250_SHIFT
  1092. int "Register offset shift for the 8250 debug UART"
  1093. depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
  1094. default 0 if FOOTBRIDGE || ARCH_IOP32X
  1095. default 2
  1096. config DEBUG_UART_8250_WORD
  1097. bool "Use 32-bit accesses for 8250 UART"
  1098. depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
  1099. depends on DEBUG_UART_8250_SHIFT >= 2
  1100. default y if DEBUG_PICOXCELL_UART || DEBUG_SOCFPGA_UART || \
  1101. ARCH_KEYSTONE || \
  1102. DEBUG_DAVINCI_DMx_UART0 || DEBUG_DAVINCI_DA8XX_UART1 || \
  1103. DEBUG_DAVINCI_DA8XX_UART2 || \
  1104. DEBUG_BCM_KONA_UART || DEBUG_RK32_UART2
  1105. config DEBUG_UART_8250_FLOW_CONTROL
  1106. bool "Enable flow control for 8250 UART"
  1107. depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
  1108. default y if ARCH_EBSA110 || FOOTBRIDGE || ARCH_GEMINI || ARCH_RPC
  1109. config DEBUG_UNCOMPRESS
  1110. bool
  1111. depends on ARCH_MULTIPLATFORM || ARCH_MSM || PLAT_SAMSUNG
  1112. default y if DEBUG_LL && !DEBUG_OMAP2PLUS_UART && \
  1113. (!DEBUG_TEGRA_UART || !ZBOOT_ROM)
  1114. help
  1115. This option influences the normal decompressor output for
  1116. multiplatform kernels. Normally, multiplatform kernels disable
  1117. decompressor output because it is not possible to know where to
  1118. send the decompressor output.
  1119. When this option is set, the selected DEBUG_LL output method
  1120. will be re-used for normal decompressor output on multiplatform
  1121. kernels.
  1122. config UNCOMPRESS_INCLUDE
  1123. string
  1124. default "debug/uncompress.h" if ARCH_MULTIPLATFORM || ARCH_MSM || \
  1125. PLAT_SAMSUNG || ARCH_EFM32
  1126. default "mach/uncompress.h"
  1127. config EARLY_PRINTK
  1128. bool "Early printk"
  1129. depends on DEBUG_LL
  1130. help
  1131. Say Y here if you want to have an early console using the
  1132. kernel low-level debugging functions. Add earlyprintk to your
  1133. kernel parameters to enable this console.
  1134. config OC_ETM
  1135. bool "On-chip ETM and ETB"
  1136. depends on ARM_AMBA
  1137. help
  1138. Enables the on-chip embedded trace macrocell and embedded trace
  1139. buffer driver that will allow you to collect traces of the
  1140. kernel code.
  1141. config ARM_KPROBES_TEST
  1142. tristate "Kprobes test module"
  1143. depends on KPROBES && MODULES
  1144. help
  1145. Perform tests of kprobes API and instruction set simulation.
  1146. config PID_IN_CONTEXTIDR
  1147. bool "Write the current PID to the CONTEXTIDR register"
  1148. depends on CPU_COPY_V6
  1149. help
  1150. Enabling this option causes the kernel to write the current PID to
  1151. the PROCID field of the CONTEXTIDR register, at the expense of some
  1152. additional instructions during context switch. Say Y here only if you
  1153. are planning to use hardware trace tools with this kernel.
  1154. config DEBUG_SET_MODULE_RONX
  1155. bool "Set loadable kernel module data as NX and text as RO"
  1156. depends on MODULES
  1157. ---help---
  1158. This option helps catch unintended modifications to loadable
  1159. kernel module's text and read-only data. It also prevents execution
  1160. of module data. Such protection may interfere with run-time code
  1161. patching and dynamic kernel tracing - and they might also protect
  1162. against certain classes of kernel exploits.
  1163. If in doubt, say "N".
  1164. endmenu