Kconfig.debug 62 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880
  1. # SPDX-License-Identifier: GPL-2.0
  2. config ARM_PTDUMP_CORE
  3. def_bool n
  4. config ARM_PTDUMP_DEBUGFS
  5. bool "Export kernel pagetable layout to userspace via debugfs"
  6. depends on DEBUG_KERNEL
  7. depends on MMU
  8. select ARM_PTDUMP_CORE
  9. select DEBUG_FS
  10. ---help---
  11. Say Y here if you want to show the kernel pagetable layout in a
  12. debugfs file. This information is only useful for kernel developers
  13. who are working in architecture specific areas of the kernel.
  14. It is probably not a good idea to enable this feature in a production
  15. kernel.
  16. If in doubt, say "N"
  17. config DEBUG_WX
  18. bool "Warn on W+X mappings at boot"
  19. depends on MMU
  20. select ARM_PTDUMP_CORE
  21. ---help---
  22. Generate a warning if any W+X mappings are found at boot.
  23. This is useful for discovering cases where the kernel is leaving
  24. W+X mappings after applying NX, as such mappings are a security risk.
  25. Look for a message in dmesg output like this:
  26. arm/mm: Checked W+X mappings: passed, no W+X pages found.
  27. or like this, if the check failed:
  28. arm/mm: Checked W+X mappings: FAILED, <N> W+X pages found.
  29. Note that even if the check fails, your kernel is possibly
  30. still fine, as W+X mappings are not a security hole in
  31. themselves, what they do is that they make the exploitation
  32. of other unfixed kernel bugs easier.
  33. There is no runtime or memory usage effect of this option
  34. once the kernel has booted up - it's a one time check.
  35. If in doubt, say "Y".
  36. choice
  37. prompt "Choose kernel unwinder"
  38. default UNWINDER_ARM if AEABI && !FUNCTION_GRAPH_TRACER
  39. default UNWINDER_FRAME_POINTER if !AEABI || FUNCTION_GRAPH_TRACER
  40. help
  41. This determines which method will be used for unwinding kernel stack
  42. traces for panics, oopses, bugs, warnings, perf, /proc/<pid>/stack,
  43. livepatch, lockdep, and more.
  44. config UNWINDER_FRAME_POINTER
  45. bool "Frame pointer unwinder"
  46. depends on !THUMB2_KERNEL && !CC_IS_CLANG
  47. select ARCH_WANT_FRAME_POINTERS
  48. select FRAME_POINTER
  49. help
  50. This option enables the frame pointer unwinder for unwinding
  51. kernel stack traces.
  52. config UNWINDER_ARM
  53. bool "ARM EABI stack unwinder"
  54. depends on AEABI
  55. select ARM_UNWIND
  56. help
  57. This option enables stack unwinding support in the kernel
  58. using the information automatically generated by the
  59. compiler. The resulting kernel image is slightly bigger but
  60. the performance is not affected. Currently, this feature
  61. only works with EABI compilers.
  62. endchoice
  63. config ARM_UNWIND
  64. bool
  65. config FRAME_POINTER
  66. bool
  67. config DEBUG_USER
  68. bool "Verbose user fault messages"
  69. help
  70. When a user program crashes due to an exception, the kernel can
  71. print a brief message explaining what the problem was. This is
  72. sometimes helpful for debugging but serves no purpose on a
  73. production system. Most people should say N here.
  74. In addition, you need to pass user_debug=N on the kernel command
  75. line to enable this feature. N consists of the sum of:
  76. 1 - undefined instruction events
  77. 2 - system calls
  78. 4 - invalid data aborts
  79. 8 - SIGSEGV faults
  80. 16 - SIGBUS faults
  81. # These options are only for real kernel hackers who want to get their hands dirty.
  82. config DEBUG_LL
  83. bool "Kernel low-level debugging functions (read help!)"
  84. depends on DEBUG_KERNEL
  85. help
  86. Say Y here to include definitions of printascii, printch, printhex
  87. in the kernel. This is helpful if you are debugging code that
  88. executes before the console is initialized.
  89. Note that selecting this option will limit the kernel to a single
  90. UART definition, as specified below. Attempting to boot the kernel
  91. image on a different platform *will not work*, so this option should
  92. not be enabled for kernels that are intended to be portable.
  93. choice
  94. prompt "Kernel low-level debugging port"
  95. depends on DEBUG_LL
  96. config DEBUG_ALPINE_UART0
  97. bool "Kernel low-level debugging messages via Alpine UART0"
  98. depends on ARCH_ALPINE
  99. select DEBUG_UART_8250
  100. help
  101. Say Y here if you want kernel low-level debugging support
  102. on Alpine based platforms.
  103. config DEBUG_ASM9260_UART
  104. bool "Kernel low-level debugging via asm9260 UART"
  105. depends on MACH_ASM9260
  106. help
  107. Say Y here if you want the debug print routines to direct
  108. their output to an UART or USART port on asm9260 based
  109. machines.
  110. DEBUG_UART_PHYS | DEBUG_UART_VIRT
  111. 0x80000000 | 0xf0000000 | UART0
  112. 0x80004000 | 0xf0004000 | UART1
  113. 0x80008000 | 0xf0008000 | UART2
  114. 0x8000c000 | 0xf000c000 | UART3
  115. 0x80010000 | 0xf0010000 | UART4
  116. 0x80014000 | 0xf0014000 | UART5
  117. 0x80018000 | 0xf0018000 | UART6
  118. 0x8001c000 | 0xf001c000 | UART7
  119. 0x80020000 | 0xf0020000 | UART8
  120. 0x80024000 | 0xf0024000 | UART9
  121. config DEBUG_AT91_RM9200_DBGU
  122. bool "Kernel low-level debugging on AT91RM9200, AT91SAM9 DBGU"
  123. select DEBUG_AT91_UART
  124. depends on SOC_AT91RM9200 || SOC_AT91SAM9
  125. help
  126. Say Y here if you want kernel low-level debugging support
  127. on the DBGU port of:
  128. at91rm9200, at91sam9260, at91sam9g20, at91sam9261,
  129. at91sam9g10, at91sam9n12, at91sam9rl64, at91sam9x5
  130. config DEBUG_AT91_SAM9263_DBGU
  131. bool "Kernel low-level debugging on AT91SAM{9263,9G45,A5D3} DBGU"
  132. select DEBUG_AT91_UART
  133. depends on SOC_AT91SAM9 || SOC_SAMA5D3
  134. help
  135. Say Y here if you want kernel low-level debugging support
  136. on the DBGU port of:
  137. at91sam9263, at91sam9g45, at91sam9m10,
  138. sama5d3
  139. config DEBUG_AT91_SAMA5D2_UART1
  140. bool "Kernel low-level debugging on SAMA5D2 UART1"
  141. select DEBUG_AT91_UART
  142. depends on SOC_SAMA5D2
  143. help
  144. Say Y here if you want kernel low-level debugging support
  145. on the UART1 port of sama5d2.
  146. config DEBUG_AT91_SAMA5D4_USART3
  147. bool "Kernel low-level debugging on SAMA5D4 USART3"
  148. select DEBUG_AT91_UART
  149. depends on SOC_SAMA5D4
  150. help
  151. Say Y here if you want kernel low-level debugging support
  152. on the USART3 port of sama5d4.
  153. config DEBUG_AT91_SAMV7_USART1
  154. bool "Kernel low-level debugging via SAMV7 USART1"
  155. select DEBUG_AT91_UART
  156. depends on SOC_SAMV7
  157. help
  158. Say Y here if you want the debug print routines to direct
  159. their output to the USART1 port on SAMV7 based
  160. machines.
  161. config DEBUG_BCM2835
  162. bool "Kernel low-level debugging on BCM2835 PL011 UART"
  163. depends on ARCH_BCM2835 && ARCH_MULTI_V6
  164. select DEBUG_UART_PL01X
  165. config DEBUG_BCM2836
  166. bool "Kernel low-level debugging on BCM2836 PL011 UART"
  167. depends on ARCH_BCM2835 && ARCH_MULTI_V7
  168. select DEBUG_UART_PL01X
  169. config DEBUG_BCM_5301X
  170. bool "Kernel low-level debugging on BCM5301X/NSP UART1"
  171. depends on ARCH_BCM_5301X || ARCH_BCM_NSP
  172. select DEBUG_UART_8250
  173. config DEBUG_BCM_HR2
  174. bool "Kernel low-level debugging on Hurricane 2 UART2"
  175. depends on ARCH_BCM_HR2
  176. select DEBUG_UART_8250
  177. config DEBUG_BCM_IPROC_UART3
  178. bool "Kernel low-level debugging on BCM IPROC UART3"
  179. depends on ARCH_BCM_CYGNUS
  180. select DEBUG_UART_8250
  181. help
  182. Say Y here if you want the debug print routines to direct
  183. their output to the third serial port on these devices.
  184. config DEBUG_BCM_KONA_UART
  185. bool "Kernel low-level debugging messages via BCM KONA UART"
  186. depends on ARCH_BCM_MOBILE
  187. select DEBUG_UART_8250
  188. help
  189. Say Y here if you want kernel low-level debugging support
  190. on Broadcom SoC platforms.
  191. This low level debug works for Broadcom
  192. mobile SoCs in the Kona family of chips (e.g. bcm28155,
  193. bcm11351, etc...)
  194. config DEBUG_BCM63XX_UART
  195. bool "Kernel low-level debugging on BCM63XX UART"
  196. depends on ARCH_BCM_63XX
  197. config DEBUG_BERLIN_UART
  198. bool "Marvell Berlin SoC Debug UART"
  199. depends on ARCH_BERLIN
  200. select DEBUG_UART_8250
  201. help
  202. Say Y here if you want kernel low-level debugging support
  203. on Marvell Berlin SoC based platforms.
  204. config DEBUG_BRCMSTB_UART
  205. bool "Use BRCMSTB UART for low-level debug"
  206. depends on ARCH_BRCMSTB
  207. help
  208. Say Y here if you want the debug print routines to direct
  209. their output to the first serial port on these devices. The
  210. UART physical and virtual address is automatically provided
  211. based on the chip identification register value.
  212. If you have a Broadcom STB chip and would like early print
  213. messages to appear over the UART, select this option.
  214. config DEBUG_CLPS711X_UART1
  215. bool "Kernel low-level debugging messages via UART1"
  216. depends on ARCH_CLPS711X
  217. help
  218. Say Y here if you want the debug print routines to direct
  219. their output to the first serial port on these devices.
  220. config DEBUG_CLPS711X_UART2
  221. bool "Kernel low-level debugging messages via UART2"
  222. depends on ARCH_CLPS711X
  223. help
  224. Say Y here if you want the debug print routines to direct
  225. their output to the second serial port on these devices.
  226. config DEBUG_CNS3XXX
  227. bool "Kernel Kernel low-level debugging on Cavium Networks CNS3xxx"
  228. depends on ARCH_CNS3XXX
  229. select DEBUG_UART_8250
  230. help
  231. Say Y here if you want the debug print routines to direct
  232. their output to the CNS3xxx UART0.
  233. config DEBUG_DAVINCI_DA8XX_UART1
  234. bool "Kernel low-level debugging on DaVinci DA8XX using UART1"
  235. depends on ARCH_DAVINCI_DA8XX
  236. select DEBUG_UART_8250
  237. help
  238. Say Y here if you want the debug print routines to direct
  239. their output to UART1 serial port on DaVinci DA8XX devices.
  240. config DEBUG_DAVINCI_DA8XX_UART2
  241. bool "Kernel low-level debugging on DaVinci DA8XX using UART2"
  242. depends on ARCH_DAVINCI_DA8XX
  243. select DEBUG_UART_8250
  244. help
  245. Say Y here if you want the debug print routines to direct
  246. their output to UART2 serial port on DaVinci DA8XX devices.
  247. config DEBUG_DAVINCI_DMx_UART0
  248. bool "Kernel low-level debugging on DaVinci DMx using UART0"
  249. depends on ARCH_DAVINCI_DMx
  250. select DEBUG_UART_8250
  251. help
  252. Say Y here if you want the debug print routines to direct
  253. their output to UART0 serial port on DaVinci DMx devices.
  254. config DEBUG_DC21285_PORT
  255. bool "Kernel low-level debugging messages via footbridge serial port"
  256. depends on FOOTBRIDGE
  257. help
  258. Say Y here if you want the debug print routines to direct
  259. their output to the serial port in the DC21285 (Footbridge).
  260. config DEBUG_DIGICOLOR_UA0
  261. bool "Kernel low-level debugging messages via Digicolor UA0"
  262. depends on ARCH_DIGICOLOR
  263. help
  264. Say Y here if you want the debug print routines to direct
  265. their output to the UA0 serial port in the CX92755.
  266. config DEBUG_EP93XX
  267. bool "Kernel low-level debugging messages via ep93xx UART"
  268. depends on ARCH_EP93XX
  269. select DEBUG_UART_PL01X
  270. help
  271. Say Y here if you want kernel low-level debugging support
  272. on Cirrus Logic EP93xx based platforms.
  273. config DEBUG_FOOTBRIDGE_COM1
  274. bool "Kernel low-level debugging messages via footbridge 8250 at PCI COM1"
  275. depends on FOOTBRIDGE
  276. select DEBUG_UART_8250
  277. help
  278. Say Y here if you want the debug print routines to direct
  279. their output to the 8250 at PCI COM1.
  280. config DEBUG_GEMINI
  281. bool "Kernel low-level debugging messages via Cortina Systems Gemini UART"
  282. depends on ARCH_GEMINI
  283. select DEBUG_UART_8250
  284. help
  285. Say Y here if you want kernel low-level debugging support
  286. on Cortina Gemini based platforms.
  287. config DEBUG_HI3620_UART
  288. bool "Hisilicon HI3620 Debug UART"
  289. depends on ARCH_HI3xxx
  290. select DEBUG_UART_PL01X
  291. help
  292. Say Y here if you want kernel low-level debugging support
  293. on HI3620 UART.
  294. config DEBUG_HIGHBANK_UART
  295. bool "Kernel low-level debugging messages via Highbank UART"
  296. depends on ARCH_HIGHBANK
  297. select DEBUG_UART_PL01X
  298. help
  299. Say Y here if you want the debug print routines to direct
  300. their output to the UART on Highbank based devices.
  301. config DEBUG_HIP01_UART
  302. bool "Hisilicon Hip01 Debug UART"
  303. depends on ARCH_HIP01
  304. select DEBUG_UART_8250
  305. help
  306. Say Y here if you want kernel low-level debugging support
  307. on HIP01 UART.
  308. config DEBUG_HIP04_UART
  309. bool "Hisilicon HiP04 Debug UART"
  310. depends on ARCH_HIP04
  311. select DEBUG_UART_8250
  312. help
  313. Say Y here if you want kernel low-level debugging support
  314. on HIP04 UART.
  315. config DEBUG_HIX5HD2_UART
  316. bool "Hisilicon Hix5hd2 Debug UART"
  317. depends on ARCH_HIX5HD2
  318. select DEBUG_UART_PL01X
  319. help
  320. Say Y here if you want kernel low-level debugging support
  321. on Hix5hd2 UART.
  322. config DEBUG_IMX1_UART
  323. bool "i.MX1 Debug UART"
  324. depends on SOC_IMX1
  325. help
  326. Say Y here if you want kernel low-level debugging support
  327. on i.MX1.
  328. config DEBUG_IMX23_UART
  329. bool "i.MX23 Debug UART"
  330. depends on SOC_IMX23
  331. select DEBUG_UART_PL01X
  332. help
  333. Say Y here if you want kernel low-level debugging support
  334. on i.MX23.
  335. config DEBUG_IMX25_UART
  336. bool "i.MX25 Debug UART"
  337. depends on SOC_IMX25
  338. help
  339. Say Y here if you want kernel low-level debugging support
  340. on i.MX25.
  341. config DEBUG_IMX21_IMX27_UART
  342. bool "i.MX21 and i.MX27 Debug UART"
  343. depends on SOC_IMX21 || SOC_IMX27
  344. help
  345. Say Y here if you want kernel low-level debugging support
  346. on i.MX21 or i.MX27.
  347. config DEBUG_IMX28_UART
  348. bool "i.MX28 Debug UART"
  349. depends on SOC_IMX28
  350. select DEBUG_UART_PL01X
  351. help
  352. Say Y here if you want kernel low-level debugging support
  353. on i.MX28.
  354. config DEBUG_IMX31_UART
  355. bool "i.MX31 Debug UART"
  356. depends on SOC_IMX31
  357. help
  358. Say Y here if you want kernel low-level debugging support
  359. on i.MX31.
  360. config DEBUG_IMX35_UART
  361. bool "i.MX35 Debug UART"
  362. depends on SOC_IMX35
  363. help
  364. Say Y here if you want kernel low-level debugging support
  365. on i.MX35.
  366. config DEBUG_IMX50_UART
  367. bool "i.MX50 Debug UART"
  368. depends on SOC_IMX50
  369. help
  370. Say Y here if you want kernel low-level debugging support
  371. on i.MX50.
  372. config DEBUG_IMX51_UART
  373. bool "i.MX51 Debug UART"
  374. depends on SOC_IMX51
  375. help
  376. Say Y here if you want kernel low-level debugging support
  377. on i.MX51.
  378. config DEBUG_IMX53_UART
  379. bool "i.MX53 Debug UART"
  380. depends on SOC_IMX53
  381. help
  382. Say Y here if you want kernel low-level debugging support
  383. on i.MX53.
  384. config DEBUG_IMX6Q_UART
  385. bool "i.MX6Q/DL Debug UART"
  386. depends on SOC_IMX6Q
  387. help
  388. Say Y here if you want kernel low-level debugging support
  389. on i.MX6Q/DL.
  390. config DEBUG_IMX6SL_UART
  391. bool "i.MX6SL Debug UART"
  392. depends on SOC_IMX6SL
  393. help
  394. Say Y here if you want kernel low-level debugging support
  395. on i.MX6SL.
  396. config DEBUG_IMX6SX_UART
  397. bool "i.MX6SX Debug UART"
  398. depends on SOC_IMX6SX
  399. help
  400. Say Y here if you want kernel low-level debugging support
  401. on i.MX6SX.
  402. config DEBUG_IMX6UL_UART
  403. bool "i.MX6UL Debug UART"
  404. depends on SOC_IMX6UL
  405. help
  406. Say Y here if you want kernel low-level debugging support
  407. on i.MX6UL.
  408. config DEBUG_IMX7D_UART
  409. bool "i.MX7D Debug UART"
  410. depends on SOC_IMX7D
  411. help
  412. Say Y here if you want kernel low-level debugging support
  413. on i.MX7D.
  414. config DEBUG_INTEGRATOR
  415. bool "Kernel low-level debugging messages via ARM Integrator UART"
  416. depends on ARCH_INTEGRATOR
  417. select DEBUG_UART_PL01X
  418. help
  419. Say Y here if you want kernel low-level debugging support
  420. on ARM Integrator platforms.
  421. config DEBUG_KEYSTONE_UART0
  422. bool "Kernel low-level debugging on KEYSTONE2 using UART0"
  423. depends on ARCH_KEYSTONE
  424. select DEBUG_UART_8250
  425. help
  426. Say Y here if you want the debug print routines to direct
  427. their output to UART0 serial port on KEYSTONE2 devices.
  428. config DEBUG_KEYSTONE_UART1
  429. bool "Kernel low-level debugging on KEYSTONE2 using UART1"
  430. depends on ARCH_KEYSTONE
  431. select DEBUG_UART_8250
  432. help
  433. Say Y here if you want the debug print routines to direct
  434. their output to UART1 serial port on KEYSTONE2 devices.
  435. config DEBUG_KS8695_UART
  436. bool "KS8695 Debug UART"
  437. depends on ARCH_KS8695
  438. help
  439. Say Y here if you want kernel low-level debugging support
  440. on KS8695.
  441. config DEBUG_LPC18XX_UART0
  442. bool "Kernel low-level debugging via LPC18xx/43xx UART0"
  443. depends on ARCH_LPC18XX
  444. select DEBUG_UART_8250
  445. help
  446. Say Y here if you want kernel low-level debugging support
  447. on NXP LPC18xx/43xx UART0.
  448. config DEBUG_LPC32XX
  449. bool "Kernel low-level debugging messages via NXP LPC32xx UART"
  450. depends on ARCH_LPC32XX
  451. select DEBUG_UART_8250
  452. help
  453. Say Y here if you want kernel low-level debugging support
  454. on NXP LPC32xx based platforms.
  455. config DEBUG_MESON_UARTAO
  456. bool "Kernel low-level debugging via Meson6 UARTAO"
  457. depends on ARCH_MESON
  458. help
  459. Say Y here if you want kernel low-lever debugging support
  460. on Amlogic Meson6 based platforms on the UARTAO.
  461. config DEBUG_MMP_UART2
  462. bool "Kernel low-level debugging message via MMP UART2"
  463. depends on ARCH_MMP
  464. select DEBUG_UART_8250
  465. help
  466. Say Y here if you want kernel low-level debugging support
  467. on MMP UART2.
  468. config DEBUG_MMP_UART3
  469. bool "Kernel low-level debugging message via MMP UART3"
  470. depends on ARCH_MMP
  471. select DEBUG_UART_8250
  472. help
  473. Say Y here if you want kernel low-level debugging support
  474. on MMP UART3.
  475. config DEBUG_MVEBU_UART0
  476. bool "Kernel low-level debugging messages via MVEBU UART0 (old bootloaders)"
  477. depends on ARCH_MVEBU
  478. depends on ARCH_MVEBU && CPU_V7
  479. select DEBUG_UART_8250
  480. help
  481. Say Y here if you want kernel low-level debugging support
  482. on MVEBU based platforms on UART0.
  483. This option should be used with the old bootloaders
  484. that left the internal registers mapped at
  485. 0xd0000000. As of today, this is the case on
  486. platforms such as the Globalscale Mirabox or the
  487. Plathome OpenBlocks AX3, when using the original
  488. bootloader.
  489. This option will not work on older Marvell platforms
  490. (Kirkwood, Dove, MV78xx0, Orion5x), which should pick
  491. the "new bootloader" variant.
  492. If the wrong DEBUG_MVEBU_UART* option is selected,
  493. when u-boot hands over to the kernel, the system
  494. silently crashes, with no serial output at all.
  495. config DEBUG_MVEBU_UART0_ALTERNATE
  496. bool "Kernel low-level debugging messages via MVEBU UART0 (new bootloaders)"
  497. depends on ARCH_MVEBU || ARCH_DOVE || ARCH_MV78XX0 || ARCH_ORION5X
  498. select DEBUG_UART_8250
  499. help
  500. Say Y here if you want kernel low-level debugging support
  501. on MVEBU based platforms on UART0. (Armada XP, Armada 3xx,
  502. Kirkwood, Dove, MV78xx0, Orion5x).
  503. This option should be used with the new bootloaders
  504. that remap the internal registers at 0xf1000000.
  505. If the wrong DEBUG_MVEBU_UART* option is selected,
  506. when u-boot hands over to the kernel, the system
  507. silently crashes, with no serial output at all.
  508. config DEBUG_MVEBU_UART1_ALTERNATE
  509. bool "Kernel low-level debugging messages via MVEBU UART1 (new bootloaders)"
  510. depends on ARCH_MVEBU
  511. select DEBUG_UART_8250
  512. help
  513. Say Y here if you want kernel low-level debugging support
  514. on MVEBU based platforms on UART1. (Armada XP, Armada 3xx,
  515. Kirkwood, Dove, MV78xx0, Orion5x).
  516. This option should be used with the new bootloaders
  517. that remap the internal registers at 0xf1000000.
  518. All of the older (pre Armada XP/370) platforms also use
  519. this address, regardless of the boot loader version.
  520. If the wrong DEBUG_MVEBU_UART* option is selected,
  521. when u-boot hands over to the kernel, the system
  522. silently crashes, with no serial output at all.
  523. config DEBUG_MT6589_UART0
  524. bool "Mediatek mt6589 UART0"
  525. depends on ARCH_MEDIATEK
  526. select DEBUG_UART_8250
  527. help
  528. Say Y here if you want kernel low-level debugging support
  529. for Mediatek mt6589 based platforms on UART0.
  530. config DEBUG_MT8127_UART0
  531. bool "Mediatek mt8127/mt6592 UART0"
  532. depends on ARCH_MEDIATEK
  533. select DEBUG_UART_8250
  534. help
  535. Say Y here if you want kernel low-level debugging support
  536. for Mediatek mt8127 based platforms on UART0.
  537. config DEBUG_MT8135_UART3
  538. bool "Mediatek mt8135 UART3"
  539. depends on ARCH_MEDIATEK
  540. select DEBUG_UART_8250
  541. help
  542. Say Y here if you want kernel low-level debugging support
  543. for Mediatek mt8135 based platforms on UART3.
  544. config DEBUG_NETX_UART
  545. bool "Kernel low-level debugging messages via NetX UART"
  546. depends on ARCH_NETX
  547. help
  548. Say Y here if you want kernel low-level debugging support
  549. on Hilscher NetX based platforms.
  550. config DEBUG_NOMADIK_UART
  551. bool "Kernel low-level debugging messages via NOMADIK UART"
  552. depends on ARCH_NOMADIK
  553. select DEBUG_UART_PL01X
  554. help
  555. Say Y here if you want kernel low-level debugging support
  556. on NOMADIK based platforms.
  557. config DEBUG_NSPIRE_CLASSIC_UART
  558. bool "Kernel low-level debugging via TI-NSPIRE 8250 UART"
  559. depends on ARCH_NSPIRE
  560. select DEBUG_UART_8250
  561. help
  562. Say Y here if you want kernel low-level debugging support
  563. on TI-NSPIRE classic models.
  564. config DEBUG_NSPIRE_CX_UART
  565. bool "Kernel low-level debugging via TI-NSPIRE PL011 UART"
  566. depends on ARCH_NSPIRE
  567. select DEBUG_UART_PL01X
  568. help
  569. Say Y here if you want kernel low-level debugging support
  570. on TI-NSPIRE CX models.
  571. config DEBUG_OMAP1UART1
  572. bool "Kernel low-level debugging via OMAP1 UART1"
  573. depends on ARCH_OMAP1
  574. select DEBUG_UART_8250
  575. help
  576. Say Y here if you want kernel low-level debugging support
  577. on OMAP1 based platforms (except OMAP730) on the UART1.
  578. config DEBUG_OMAP1UART2
  579. bool "Kernel low-level debugging via OMAP1 UART2"
  580. depends on ARCH_OMAP1
  581. select DEBUG_UART_8250
  582. help
  583. Say Y here if you want kernel low-level debugging support
  584. on OMAP1 based platforms (except OMAP730) on the UART2.
  585. config DEBUG_OMAP1UART3
  586. bool "Kernel low-level debugging via OMAP1 UART3"
  587. depends on ARCH_OMAP1
  588. select DEBUG_UART_8250
  589. help
  590. Say Y here if you want kernel low-level debugging support
  591. on OMAP1 based platforms (except OMAP730) on the UART3.
  592. config DEBUG_OMAP2UART1
  593. bool "OMAP2/3/4 UART1 (omap2/3 sdp boards and some omap3 boards)"
  594. depends on ARCH_OMAP2PLUS
  595. select DEBUG_UART_8250
  596. help
  597. This covers at least h4, 2430sdp, 3430sdp, 3630sdp,
  598. omap3 torpedo and 3530 lv som.
  599. config DEBUG_OMAP2UART2
  600. bool "Kernel low-level debugging messages via OMAP2/3/4 UART2"
  601. depends on ARCH_OMAP2PLUS
  602. select DEBUG_UART_8250
  603. config DEBUG_OMAP2UART3
  604. bool "Kernel low-level debugging messages via OMAP2 UART3 (n8x0)"
  605. depends on ARCH_OMAP2PLUS
  606. select DEBUG_UART_8250
  607. config DEBUG_OMAP3UART3
  608. bool "Kernel low-level debugging messages via OMAP3 UART3 (most omap3 boards)"
  609. depends on ARCH_OMAP2PLUS
  610. select DEBUG_UART_8250
  611. help
  612. This covers at least cm_t3x, beagle, crane, devkit8000,
  613. igep00x0, ldp, n900, n9(50), pandora, overo, touchbook,
  614. and 3517evm.
  615. config DEBUG_OMAP4UART3
  616. bool "Kernel low-level debugging messages via OMAP4/5 UART3 (omap4 blaze, panda, omap5 sevm)"
  617. depends on ARCH_OMAP2PLUS
  618. select DEBUG_UART_8250
  619. config DEBUG_OMAP3UART4
  620. bool "Kernel low-level debugging messages via OMAP36XX UART4"
  621. depends on ARCH_OMAP2PLUS
  622. select DEBUG_UART_8250
  623. config DEBUG_OMAP4UART4
  624. bool "Kernel low-level debugging messages via OMAP4/5 UART4"
  625. depends on ARCH_OMAP2PLUS
  626. select DEBUG_UART_8250
  627. config DEBUG_OMAP7XXUART1
  628. bool "Kernel low-level debugging via OMAP730 UART1"
  629. depends on ARCH_OMAP730
  630. select DEBUG_UART_8250
  631. help
  632. Say Y here if you want kernel low-level debugging support
  633. on OMAP730 based platforms on the UART1.
  634. config DEBUG_OMAP7XXUART2
  635. bool "Kernel low-level debugging via OMAP730 UART2"
  636. depends on ARCH_OMAP730
  637. select DEBUG_UART_8250
  638. help
  639. Say Y here if you want kernel low-level debugging support
  640. on OMAP730 based platforms on the UART2.
  641. config DEBUG_OMAP7XXUART3
  642. bool "Kernel low-level debugging via OMAP730 UART3"
  643. depends on ARCH_OMAP730
  644. select DEBUG_UART_8250
  645. help
  646. Say Y here if you want kernel low-level debugging support
  647. on OMAP730 based platforms on the UART3.
  648. config DEBUG_TI81XXUART1
  649. bool "Kernel low-level debugging messages via TI81XX UART1 (ti8148evm)"
  650. depends on ARCH_OMAP2PLUS
  651. select DEBUG_UART_8250
  652. config DEBUG_TI81XXUART2
  653. bool "Kernel low-level debugging messages via TI81XX UART2"
  654. depends on ARCH_OMAP2PLUS
  655. select DEBUG_UART_8250
  656. config DEBUG_TI81XXUART3
  657. bool "Kernel low-level debugging messages via TI81XX UART3 (ti8168evm)"
  658. depends on ARCH_OMAP2PLUS
  659. select DEBUG_UART_8250
  660. config DEBUG_AM33XXUART1
  661. bool "Kernel low-level debugging messages via AM33XX UART1"
  662. depends on ARCH_OMAP2PLUS
  663. select DEBUG_UART_8250
  664. config DEBUG_ZOOM_UART
  665. bool "Kernel low-level debugging messages via Zoom2/3 UART"
  666. depends on ARCH_OMAP2PLUS
  667. select DEBUG_OMAP2PLUS_UART
  668. config DEBUG_PICOXCELL_UART
  669. depends on ARCH_PICOXCELL
  670. bool "Use PicoXcell UART for low-level debug"
  671. select DEBUG_UART_8250
  672. help
  673. Say Y here if you want kernel low-level debugging support
  674. on PicoXcell based platforms.
  675. config DEBUG_PXA_UART1
  676. depends on ARCH_PXA
  677. bool "Use PXA UART1 for low-level debug"
  678. select DEBUG_UART_8250
  679. help
  680. Say Y here if you want kernel low-level debugging support
  681. on PXA UART1.
  682. config DEBUG_QCOM_UARTDM
  683. bool "Kernel low-level debugging messages via QCOM UARTDM"
  684. depends on ARCH_QCOM
  685. help
  686. Say Y here if you want the debug print routines to direct
  687. their output to the serial port on Qualcomm devices.
  688. ARCH DEBUG_UART_PHYS DEBUG_UART_VIRT
  689. APQ8064 0x16640000 0xf0040000
  690. APQ8084 0xf995e000 0xfa75e000
  691. IPQ4019 0x078af000 0xf78af000
  692. MSM8X60 0x19c40000 0xf0040000
  693. MSM8960 0x16440000 0xf0040000
  694. MSM8974 0xf991e000 0xfa71e000
  695. Please adjust DEBUG_UART_PHYS and DEBUG_UART_BASE configuration
  696. options based on your needs.
  697. config DEBUG_REALVIEW_STD_PORT
  698. bool "RealView Default UART"
  699. depends on ARCH_REALVIEW
  700. select DEBUG_UART_PL01X
  701. help
  702. Say Y here if you want the debug print routines to direct
  703. their output to the serial port on RealView EB, PB11MP, PBA8
  704. and PBX platforms.
  705. config DEBUG_REALVIEW_PB1176_PORT
  706. bool "RealView PB1176 UART"
  707. depends on MACH_REALVIEW_PB1176
  708. select DEBUG_UART_PL01X
  709. help
  710. Say Y here if you want the debug print routines to direct
  711. their output to the standard serial port on the RealView
  712. PB1176 platform.
  713. config DEBUG_RV1108_UART0
  714. bool "Kernel low-level debugging messages via Rockchip RV1108 UART0"
  715. depends on ARCH_ROCKCHIP
  716. select DEBUG_UART_8250
  717. help
  718. Say Y here if you want kernel low-level debugging support
  719. on Rockchip RV1108 based platforms.
  720. config DEBUG_RV1108_UART1
  721. bool "Kernel low-level debugging messages via Rockchip RV1108 UART1"
  722. depends on ARCH_ROCKCHIP
  723. select DEBUG_UART_8250
  724. help
  725. Say Y here if you want kernel low-level debugging support
  726. on Rockchip RV1108 based platforms.
  727. config DEBUG_RV1108_UART2
  728. bool "Kernel low-level debugging messages via Rockchip RV1108 UART2"
  729. depends on ARCH_ROCKCHIP
  730. select DEBUG_UART_8250
  731. help
  732. Say Y here if you want kernel low-level debugging support
  733. on Rockchip RV1108 based platforms.
  734. config DEBUG_RK29_UART0
  735. bool "Kernel low-level debugging messages via Rockchip RK29 UART0"
  736. depends on ARCH_ROCKCHIP
  737. select DEBUG_UART_8250
  738. help
  739. Say Y here if you want kernel low-level debugging support
  740. on Rockchip based platforms.
  741. config DEBUG_RK29_UART1
  742. bool "Kernel low-level debugging messages via Rockchip RK29 UART1"
  743. depends on ARCH_ROCKCHIP
  744. select DEBUG_UART_8250
  745. help
  746. Say Y here if you want kernel low-level debugging support
  747. on Rockchip based platforms.
  748. config DEBUG_RK29_UART2
  749. bool "Kernel low-level debugging messages via Rockchip RK29 UART2"
  750. depends on ARCH_ROCKCHIP
  751. select DEBUG_UART_8250
  752. help
  753. Say Y here if you want kernel low-level debugging support
  754. on Rockchip based platforms.
  755. config DEBUG_RK3X_UART0
  756. bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART0"
  757. depends on ARCH_ROCKCHIP
  758. select DEBUG_UART_8250
  759. help
  760. Say Y here if you want kernel low-level debugging support
  761. on Rockchip based platforms.
  762. config DEBUG_RK3X_UART1
  763. bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART1"
  764. depends on ARCH_ROCKCHIP
  765. select DEBUG_UART_8250
  766. help
  767. Say Y here if you want kernel low-level debugging support
  768. on Rockchip based platforms.
  769. config DEBUG_RK3X_UART2
  770. bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART2"
  771. depends on ARCH_ROCKCHIP
  772. select DEBUG_UART_8250
  773. help
  774. Say Y here if you want kernel low-level debugging support
  775. on Rockchip based platforms.
  776. config DEBUG_RK3X_UART3
  777. bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART3"
  778. depends on ARCH_ROCKCHIP
  779. select DEBUG_UART_8250
  780. help
  781. Say Y here if you want kernel low-level debugging support
  782. on Rockchip based platforms.
  783. config DEBUG_RK32_UART2
  784. bool "Kernel low-level debugging messages via Rockchip RK32 UART2"
  785. depends on ARCH_ROCKCHIP
  786. select DEBUG_UART_8250
  787. help
  788. Say Y here if you want kernel low-level debugging support
  789. on Rockchip RK32xx based platforms.
  790. config DEBUG_R7S72100_SCIF2
  791. bool "Kernel low-level debugging messages via SCIF2 on R7S72100"
  792. depends on ARCH_R7S72100
  793. help
  794. Say Y here if you want kernel low-level debugging support
  795. via SCIF2 on Renesas RZ/A1H (R7S72100).
  796. config DEBUG_RCAR_GEN1_SCIF0
  797. bool "Kernel low-level debugging messages via SCIF0 on R8A7778"
  798. depends on ARCH_R8A7778
  799. help
  800. Say Y here if you want kernel low-level debugging support
  801. via SCIF0 on Renesas R-Car M1A (R8A7778).
  802. config DEBUG_RCAR_GEN1_SCIF2
  803. bool "Kernel low-level debugging messages via SCIF2 on R8A7779"
  804. depends on ARCH_R8A7779
  805. help
  806. Say Y here if you want kernel low-level debugging support
  807. via SCIF2 on Renesas R-Car H1 (R8A7779).
  808. config DEBUG_RCAR_GEN2_SCIF0
  809. bool "Kernel low-level debugging messages via SCIF0 on R-Car Gen2 and RZ/G1"
  810. depends on ARCH_R8A7743 || ARCH_R8A7744 || ARCH_R8A7790 || \
  811. ARCH_R8A7791 || ARCH_R8A7792 || ARCH_R8A7793
  812. help
  813. Say Y here if you want kernel low-level debugging support
  814. via SCIF0 on Renesas RZ/G1M (R8A7743), RZ/G1N (R8A7744),
  815. R-Car H2 (R8A7790), M2-W (R8A7791), V2H (R8A7792), or
  816. M2-N (R8A7793).
  817. config DEBUG_RCAR_GEN2_SCIF1
  818. bool "Kernel low-level debugging messages via SCIF1 on R8A77470"
  819. depends on ARCH_R8A77470
  820. help
  821. Say Y here if you want kernel low-level debugging support
  822. via SCIF1 on Renesas RZ/G1C (R8A77470).
  823. config DEBUG_RCAR_GEN2_SCIF2
  824. bool "Kernel low-level debugging messages via SCIF2 on R8A7794"
  825. depends on ARCH_R8A7794
  826. help
  827. Say Y here if you want kernel low-level debugging support
  828. via SCIF2 on Renesas R-Car E2 (R8A7794).
  829. config DEBUG_RCAR_GEN2_SCIF4
  830. bool "Kernel low-level debugging messages via SCIF4 on R8A7745"
  831. depends on ARCH_R8A7745
  832. help
  833. Say Y here if you want kernel low-level debugging support
  834. via SCIF4 on Renesas RZ/G1E (R8A7745).
  835. config DEBUG_RMOBILE_SCIFA0
  836. bool "Kernel low-level debugging messages via SCIFA0 on R8A73A4"
  837. depends on ARCH_R8A73A4
  838. help
  839. Say Y here if you want kernel low-level debugging support
  840. via SCIFA0 on Renesas R-Mobile APE6 (R8A73A4).
  841. config DEBUG_RMOBILE_SCIFA1
  842. bool "Kernel low-level debugging messages via SCIFA1 on R8A7740"
  843. depends on ARCH_R8A7740
  844. help
  845. Say Y here if you want kernel low-level debugging support
  846. via SCIFA1 on Renesas R-Mobile A1 (R8A7740).
  847. config DEBUG_RMOBILE_SCIFA4
  848. bool "Kernel low-level debugging messages via SCIFA4 on SH73A0"
  849. depends on ARCH_SH73A0
  850. help
  851. Say Y here if you want kernel low-level debugging support
  852. via SCIFA4 on Renesas SH-Mobile AG5 (SH73A0).
  853. config DEBUG_S3C_UART0
  854. depends on PLAT_SAMSUNG
  855. select DEBUG_EXYNOS_UART if ARCH_EXYNOS
  856. select DEBUG_S3C24XX_UART if ARCH_S3C24XX
  857. select DEBUG_S3C64XX_UART if ARCH_S3C64XX
  858. select DEBUG_S5PV210_UART if ARCH_S5PV210
  859. bool "Use Samsung S3C UART 0 for low-level debug"
  860. help
  861. Say Y here if you want the debug print routines to direct
  862. their output to UART 0. The port must have been initialised
  863. by the boot-loader before use.
  864. config DEBUG_S3C_UART1
  865. depends on PLAT_SAMSUNG
  866. select DEBUG_EXYNOS_UART if ARCH_EXYNOS
  867. select DEBUG_S3C24XX_UART if ARCH_S3C24XX
  868. select DEBUG_S3C64XX_UART if ARCH_S3C64XX
  869. select DEBUG_S5PV210_UART if ARCH_S5PV210
  870. bool "Use Samsung S3C UART 1 for low-level debug"
  871. help
  872. Say Y here if you want the debug print routines to direct
  873. their output to UART 1. The port must have been initialised
  874. by the boot-loader before use.
  875. config DEBUG_S3C_UART2
  876. depends on PLAT_SAMSUNG
  877. select DEBUG_EXYNOS_UART if ARCH_EXYNOS
  878. select DEBUG_S3C24XX_UART if ARCH_S3C24XX
  879. select DEBUG_S3C64XX_UART if ARCH_S3C64XX
  880. select DEBUG_S5PV210_UART if ARCH_S5PV210
  881. bool "Use Samsung S3C UART 2 for low-level debug"
  882. help
  883. Say Y here if you want the debug print routines to direct
  884. their output to UART 2. The port must have been initialised
  885. by the boot-loader before use.
  886. config DEBUG_S3C_UART3
  887. depends on PLAT_SAMSUNG && (ARCH_EXYNOS || ARCH_S5PV210)
  888. select DEBUG_EXYNOS_UART if ARCH_EXYNOS
  889. select DEBUG_S3C64XX_UART if ARCH_S3C64XX
  890. select DEBUG_S5PV210_UART if ARCH_S5PV210
  891. bool "Use Samsung S3C UART 3 for low-level debug"
  892. help
  893. Say Y here if you want the debug print routines to direct
  894. their output to UART 3. The port must have been initialised
  895. by the boot-loader before use.
  896. config DEBUG_S3C2410_UART0
  897. depends on ARCH_S3C24XX
  898. select DEBUG_S3C2410_UART
  899. bool "Use S3C2410/S3C2412 UART 0 for low-level debug"
  900. help
  901. Say Y here if you want the debug print routines to direct
  902. their output to UART 0. The port must have been initialised
  903. by the boot-loader before use.
  904. config DEBUG_S3C2410_UART1
  905. depends on ARCH_S3C24XX
  906. select DEBUG_S3C2410_UART
  907. bool "Use S3C2410/S3C2412 UART 1 for low-level debug"
  908. help
  909. Say Y here if you want the debug print routines to direct
  910. their output to UART 1. The port must have been initialised
  911. by the boot-loader before use.
  912. config DEBUG_S3C2410_UART2
  913. depends on ARCH_S3C24XX
  914. select DEBUG_S3C2410_UART
  915. bool "Use S3C2410/S3C2412 UART 2 for low-level debug"
  916. help
  917. Say Y here if you want the debug print routines to direct
  918. their output to UART 2. The port must have been initialised
  919. by the boot-loader before use.
  920. config DEBUG_SA1100
  921. depends on ARCH_SA1100
  922. bool "Use SA1100 UARTs for low-level debug"
  923. help
  924. Say Y here if you want kernel low-level debugging support
  925. on SA-11x0 UART ports. The kernel will check for the first
  926. enabled UART in a sequence 3-1-2.
  927. config DEBUG_SOCFPGA_UART0
  928. depends on ARCH_SOCFPGA
  929. bool "Use SOCFPGA UART0 for low-level debug"
  930. select DEBUG_UART_8250
  931. help
  932. Say Y here if you want kernel low-level debugging support
  933. on SOCFPGA(Cyclone 5 and Arria 5) based platforms.
  934. config DEBUG_SOCFPGA_UART1
  935. depends on ARCH_SOCFPGA
  936. bool "Use SOCFPGA UART1 for low-level debug"
  937. select DEBUG_UART_8250
  938. help
  939. Say Y here if you want kernel low-level debugging support
  940. on SOCFPGA(Arria 10) based platforms.
  941. config DEBUG_SUN9I_UART0
  942. bool "Kernel low-level debugging messages via sun9i UART0"
  943. depends on MACH_SUN9I
  944. select DEBUG_UART_8250
  945. help
  946. Say Y here if you want kernel low-level debugging support
  947. on Allwinner A80 based platforms on the UART0.
  948. config DEBUG_SUNXI_UART0
  949. bool "Kernel low-level debugging messages via sunXi UART0"
  950. depends on ARCH_SUNXI
  951. select DEBUG_UART_8250
  952. help
  953. Say Y here if you want kernel low-level debugging support
  954. on Allwinner A1X based platforms on the UART0.
  955. config DEBUG_SUNXI_UART1
  956. bool "Kernel low-level debugging messages via sunXi UART1"
  957. depends on ARCH_SUNXI
  958. select DEBUG_UART_8250
  959. help
  960. Say Y here if you want kernel low-level debugging support
  961. on Allwinner A1X based platforms on the UART1.
  962. config DEBUG_SUNXI_R_UART
  963. bool "Kernel low-level debugging messages via sunXi R_UART"
  964. depends on MACH_SUN6I || MACH_SUN8I
  965. select DEBUG_UART_8250
  966. help
  967. Say Y here if you want kernel low-level debugging support
  968. on Allwinner A31/A23 based platforms on the R_UART.
  969. config DEBUG_SIRFPRIMA2_UART1
  970. bool "Kernel low-level debugging messages via SiRFprimaII UART1"
  971. depends on ARCH_PRIMA2
  972. select DEBUG_SIRFSOC_UART
  973. help
  974. Say Y here if you want the debug print routines to direct
  975. their output to the uart1 port on SiRFprimaII devices.
  976. config DEBUG_SIRFATLAS7_UART0
  977. bool "Kernel low-level debugging messages via SiRFatlas7 UART0"
  978. depends on ARCH_ATLAS7
  979. select DEBUG_SIRFSOC_UART
  980. help
  981. Say Y here if you want the debug print routines to direct
  982. their output to the uart0 port on SiRFATLAS7 devices.The uart0
  983. is used on SiRFATLAS7 as a extra debug port.sometimes an extra
  984. debug port can be very useful.
  985. config DEBUG_SIRFATLAS7_UART1
  986. bool "Kernel low-level debugging messages via SiRFatlas7 UART1"
  987. depends on ARCH_ATLAS7
  988. select DEBUG_SIRFSOC_UART
  989. help
  990. Say Y here if you want the debug print routines to direct
  991. their output to the uart1 port on SiRFATLAS7 devices.
  992. config DEBUG_SPEAR3XX
  993. bool "Kernel low-level debugging messages via ST SPEAr 3xx/6xx UART"
  994. depends on ARCH_SPEAR3XX || ARCH_SPEAR6XX
  995. select DEBUG_UART_PL01X
  996. help
  997. Say Y here if you want kernel low-level debugging support
  998. on ST SPEAr based platforms.
  999. config DEBUG_SPEAR13XX
  1000. bool "Kernel low-level debugging messages via ST SPEAr 13xx UART"
  1001. depends on ARCH_SPEAR13XX
  1002. select DEBUG_UART_PL01X
  1003. help
  1004. Say Y here if you want kernel low-level debugging support
  1005. on ST SPEAr13xx based platforms.
  1006. config STIH41X_DEBUG_ASC2
  1007. bool "Use StiH415/416 ASC2 UART for low-level debug"
  1008. depends on ARCH_STI
  1009. select DEBUG_STI_UART
  1010. help
  1011. Say Y here if you want kernel low-level debugging support
  1012. on STiH415/416 based platforms like b2000, which has
  1013. default UART wired up to ASC2.
  1014. If unsure, say N.
  1015. config STIH41X_DEBUG_SBC_ASC1
  1016. bool "Use StiH415/416 SBC ASC1 UART for low-level debug"
  1017. depends on ARCH_STI
  1018. select DEBUG_STI_UART
  1019. help
  1020. Say Y here if you want kernel low-level debugging support
  1021. on STiH415/416 based platforms like b2020. which has
  1022. default UART wired up to SBC ASC1.
  1023. If unsure, say N.
  1024. config TEGRA_DEBUG_UART_AUTO_ODMDATA
  1025. bool "Kernel low-level debugging messages via Tegra UART via ODMDATA"
  1026. depends on ARCH_TEGRA
  1027. select DEBUG_TEGRA_UART
  1028. help
  1029. Automatically determines which UART to use for low-level
  1030. debug based on the ODMDATA value. This value is part of
  1031. the BCT, and is written to the boot memory device using
  1032. nvflash, or other flashing tool. When bits 19:18 are 3,
  1033. then bits 17:15 indicate which UART to use; 0/1/2/3/4
  1034. are UART A/B/C/D/E.
  1035. config TEGRA_DEBUG_UARTA
  1036. bool "Kernel low-level debugging messages via Tegra UART A"
  1037. depends on ARCH_TEGRA
  1038. select DEBUG_TEGRA_UART
  1039. help
  1040. Say Y here if you want kernel low-level debugging support
  1041. on Tegra based platforms.
  1042. config TEGRA_DEBUG_UARTB
  1043. bool "Kernel low-level debugging messages via Tegra UART B"
  1044. depends on ARCH_TEGRA
  1045. select DEBUG_TEGRA_UART
  1046. help
  1047. Say Y here if you want kernel low-level debugging support
  1048. on Tegra based platforms.
  1049. config TEGRA_DEBUG_UARTC
  1050. bool "Kernel low-level debugging messages via Tegra UART C"
  1051. depends on ARCH_TEGRA
  1052. select DEBUG_TEGRA_UART
  1053. help
  1054. Say Y here if you want kernel low-level debugging support
  1055. on Tegra based platforms.
  1056. config TEGRA_DEBUG_UARTD
  1057. bool "Kernel low-level debugging messages via Tegra UART D"
  1058. depends on ARCH_TEGRA
  1059. select DEBUG_TEGRA_UART
  1060. help
  1061. Say Y here if you want kernel low-level debugging support
  1062. on Tegra based platforms.
  1063. config TEGRA_DEBUG_UARTE
  1064. bool "Kernel low-level debugging messages via Tegra UART E"
  1065. depends on ARCH_TEGRA
  1066. select DEBUG_TEGRA_UART
  1067. help
  1068. Say Y here if you want kernel low-level debugging support
  1069. on Tegra based platforms.
  1070. config DEBUG_U300_UART
  1071. bool "Kernel low-level debugging messages via U300 UART0"
  1072. depends on ARCH_U300
  1073. select DEBUG_UART_PL01X
  1074. help
  1075. Say Y here if you want the debug print routines to direct
  1076. their output to the uart port on U300 devices.
  1077. config DEBUG_UX500_UART
  1078. depends on ARCH_U8500
  1079. bool "Use Ux500 UART for low-level debug"
  1080. help
  1081. Say Y here if you want kernel low-level debugging support
  1082. on Ux500 based platforms.
  1083. config DEBUG_VERSATILE
  1084. bool "Kernel low-level debugging messages via ARM Versatile UART"
  1085. depends on ARCH_VERSATILE
  1086. select DEBUG_UART_PL01X
  1087. help
  1088. Say Y here if you want kernel low-level debugging support
  1089. on ARM Versatile platforms.
  1090. config DEBUG_VEXPRESS_UART0_DETECT
  1091. bool "Autodetect UART0 on Versatile Express Cortex-A core tiles"
  1092. depends on ARCH_VEXPRESS && CPU_CP15_MMU
  1093. help
  1094. This option enables a simple heuristic which tries to determine
  1095. the motherboard's memory map variant (original or RS1) and then
  1096. choose the relevant UART0 base address.
  1097. Note that this will only work with standard A-class core tiles,
  1098. and may fail with non-standard SMM or custom software models.
  1099. config DEBUG_VEXPRESS_UART0_CA9
  1100. bool "Use PL011 UART0 at 0x10009000 (V2P-CA9 core tile)"
  1101. depends on ARCH_VEXPRESS
  1102. select DEBUG_UART_PL01X
  1103. help
  1104. This option selects UART0 at 0x10009000. Except for custom models,
  1105. this applies only to the V2P-CA9 tile.
  1106. config DEBUG_VEXPRESS_UART0_RS1
  1107. bool "Use PL011 UART0 at 0x1c090000 (RS1 complaint tiles)"
  1108. depends on ARCH_VEXPRESS
  1109. select DEBUG_UART_PL01X
  1110. help
  1111. This option selects UART0 at 0x1c090000. This applies to most
  1112. of the tiles using the RS1 memory map, including all new A-class
  1113. core tiles, FPGA-based SMMs and software models.
  1114. config DEBUG_VEXPRESS_UART0_CRX
  1115. bool "Use PL011 UART0 at 0xb0090000 (Cortex-R compliant tiles)"
  1116. depends on ARCH_VEXPRESS && !MMU
  1117. select DEBUG_UART_PL01X
  1118. help
  1119. This option selects UART0 at 0xb0090000. This is appropriate for
  1120. Cortex-R series tiles and SMMs, such as Cortex-R5 and Cortex-R7
  1121. config DEBUG_VF_UART
  1122. bool "Vybrid UART"
  1123. depends on SOC_VF610
  1124. help
  1125. Say Y here if you want kernel low-level debugging support
  1126. on Vybrid based platforms.
  1127. config DEBUG_VT8500_UART0
  1128. bool "Use UART0 on VIA/Wondermedia SoCs"
  1129. depends on ARCH_VT8500
  1130. help
  1131. This option selects UART0 on VIA/Wondermedia System-on-a-chip
  1132. devices, including VT8500, WM8505, WM8650 and WM8850.
  1133. config DEBUG_ZTE_ZX
  1134. bool "Use ZTE ZX UART"
  1135. select DEBUG_UART_PL01X
  1136. depends on ARCH_ZX
  1137. help
  1138. Say Y here if you are enabling ZTE ZX296702 SOC and need
  1139. debug uart support.
  1140. This option is preferred over the platform specific
  1141. options; the platform specific options are deprecated
  1142. and will be soon removed.
  1143. config DEBUG_ZYNQ_UART0
  1144. bool "Kernel low-level debugging on Xilinx Zynq using UART0"
  1145. depends on ARCH_ZYNQ
  1146. help
  1147. Say Y here if you want the debug print routines to direct
  1148. their output to UART0 on the Zynq platform.
  1149. config DEBUG_ZYNQ_UART1
  1150. bool "Kernel low-level debugging on Xilinx Zynq using UART1"
  1151. depends on ARCH_ZYNQ
  1152. help
  1153. Say Y here if you want the debug print routines to direct
  1154. their output to UART1 on the Zynq platform.
  1155. If you have a ZC702 board and want early boot messages to
  1156. appear on the USB serial adaptor, select this option.
  1157. config DEBUG_ICEDCC
  1158. bool "Kernel low-level debugging via EmbeddedICE DCC channel"
  1159. help
  1160. Say Y here if you want the debug print routines to direct
  1161. their output to the EmbeddedICE macrocell's DCC channel using
  1162. co-processor 14. This is known to work on the ARM9 style ICE
  1163. channel and on the XScale with the PEEDI.
  1164. Note that the system will appear to hang during boot if there
  1165. is nothing connected to read from the DCC.
  1166. config DEBUG_SEMIHOSTING
  1167. bool "Kernel low-level debug output via semihosting I/O"
  1168. help
  1169. Semihosting enables code running on an ARM target to use
  1170. the I/O facilities on a host debugger/emulator through a
  1171. simple SVC call. The host debugger or emulator must have
  1172. semihosting enabled for the special svc call to be trapped
  1173. otherwise the kernel will crash.
  1174. This is known to work with OpenOCD, as well as
  1175. ARM's Fast Models, or any other controlling environment
  1176. that implements semihosting.
  1177. For more details about semihosting, please see
  1178. chapter 8 of DUI0203I_rvct_developer_guide.pdf from ARM Ltd.
  1179. config DEBUG_LL_UART_8250
  1180. bool "Kernel low-level debugging via 8250 UART"
  1181. help
  1182. Say Y here if you wish the debug print routes to direct
  1183. their output to an 8250 UART. You can use this option
  1184. to provide the parameters for the 8250 UART rather than
  1185. selecting one of the platform specific options above if
  1186. you know the parameters for the port.
  1187. This option is preferred over the platform specific
  1188. options; the platform specific options are deprecated
  1189. and will be soon removed.
  1190. config DEBUG_LL_UART_EFM32
  1191. bool "Kernel low-level debugging via efm32 UART"
  1192. depends on ARCH_EFM32
  1193. help
  1194. Say Y here if you want the debug print routines to direct
  1195. their output to an UART or USART port on efm32 based
  1196. machines. Use the following addresses for DEBUG_UART_PHYS:
  1197. 0x4000c000 | USART0
  1198. 0x4000c400 | USART1
  1199. 0x4000c800 | USART2
  1200. 0x4000e000 | UART0
  1201. 0x4000e400 | UART1
  1202. config DEBUG_LL_UART_PL01X
  1203. bool "Kernel low-level debugging via ARM Ltd PL01x Primecell UART"
  1204. help
  1205. Say Y here if you wish the debug print routes to direct
  1206. their output to a PL01x Primecell UART. You can use
  1207. this option to provide the parameters for the UART
  1208. rather than selecting one of the platform specific
  1209. options above if you know the parameters for the port.
  1210. This option is preferred over the platform specific
  1211. options; the platform specific options are deprecated
  1212. and will be soon removed.
  1213. endchoice
  1214. config DEBUG_AT91_UART
  1215. bool
  1216. depends on ARCH_AT91
  1217. config DEBUG_EXYNOS_UART
  1218. bool
  1219. config DEBUG_S3C2410_UART
  1220. bool
  1221. select DEBUG_S3C24XX_UART
  1222. config DEBUG_S3C24XX_UART
  1223. bool
  1224. config DEBUG_S3C64XX_UART
  1225. bool
  1226. config DEBUG_S5PV210_UART
  1227. bool
  1228. config DEBUG_OMAP2PLUS_UART
  1229. bool
  1230. depends on ARCH_OMAP2PLUS
  1231. config DEBUG_IMX_UART_PORT
  1232. int "i.MX Debug UART Port Selection" if DEBUG_IMX1_UART || \
  1233. DEBUG_IMX25_UART || \
  1234. DEBUG_IMX21_IMX27_UART || \
  1235. DEBUG_IMX31_UART || \
  1236. DEBUG_IMX35_UART || \
  1237. DEBUG_IMX50_UART || \
  1238. DEBUG_IMX51_UART || \
  1239. DEBUG_IMX53_UART || \
  1240. DEBUG_IMX6Q_UART || \
  1241. DEBUG_IMX6SL_UART || \
  1242. DEBUG_IMX6SX_UART || \
  1243. DEBUG_IMX6UL_UART || \
  1244. DEBUG_IMX7D_UART
  1245. default 1
  1246. depends on ARCH_MXC
  1247. help
  1248. Choose UART port on which kernel low-level debug messages
  1249. should be output.
  1250. config DEBUG_VF_UART_PORT
  1251. int "Vybrid Debug UART Port Selection" if DEBUG_VF_UART
  1252. default 1
  1253. range 0 3
  1254. depends on SOC_VF610
  1255. help
  1256. Choose UART port on which kernel low-level debug messages
  1257. should be output.
  1258. config DEBUG_TEGRA_UART
  1259. bool
  1260. depends on ARCH_TEGRA
  1261. config DEBUG_STI_UART
  1262. bool
  1263. depends on ARCH_STI
  1264. config DEBUG_SIRFSOC_UART
  1265. bool
  1266. depends on ARCH_SIRF
  1267. config DEBUG_LL_INCLUDE
  1268. string
  1269. default "debug/sa1100.S" if DEBUG_SA1100
  1270. default "debug/palmchip.S" if DEBUG_UART_8250_PALMCHIP
  1271. default "debug/8250.S" if DEBUG_LL_UART_8250 || DEBUG_UART_8250
  1272. default "debug/at91.S" if DEBUG_AT91_UART
  1273. default "debug/asm9260.S" if DEBUG_ASM9260_UART
  1274. default "debug/clps711x.S" if DEBUG_CLPS711X_UART1 || DEBUG_CLPS711X_UART2
  1275. default "debug/dc21285.S" if DEBUG_DC21285_PORT
  1276. default "debug/meson.S" if DEBUG_MESON_UARTAO
  1277. default "debug/pl01x.S" if DEBUG_LL_UART_PL01X || DEBUG_UART_PL01X
  1278. default "debug/exynos.S" if DEBUG_EXYNOS_UART
  1279. default "debug/efm32.S" if DEBUG_LL_UART_EFM32
  1280. default "debug/icedcc.S" if DEBUG_ICEDCC
  1281. default "debug/imx.S" if DEBUG_IMX1_UART || \
  1282. DEBUG_IMX25_UART || \
  1283. DEBUG_IMX21_IMX27_UART || \
  1284. DEBUG_IMX31_UART || \
  1285. DEBUG_IMX35_UART || \
  1286. DEBUG_IMX50_UART || \
  1287. DEBUG_IMX51_UART || \
  1288. DEBUG_IMX53_UART ||\
  1289. DEBUG_IMX6Q_UART || \
  1290. DEBUG_IMX6SL_UART || \
  1291. DEBUG_IMX6SX_UART || \
  1292. DEBUG_IMX6UL_UART || \
  1293. DEBUG_IMX7D_UART
  1294. default "debug/ks8695.S" if DEBUG_KS8695_UART
  1295. default "debug/msm.S" if DEBUG_QCOM_UARTDM
  1296. default "debug/netx.S" if DEBUG_NETX_UART
  1297. default "debug/omap2plus.S" if DEBUG_OMAP2PLUS_UART
  1298. default "debug/renesas-scif.S" if DEBUG_R7S72100_SCIF2
  1299. default "debug/renesas-scif.S" if DEBUG_RCAR_GEN1_SCIF0
  1300. default "debug/renesas-scif.S" if DEBUG_RCAR_GEN1_SCIF2
  1301. default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF0
  1302. default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF1
  1303. default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF2
  1304. default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF4
  1305. default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA0
  1306. default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA1
  1307. default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA4
  1308. default "debug/s3c24xx.S" if DEBUG_S3C24XX_UART || DEBUG_S3C64XX_UART
  1309. default "debug/s5pv210.S" if DEBUG_S5PV210_UART
  1310. default "debug/sirf.S" if DEBUG_SIRFSOC_UART
  1311. default "debug/sti.S" if DEBUG_STI_UART
  1312. default "debug/tegra.S" if DEBUG_TEGRA_UART
  1313. default "debug/ux500.S" if DEBUG_UX500_UART
  1314. default "debug/vexpress.S" if DEBUG_VEXPRESS_UART0_DETECT
  1315. default "debug/vf.S" if DEBUG_VF_UART
  1316. default "debug/vt8500.S" if DEBUG_VT8500_UART0
  1317. default "debug/zynq.S" if DEBUG_ZYNQ_UART0 || DEBUG_ZYNQ_UART1
  1318. default "debug/bcm63xx.S" if DEBUG_BCM63XX_UART
  1319. default "debug/digicolor.S" if DEBUG_DIGICOLOR_UA0
  1320. default "debug/brcmstb.S" if DEBUG_BRCMSTB_UART
  1321. default "mach/debug-macro.S"
  1322. # Compatibility options for PL01x
  1323. config DEBUG_UART_PL01X
  1324. bool
  1325. # Compatibility options for 8250
  1326. config DEBUG_UART_8250
  1327. def_bool ARCH_EBSA110 || \
  1328. ARCH_IOP13XX || ARCH_IOP32X || ARCH_IOP33X || ARCH_IXP4XX || \
  1329. ARCH_RPC
  1330. config DEBUG_UART_PHYS
  1331. hex "Physical base address of debug UART"
  1332. default 0x00100a00 if DEBUG_NETX_UART
  1333. default 0x01c20000 if DEBUG_DAVINCI_DMx_UART0
  1334. default 0x01c28000 if DEBUG_SUNXI_UART0
  1335. default 0x01c28400 if DEBUG_SUNXI_UART1
  1336. default 0x01d0c000 if DEBUG_DAVINCI_DA8XX_UART1
  1337. default 0x01d0d000 if DEBUG_DAVINCI_DA8XX_UART2
  1338. default 0x01f02800 if DEBUG_SUNXI_R_UART
  1339. default 0x02530c00 if DEBUG_KEYSTONE_UART0
  1340. default 0x02531000 if DEBUG_KEYSTONE_UART1
  1341. default 0x03010fe0 if ARCH_RPC
  1342. default 0x07000000 if DEBUG_SUN9I_UART0
  1343. default 0x09405000 if DEBUG_ZTE_ZX
  1344. default 0x10009000 if DEBUG_REALVIEW_STD_PORT || \
  1345. DEBUG_VEXPRESS_UART0_CA9
  1346. default 0x1010c000 if DEBUG_REALVIEW_PB1176_PORT
  1347. default 0x10124000 if DEBUG_RK3X_UART0
  1348. default 0x10126000 if DEBUG_RK3X_UART1
  1349. default 0x101f1000 if DEBUG_VERSATILE
  1350. default 0x101fb000 if DEBUG_NOMADIK_UART
  1351. default 0x10210000 if DEBUG_RV1108_UART2
  1352. default 0x10220000 if DEBUG_RV1108_UART1
  1353. default 0x10230000 if DEBUG_RV1108_UART0
  1354. default 0x11002000 if DEBUG_MT8127_UART0
  1355. default 0x11006000 if DEBUG_MT6589_UART0
  1356. default 0x11009000 if DEBUG_MT8135_UART3
  1357. default 0x16000000 if DEBUG_INTEGRATOR
  1358. default 0x18000300 if DEBUG_BCM_5301X
  1359. default 0x18000400 if DEBUG_BCM_HR2
  1360. default 0x18010000 if DEBUG_SIRFATLAS7_UART0
  1361. default 0x18020000 if DEBUG_SIRFATLAS7_UART1
  1362. default 0x18023000 if DEBUG_BCM_IPROC_UART3
  1363. default 0x1c090000 if DEBUG_VEXPRESS_UART0_RS1
  1364. default 0x20001000 if DEBUG_HIP01_UART
  1365. default 0x20060000 if DEBUG_RK29_UART0
  1366. default 0x20064000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
  1367. default 0x20068000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
  1368. default 0x20201000 if DEBUG_BCM2835
  1369. default 0x3e000000 if DEBUG_BCM_KONA_UART
  1370. default 0x3f201000 if DEBUG_BCM2836
  1371. default 0x4000e400 if DEBUG_LL_UART_EFM32
  1372. default 0x40028000 if DEBUG_AT91_SAMV7_USART1
  1373. default 0x40081000 if DEBUG_LPC18XX_UART0
  1374. default 0x40090000 if DEBUG_LPC32XX
  1375. default 0x40100000 if DEBUG_PXA_UART1
  1376. default 0x42000000 if DEBUG_GEMINI
  1377. default 0x44e09000 if DEBUG_AM33XXUART1
  1378. default 0x48020000 if DEBUG_OMAP4UART3 || DEBUG_TI81XXUART1
  1379. default 0x48022000 if DEBUG_TI81XXUART2
  1380. default 0x48024000 if DEBUG_TI81XXUART3
  1381. default 0x4806a000 if DEBUG_OMAP2UART1 || DEBUG_OMAP3UART1 || \
  1382. DEBUG_OMAP4UART1 || DEBUG_OMAP5UART1
  1383. default 0x4806c000 if DEBUG_OMAP2UART2 || DEBUG_OMAP3UART2 || \
  1384. DEBUG_OMAP4UART2 || DEBUG_OMAP5UART2
  1385. default 0x4806e000 if DEBUG_OMAP2UART3 || DEBUG_OMAP4UART4
  1386. default 0x49020000 if DEBUG_OMAP3UART3
  1387. default 0x49042000 if DEBUG_OMAP3UART4
  1388. default 0x50000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \
  1389. DEBUG_S3C2410_UART0)
  1390. default 0x50004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \
  1391. DEBUG_S3C2410_UART1)
  1392. default 0x50008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \
  1393. DEBUG_S3C2410_UART2)
  1394. default 0x78000000 if DEBUG_CNS3XXX
  1395. default 0x7c0003f8 if DEBUG_FOOTBRIDGE_COM1
  1396. default 0x7f005000 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART0
  1397. default 0x7f005400 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART1
  1398. default 0x7f005800 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART2
  1399. default 0x7f005c00 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART3
  1400. default 0x80010000 if DEBUG_ASM9260_UART
  1401. default 0x80070000 if DEBUG_IMX23_UART
  1402. default 0x80074000 if DEBUG_IMX28_UART
  1403. default 0x80230000 if DEBUG_PICOXCELL_UART
  1404. default 0x808c0000 if DEBUG_EP93XX || ARCH_EP93XX
  1405. default 0x90020000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART
  1406. default 0xb0060000 if DEBUG_SIRFPRIMA2_UART1
  1407. default 0xb0090000 if DEBUG_VEXPRESS_UART0_CRX
  1408. default 0xc0013000 if DEBUG_U300_UART
  1409. default 0xc8000000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
  1410. default 0xc8000003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
  1411. default 0xd0000000 if DEBUG_SPEAR3XX
  1412. default 0xd0012000 if DEBUG_MVEBU_UART0
  1413. default 0xc81004c0 if DEBUG_MESON_UARTAO
  1414. default 0xd4017000 if DEBUG_MMP_UART2
  1415. default 0xd4018000 if DEBUG_MMP_UART3
  1416. default 0xe0000000 if DEBUG_SPEAR13XX
  1417. default 0xe4007000 if DEBUG_HIP04_UART
  1418. default 0xe6c40000 if DEBUG_RMOBILE_SCIFA0
  1419. default 0xe6c50000 if DEBUG_RMOBILE_SCIFA1
  1420. default 0xe6c80000 if DEBUG_RMOBILE_SCIFA4
  1421. default 0xe6e58000 if DEBUG_RCAR_GEN2_SCIF2
  1422. default 0xe6e60000 if DEBUG_RCAR_GEN2_SCIF0
  1423. default 0xe6e68000 if DEBUG_RCAR_GEN2_SCIF1
  1424. default 0xe6ee0000 if DEBUG_RCAR_GEN2_SCIF4
  1425. default 0xe8008000 if DEBUG_R7S72100_SCIF2
  1426. default 0xf0000be0 if ARCH_EBSA110
  1427. default 0xf1012000 if DEBUG_MVEBU_UART0_ALTERNATE
  1428. default 0xf1012100 if DEBUG_MVEBU_UART1_ALTERNATE
  1429. default 0xf7fc9000 if DEBUG_BERLIN_UART
  1430. default 0xf8020000 if DEBUG_AT91_SAMA5D2_UART1
  1431. default 0xf8b00000 if DEBUG_HIX5HD2_UART
  1432. default 0xf991e000 if DEBUG_QCOM_UARTDM
  1433. default 0xfc00c000 if DEBUG_AT91_SAMA5D4_USART3
  1434. default 0xfcb00000 if DEBUG_HI3620_UART
  1435. default 0xfd883000 if DEBUG_ALPINE_UART0
  1436. default 0xfe800000 if ARCH_IOP32X
  1437. default 0xff690000 if DEBUG_RK32_UART2
  1438. default 0xffc02000 if DEBUG_SOCFPGA_UART0
  1439. default 0xffc02100 if DEBUG_SOCFPGA_UART1
  1440. default 0xffd82340 if ARCH_IOP13XX
  1441. default 0xffe40000 if DEBUG_RCAR_GEN1_SCIF0
  1442. default 0xffe42000 if DEBUG_RCAR_GEN1_SCIF2
  1443. default 0xfff36000 if DEBUG_HIGHBANK_UART
  1444. default 0xfffb0000 if DEBUG_OMAP1UART1 || DEBUG_OMAP7XXUART1
  1445. default 0xfffb0800 if DEBUG_OMAP1UART2 || DEBUG_OMAP7XXUART2
  1446. default 0xfffb9800 if DEBUG_OMAP1UART3 || DEBUG_OMAP7XXUART3
  1447. default 0xfffe8600 if DEBUG_BCM63XX_UART
  1448. default 0xffffee00 if DEBUG_AT91_SAM9263_DBGU
  1449. default 0xfffff200 if DEBUG_AT91_RM9200_DBGU
  1450. default 0xfffff700 if ARCH_IOP33X
  1451. depends on ARCH_EP93XX || \
  1452. DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
  1453. DEBUG_LL_UART_EFM32 || \
  1454. DEBUG_UART_8250 || DEBUG_UART_PL01X || DEBUG_MESON_UARTAO || \
  1455. DEBUG_NETX_UART || \
  1456. DEBUG_QCOM_UARTDM || DEBUG_R7S72100_SCIF2 || \
  1457. DEBUG_RCAR_GEN1_SCIF0 || DEBUG_RCAR_GEN1_SCIF2 || \
  1458. DEBUG_RCAR_GEN2_SCIF0 || DEBUG_RCAR_GEN2_SCIF1 || \
  1459. DEBUG_RCAR_GEN2_SCIF2 || DEBUG_RCAR_GEN2_SCIF4 || \
  1460. DEBUG_RMOBILE_SCIFA0 || DEBUG_RMOBILE_SCIFA1 || \
  1461. DEBUG_RMOBILE_SCIFA4 || DEBUG_S3C24XX_UART || \
  1462. DEBUG_S3C64XX_UART || \
  1463. DEBUG_BCM63XX_UART || DEBUG_ASM9260_UART || \
  1464. DEBUG_SIRFSOC_UART || DEBUG_DIGICOLOR_UA0 || \
  1465. DEBUG_AT91_UART
  1466. config DEBUG_UART_VIRT
  1467. hex "Virtual base address of debug UART"
  1468. default 0xc881f000 if DEBUG_RV1108_UART2
  1469. default 0xc8821000 if DEBUG_RV1108_UART1
  1470. default 0xc8912000 if DEBUG_RV1108_UART0
  1471. default 0xe0000a00 if DEBUG_NETX_UART
  1472. default 0xe0010fe0 if ARCH_RPC
  1473. default 0xf0000be0 if ARCH_EBSA110
  1474. default 0xf0010000 if DEBUG_ASM9260_UART
  1475. default 0xf01fb000 if DEBUG_NOMADIK_UART
  1476. default 0xf0201000 if DEBUG_BCM2835 || DEBUG_BCM2836
  1477. default 0xf1000300 if DEBUG_BCM_5301X
  1478. default 0xf1000400 if DEBUG_BCM_HR2
  1479. default 0xf1002000 if DEBUG_MT8127_UART0
  1480. default 0xf1006000 if DEBUG_MT6589_UART0
  1481. default 0xf1009000 if DEBUG_MT8135_UART3
  1482. default 0xf1023000 if DEBUG_BCM_IPROC_UART3
  1483. default 0xf11f1000 if DEBUG_VERSATILE
  1484. default 0xf1600000 if DEBUG_INTEGRATOR
  1485. default 0xf1c28000 if DEBUG_SUNXI_UART0
  1486. default 0xf1c28400 if DEBUG_SUNXI_UART1
  1487. default 0xf1f02800 if DEBUG_SUNXI_R_UART
  1488. default 0xf31004c0 if DEBUG_MESON_UARTAO
  1489. default 0xf4090000 if DEBUG_LPC32XX
  1490. default 0xf4200000 if DEBUG_GEMINI
  1491. default 0xf6200000 if DEBUG_PXA_UART1
  1492. default 0xf7000000 if DEBUG_SUN9I_UART0
  1493. default 0xf7000000 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART0
  1494. default 0xf7000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \
  1495. DEBUG_S3C2410_UART0)
  1496. default 0xf7000400 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART1
  1497. default 0xf7000800 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART2
  1498. default 0xf7000c00 if DEBUG_S3C64XX_UART && DEBUG_S3C_UART3
  1499. default 0xf7004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \
  1500. DEBUG_S3C2410_UART1)
  1501. default 0xf7008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \
  1502. DEBUG_S3C2410_UART2)
  1503. default 0xf7020000 if DEBUG_AT91_SAMA5D2_UART1
  1504. default 0xf7fc9000 if DEBUG_BERLIN_UART
  1505. default 0xf8007000 if DEBUG_HIP04_UART
  1506. default 0xf8009000 if DEBUG_VEXPRESS_UART0_CA9
  1507. default 0xf8090000 if DEBUG_VEXPRESS_UART0_RS1
  1508. default 0xf8ffee00 if DEBUG_AT91_SAM9263_DBGU
  1509. default 0xf8fff200 if DEBUG_AT91_RM9200_DBGU
  1510. default 0xf9e09000 if DEBUG_AM33XXUART1
  1511. default 0xfa020000 if DEBUG_OMAP4UART3 || DEBUG_TI81XXUART1
  1512. default 0xfa022000 if DEBUG_TI81XXUART2
  1513. default 0xfa024000 if DEBUG_TI81XXUART3
  1514. default 0xfa06a000 if DEBUG_OMAP2UART1 || DEBUG_OMAP3UART1 || \
  1515. DEBUG_OMAP4UART1 || DEBUG_OMAP5UART1
  1516. default 0xfa06c000 if DEBUG_OMAP2UART2 || DEBUG_OMAP3UART2 || \
  1517. DEBUG_OMAP4UART2 || DEBUG_OMAP5UART2
  1518. default 0xfa06e000 if DEBUG_OMAP2UART3 || DEBUG_OMAP4UART4
  1519. default 0xfa71e000 if DEBUG_QCOM_UARTDM
  1520. default 0xfb002000 if DEBUG_CNS3XXX
  1521. default 0xfb009000 if DEBUG_REALVIEW_STD_PORT
  1522. default 0xfb00c000 if DEBUG_AT91_SAMA5D4_USART3
  1523. default 0xfb020000 if DEBUG_OMAP3UART3
  1524. default 0xfb042000 if DEBUG_OMAP3UART4
  1525. default 0xfb10c000 if DEBUG_REALVIEW_PB1176_PORT
  1526. default 0xfc705000 if DEBUG_ZTE_ZX
  1527. default 0xfcfe8600 if DEBUG_BCM63XX_UART
  1528. default 0xfd000000 if DEBUG_SPEAR3XX || DEBUG_SPEAR13XX
  1529. default 0xfd012000 if DEBUG_MVEBU_UART0_ALTERNATE && ARCH_MV78XX0
  1530. default 0xfd883000 if DEBUG_ALPINE_UART0
  1531. default 0xfde12000 if DEBUG_MVEBU_UART0_ALTERNATE && ARCH_DOVE
  1532. default 0xfe012000 if DEBUG_MVEBU_UART0_ALTERNATE && ARCH_ORION5X
  1533. default 0xfe017000 if DEBUG_MMP_UART2
  1534. default 0xfe018000 if DEBUG_MMP_UART3
  1535. default 0xfe100000 if DEBUG_IMX23_UART || DEBUG_IMX28_UART
  1536. default 0xfe230000 if DEBUG_PICOXCELL_UART
  1537. default 0xfe300000 if DEBUG_BCM_KONA_UART
  1538. default 0xfe800000 if ARCH_IOP32X
  1539. default 0xfeb00000 if DEBUG_HI3620_UART || DEBUG_HIX5HD2_UART
  1540. default 0xfeb24000 if DEBUG_RK3X_UART0
  1541. default 0xfeb26000 if DEBUG_RK3X_UART1
  1542. default 0xfeb30c00 if DEBUG_KEYSTONE_UART0
  1543. default 0xfeb31000 if DEBUG_KEYSTONE_UART1
  1544. default 0xfec02000 if DEBUG_SOCFPGA_UART0
  1545. default 0xfec02100 if DEBUG_SOCFPGA_UART1
  1546. default 0xfec12000 if (DEBUG_MVEBU_UART0 || DEBUG_MVEBU_UART0_ALTERNATE) && ARCH_MVEBU
  1547. default 0xfec12100 if DEBUG_MVEBU_UART1_ALTERNATE
  1548. default 0xfec10000 if DEBUG_SIRFATLAS7_UART0
  1549. default 0xfec20000 if DEBUG_DAVINCI_DMx_UART0
  1550. default 0xfec20000 if DEBUG_SIRFATLAS7_UART1
  1551. default 0xfec60000 if DEBUG_SIRFPRIMA2_UART1
  1552. default 0xfec90000 if DEBUG_RK32_UART2
  1553. default 0xfed0c000 if DEBUG_DAVINCI_DA8XX_UART1
  1554. default 0xfed0d000 if DEBUG_DAVINCI_DA8XX_UART2
  1555. default 0xfed60000 if DEBUG_RK29_UART0
  1556. default 0xfed64000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
  1557. default 0xfed68000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
  1558. default 0xfedc0000 if DEBUG_EP93XX
  1559. default 0xfee003f8 if DEBUG_FOOTBRIDGE_COM1
  1560. default 0xfee20000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART
  1561. default 0xfee82340 if ARCH_IOP13XX
  1562. default 0xfef00000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
  1563. default 0xfef00003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
  1564. default 0xfef36000 if DEBUG_HIGHBANK_UART
  1565. default 0xfefb0000 if DEBUG_OMAP1UART1 || DEBUG_OMAP7XXUART1
  1566. default 0xfefb0800 if DEBUG_OMAP1UART2 || DEBUG_OMAP7XXUART2
  1567. default 0xfefb9800 if DEBUG_OMAP1UART3 || DEBUG_OMAP7XXUART3
  1568. default 0xfefff700 if ARCH_IOP33X
  1569. default 0xff003000 if DEBUG_U300_UART
  1570. default 0xffd01000 if DEBUG_HIP01_UART
  1571. default DEBUG_UART_PHYS if !MMU
  1572. depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
  1573. DEBUG_UART_8250 || DEBUG_UART_PL01X || DEBUG_MESON_UARTAO || \
  1574. DEBUG_NETX_UART || \
  1575. DEBUG_QCOM_UARTDM || DEBUG_S3C24XX_UART || \
  1576. DEBUG_S3C64XX_UART || \
  1577. DEBUG_BCM63XX_UART || DEBUG_ASM9260_UART || \
  1578. DEBUG_SIRFSOC_UART || DEBUG_DIGICOLOR_UA0 || \
  1579. DEBUG_AT91_UART
  1580. config DEBUG_UART_8250_SHIFT
  1581. int "Register offset shift for the 8250 debug UART"
  1582. depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
  1583. default 0 if DEBUG_FOOTBRIDGE_COM1 || ARCH_IOP32X || DEBUG_BCM_5301X || \
  1584. DEBUG_BCM_HR2 || DEBUG_OMAP7XXUART1 || DEBUG_OMAP7XXUART2 || \
  1585. DEBUG_OMAP7XXUART3
  1586. default 2
  1587. config DEBUG_UART_8250_WORD
  1588. bool "Use 32-bit accesses for 8250 UART"
  1589. depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
  1590. depends on DEBUG_UART_8250_SHIFT >= 2
  1591. default y if DEBUG_PICOXCELL_UART || \
  1592. DEBUG_SOCFPGA_UART0 || DEBUG_SOCFPGA_UART1 || \
  1593. DEBUG_KEYSTONE_UART0 || DEBUG_KEYSTONE_UART1 || \
  1594. DEBUG_ALPINE_UART0 || \
  1595. DEBUG_DAVINCI_DMx_UART0 || DEBUG_DAVINCI_DA8XX_UART1 || \
  1596. DEBUG_DAVINCI_DA8XX_UART2 || DEBUG_BCM_IPROC_UART3 || \
  1597. DEBUG_BCM_KONA_UART || DEBUG_RK32_UART2
  1598. config DEBUG_UART_8250_PALMCHIP
  1599. bool "8250 UART is Palmchip BK-310x"
  1600. depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
  1601. help
  1602. Palmchip provides a UART implementation compatible with 16550
  1603. except for having a different register layout. Say Y here if
  1604. the debug UART is of this type.
  1605. config DEBUG_UART_8250_FLOW_CONTROL
  1606. bool "Enable flow control for 8250 UART"
  1607. depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
  1608. default y if ARCH_EBSA110 || DEBUG_FOOTBRIDGE_COM1 || DEBUG_GEMINI || ARCH_RPC
  1609. config DEBUG_UNCOMPRESS
  1610. bool "Enable decompressor debugging via DEBUG_LL output"
  1611. depends on ARCH_MULTIPLATFORM || PLAT_SAMSUNG || ARM_SINGLE_ARMV7M
  1612. depends on DEBUG_LL && !DEBUG_OMAP2PLUS_UART && \
  1613. (!DEBUG_TEGRA_UART || !ZBOOT_ROM) && \
  1614. !DEBUG_BRCMSTB_UART
  1615. help
  1616. This option influences the normal decompressor output for
  1617. multiplatform kernels. Normally, multiplatform kernels disable
  1618. decompressor output because it is not possible to know where to
  1619. send the decompressor output.
  1620. When this option is set, the selected DEBUG_LL output method
  1621. will be re-used for normal decompressor output on multiplatform
  1622. kernels.
  1623. config UNCOMPRESS_INCLUDE
  1624. string
  1625. default "debug/uncompress.h" if ARCH_MULTIPLATFORM || ARCH_MSM || \
  1626. PLAT_SAMSUNG || ARM_SINGLE_ARMV7M
  1627. default "mach/uncompress.h"
  1628. config EARLY_PRINTK
  1629. bool "Early printk"
  1630. depends on DEBUG_LL
  1631. help
  1632. Say Y here if you want to have an early console using the
  1633. kernel low-level debugging functions. Add earlyprintk to your
  1634. kernel parameters to enable this console.
  1635. config ARM_KPROBES_TEST
  1636. tristate "Kprobes test module"
  1637. depends on KPROBES && MODULES
  1638. help
  1639. Perform tests of kprobes API and instruction set simulation.
  1640. config PID_IN_CONTEXTIDR
  1641. bool "Write the current PID to the CONTEXTIDR register"
  1642. depends on CPU_COPY_V6
  1643. help
  1644. Enabling this option causes the kernel to write the current PID to
  1645. the PROCID field of the CONTEXTIDR register, at the expense of some
  1646. additional instructions during context switch. Say Y here only if you
  1647. are planning to use hardware trace tools with this kernel.
  1648. source "drivers/hwtracing/coresight/Kconfig"