Kconfig.debug 55 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668
  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 DEBUG_ASM9260_UART
  82. bool "Kernel low-level debugging via asm9260 UART"
  83. depends on MACH_ASM9260
  84. help
  85. Say Y here if you want the debug print routines to direct
  86. their output to an UART or USART port on asm9260 based
  87. machines.
  88. DEBUG_UART_PHYS | DEBUG_UART_VIRT
  89. 0x80000000 | 0xf0000000 | UART0
  90. 0x80004000 | 0xf0004000 | UART1
  91. 0x80008000 | 0xf0008000 | UART2
  92. 0x8000c000 | 0xf000c000 | UART3
  93. 0x80010000 | 0xf0010000 | UART4
  94. 0x80014000 | 0xf0014000 | UART5
  95. 0x80018000 | 0xf0018000 | UART6
  96. 0x8001c000 | 0xf001c000 | UART7
  97. 0x80020000 | 0xf0020000 | UART8
  98. 0x80024000 | 0xf0024000 | UART9
  99. config AT91_DEBUG_LL_DBGU0
  100. bool "Kernel low-level debugging on rm9200, 9260/9g20, 9261/9g10, 9rl, 9x5, 9n12"
  101. select DEBUG_AT91_UART
  102. depends on ARCH_AT91
  103. depends on SOC_AT91RM9200 || SOC_AT91SAM9
  104. config AT91_DEBUG_LL_DBGU1
  105. bool "Kernel low-level debugging on 9263, 9g45 and sama5d3"
  106. select DEBUG_AT91_UART
  107. depends on ARCH_AT91
  108. depends on SOC_AT91SAM9 || SOC_SAMA5
  109. config AT91_DEBUG_LL_DBGU2
  110. bool "Kernel low-level debugging on sama5d4"
  111. select DEBUG_AT91_UART
  112. depends on ARCH_AT91
  113. depends on SOC_SAMA5
  114. config DEBUG_BCM2835
  115. bool "Kernel low-level debugging on BCM2835 PL011 UART"
  116. depends on ARCH_BCM2835
  117. select DEBUG_UART_PL01X
  118. config DEBUG_BCM_5301X
  119. bool "Kernel low-level debugging on BCM5301X UART1"
  120. depends on ARCH_BCM_5301X
  121. select DEBUG_UART_8250
  122. config DEBUG_BCM_KONA_UART
  123. bool "Kernel low-level debugging messages via BCM KONA UART"
  124. depends on ARCH_BCM_MOBILE
  125. select DEBUG_UART_8250
  126. help
  127. Say Y here if you want kernel low-level debugging support
  128. on Broadcom SoC platforms.
  129. This low level debug works for Broadcom
  130. mobile SoCs in the Kona family of chips (e.g. bcm28155,
  131. bcm11351, etc...)
  132. config DEBUG_BCM63XX
  133. bool "Kernel low-level debugging on BCM63XX UART"
  134. depends on ARCH_BCM_63XX
  135. select DEBUG_UART_BCM63XX
  136. config DEBUG_BERLIN_UART
  137. bool "Marvell Berlin SoC Debug UART"
  138. depends on ARCH_BERLIN
  139. select DEBUG_UART_8250
  140. help
  141. Say Y here if you want kernel low-level debugging support
  142. on Marvell Berlin SoC based platforms.
  143. config DEBUG_BRCMSTB_UART
  144. bool "Use BRCMSTB UART for low-level debug"
  145. depends on ARCH_BRCMSTB
  146. select DEBUG_UART_8250
  147. help
  148. Say Y here if you want the debug print routines to direct
  149. their output to the first serial port on these devices.
  150. If you have a Broadcom STB chip and would like early print
  151. messages to appear over the UART, select this option.
  152. config DEBUG_CLPS711X_UART1
  153. bool "Kernel low-level debugging messages via UART1"
  154. depends on ARCH_CLPS711X
  155. help
  156. Say Y here if you want the debug print routines to direct
  157. their output to the first serial port on these devices.
  158. config DEBUG_CLPS711X_UART2
  159. bool "Kernel low-level debugging messages via UART2"
  160. depends on ARCH_CLPS711X
  161. help
  162. Say Y here if you want the debug print routines to direct
  163. their output to the second serial port on these devices.
  164. config DEBUG_CNS3XXX
  165. bool "Kernel Kernel low-level debugging on Cavium Networks CNS3xxx"
  166. depends on ARCH_CNS3XXX
  167. select DEBUG_UART_8250
  168. help
  169. Say Y here if you want the debug print routines to direct
  170. their output to the CNS3xxx UART0.
  171. config DEBUG_DAVINCI_DA8XX_UART1
  172. bool "Kernel low-level debugging on DaVinci DA8XX using UART1"
  173. depends on ARCH_DAVINCI_DA8XX
  174. select DEBUG_UART_8250
  175. help
  176. Say Y here if you want the debug print routines to direct
  177. their output to UART1 serial port on DaVinci DA8XX devices.
  178. config DEBUG_DAVINCI_DA8XX_UART2
  179. bool "Kernel low-level debugging on DaVinci DA8XX using UART2"
  180. depends on ARCH_DAVINCI_DA8XX
  181. select DEBUG_UART_8250
  182. help
  183. Say Y here if you want the debug print routines to direct
  184. their output to UART2 serial port on DaVinci DA8XX devices.
  185. config DEBUG_DAVINCI_DMx_UART0
  186. bool "Kernel low-level debugging on DaVinci DMx using UART0"
  187. depends on ARCH_DAVINCI_DMx
  188. select DEBUG_UART_8250
  189. help
  190. Say Y here if you want the debug print routines to direct
  191. their output to UART0 serial port on DaVinci DMx devices.
  192. config DEBUG_ZYNQ_UART0
  193. bool "Kernel low-level debugging on Xilinx Zynq using UART0"
  194. depends on ARCH_ZYNQ
  195. help
  196. Say Y here if you want the debug print routines to direct
  197. their output to UART0 on the Zynq platform.
  198. config DEBUG_ZYNQ_UART1
  199. bool "Kernel low-level debugging on Xilinx Zynq using UART1"
  200. depends on ARCH_ZYNQ
  201. help
  202. Say Y here if you want the debug print routines to direct
  203. their output to UART1 on the Zynq platform.
  204. If you have a ZC702 board and want early boot messages to
  205. appear on the USB serial adaptor, select this option.
  206. config DEBUG_DC21285_PORT
  207. bool "Kernel low-level debugging messages via footbridge serial port"
  208. depends on FOOTBRIDGE
  209. help
  210. Say Y here if you want the debug print routines to direct
  211. their output to the serial port in the DC21285 (Footbridge).
  212. config DEBUG_DIGICOLOR_UA0
  213. bool "Kernel low-level debugging messages via Digicolor UA0"
  214. depends on ARCH_DIGICOLOR
  215. help
  216. Say Y here if you want the debug print routines to direct
  217. their output to the UA0 serial port in the CX92755.
  218. config DEBUG_FOOTBRIDGE_COM1
  219. bool "Kernel low-level debugging messages via footbridge 8250 at PCI COM1"
  220. depends on FOOTBRIDGE
  221. help
  222. Say Y here if you want the debug print routines to direct
  223. their output to the 8250 at PCI COM1.
  224. config DEBUG_HI3620_UART
  225. bool "Hisilicon HI3620 Debug UART"
  226. depends on ARCH_HI3xxx
  227. select DEBUG_UART_PL01X
  228. help
  229. Say Y here if you want kernel low-level debugging support
  230. on HI3620 UART.
  231. config DEBUG_HI3716_UART
  232. bool "Hisilicon Hi3716 Debug UART"
  233. depends on ARCH_HI3xxx
  234. select DEBUG_UART_PL01X
  235. help
  236. Say Y here if you want kernel low-level debugging support
  237. on HI3716 UART.
  238. config DEBUG_HIGHBANK_UART
  239. bool "Kernel low-level debugging messages via Highbank UART"
  240. depends on ARCH_HIGHBANK
  241. select DEBUG_UART_PL01X
  242. help
  243. Say Y here if you want the debug print routines to direct
  244. their output to the UART on Highbank based devices.
  245. config DEBUG_HIP01_UART
  246. bool "Hisilicon Hip01 Debug UART"
  247. depends on ARCH_HIP01
  248. select DEBUG_UART_8250
  249. help
  250. Say Y here if you want kernel low-level debugging support
  251. on HIP01 UART.
  252. config DEBUG_HIP04_UART
  253. bool "Hisilicon HiP04 Debug UART"
  254. depends on ARCH_HIP04
  255. select DEBUG_UART_8250
  256. help
  257. Say Y here if you want kernel low-level debugging support
  258. on HIP04 UART.
  259. config DEBUG_HIX5HD2_UART
  260. bool "Hisilicon Hix5hd2 Debug UART"
  261. depends on ARCH_HIX5HD2
  262. select DEBUG_UART_PL01X
  263. help
  264. Say Y here if you want kernel low-level debugging support
  265. on Hix5hd2 UART.
  266. config DEBUG_IMX1_UART
  267. bool "i.MX1 Debug UART"
  268. depends on SOC_IMX1
  269. help
  270. Say Y here if you want kernel low-level debugging support
  271. on i.MX1.
  272. config DEBUG_IMX23_UART
  273. bool "i.MX23 Debug UART"
  274. depends on SOC_IMX23
  275. select DEBUG_UART_PL01X
  276. help
  277. Say Y here if you want kernel low-level debugging support
  278. on i.MX23.
  279. config DEBUG_IMX25_UART
  280. bool "i.MX25 Debug UART"
  281. depends on SOC_IMX25
  282. help
  283. Say Y here if you want kernel low-level debugging support
  284. on i.MX25.
  285. config DEBUG_IMX21_IMX27_UART
  286. bool "i.MX21 and i.MX27 Debug UART"
  287. depends on SOC_IMX21 || SOC_IMX27
  288. help
  289. Say Y here if you want kernel low-level debugging support
  290. on i.MX21 or i.MX27.
  291. config DEBUG_IMX28_UART
  292. bool "i.MX28 Debug UART"
  293. depends on SOC_IMX28
  294. select DEBUG_UART_PL01X
  295. help
  296. Say Y here if you want kernel low-level debugging support
  297. on i.MX28.
  298. config DEBUG_IMX31_UART
  299. bool "i.MX31 Debug UART"
  300. depends on SOC_IMX31
  301. help
  302. Say Y here if you want kernel low-level debugging support
  303. on i.MX31.
  304. config DEBUG_IMX35_UART
  305. bool "i.MX35 Debug UART"
  306. depends on SOC_IMX35
  307. help
  308. Say Y here if you want kernel low-level debugging support
  309. on i.MX35.
  310. config DEBUG_IMX50_UART
  311. bool "i.MX50 Debug UART"
  312. depends on SOC_IMX50
  313. help
  314. Say Y here if you want kernel low-level debugging support
  315. on i.MX50.
  316. config DEBUG_IMX51_UART
  317. bool "i.MX51 Debug UART"
  318. depends on SOC_IMX51
  319. help
  320. Say Y here if you want kernel low-level debugging support
  321. on i.MX51.
  322. config DEBUG_IMX53_UART
  323. bool "i.MX53 Debug UART"
  324. depends on SOC_IMX53
  325. help
  326. Say Y here if you want kernel low-level debugging support
  327. on i.MX53.
  328. config DEBUG_IMX6Q_UART
  329. bool "i.MX6Q/DL Debug UART"
  330. depends on SOC_IMX6Q
  331. help
  332. Say Y here if you want kernel low-level debugging support
  333. on i.MX6Q/DL.
  334. config DEBUG_IMX6SL_UART
  335. bool "i.MX6SL Debug UART"
  336. depends on SOC_IMX6SL
  337. help
  338. Say Y here if you want kernel low-level debugging support
  339. on i.MX6SL.
  340. config DEBUG_IMX6SX_UART
  341. bool "i.MX6SX Debug UART"
  342. depends on SOC_IMX6SX
  343. help
  344. Say Y here if you want kernel low-level debugging support
  345. on i.MX6SX.
  346. config DEBUG_KEYSTONE_UART0
  347. bool "Kernel low-level debugging on KEYSTONE2 using UART0"
  348. depends on ARCH_KEYSTONE
  349. select DEBUG_UART_8250
  350. help
  351. Say Y here if you want the debug print routines to direct
  352. their output to UART0 serial port on KEYSTONE2 devices.
  353. config DEBUG_KEYSTONE_UART1
  354. bool "Kernel low-level debugging on KEYSTONE2 using UART1"
  355. depends on ARCH_KEYSTONE
  356. select DEBUG_UART_8250
  357. help
  358. Say Y here if you want the debug print routines to direct
  359. their output to UART1 serial port on KEYSTONE2 devices.
  360. config DEBUG_KS8695_UART
  361. bool "KS8695 Debug UART"
  362. depends on ARCH_KS8695
  363. help
  364. Say Y here if you want kernel low-level debugging support
  365. on KS8695.
  366. config DEBUG_MESON_UARTAO
  367. bool "Kernel low-level debugging via Meson6 UARTAO"
  368. depends on ARCH_MESON
  369. help
  370. Say Y here if you want kernel low-lever debugging support
  371. on Amlogic Meson6 based platforms on the UARTAO.
  372. config DEBUG_MMP_UART2
  373. bool "Kernel low-level debugging message via MMP UART2"
  374. depends on ARCH_MMP
  375. select DEBUG_UART_8250
  376. help
  377. Say Y here if you want kernel low-level debugging support
  378. on MMP UART2.
  379. config DEBUG_MMP_UART3
  380. bool "Kernel low-level debugging message via MMP UART3"
  381. depends on ARCH_MMP
  382. select DEBUG_UART_8250
  383. help
  384. Say Y here if you want kernel low-level debugging support
  385. on MMP UART3.
  386. config DEBUG_MSM_UART
  387. bool "Kernel low-level debugging messages via MSM UART"
  388. depends on ARCH_MSM
  389. help
  390. Say Y here if you want the debug print routines to direct
  391. their output to the serial port on MSM devices.
  392. ARCH DEBUG_UART_PHYS DEBUG_UART_VIRT #
  393. MSM7X00A, QSD8X50 0xa9a00000 0xe1000000 UART1
  394. MSM7X00A, QSD8X50 0xa9b00000 0xe1000000 UART2
  395. MSM7X00A, QSD8X50 0xa9c00000 0xe1000000 UART3
  396. MSM7X30 0xaca00000 0xe1000000 UART1
  397. MSM7X30 0xacb00000 0xe1000000 UART2
  398. MSM7X30 0xacc00000 0xe1000000 UART3
  399. Please adjust DEBUG_UART_PHYS and DEBUG_UART_BASE configuration
  400. options based on your needs.
  401. config DEBUG_QCOM_UARTDM
  402. bool "Kernel low-level debugging messages via QCOM UARTDM"
  403. depends on ARCH_QCOM
  404. help
  405. Say Y here if you want the debug print routines to direct
  406. their output to the serial port on Qualcomm devices.
  407. ARCH DEBUG_UART_PHYS DEBUG_UART_VIRT
  408. APQ8064 0x16640000 0xf0040000
  409. APQ8084 0xf995e000 0xfa75e000
  410. MSM8X60 0x19c40000 0xf0040000
  411. MSM8960 0x16440000 0xf0040000
  412. MSM8974 0xf991e000 0xfa71e000
  413. Please adjust DEBUG_UART_PHYS and DEBUG_UART_BASE configuration
  414. options based on your needs.
  415. config DEBUG_MVEBU_UART0
  416. bool "Kernel low-level debugging messages via MVEBU UART0 (old bootloaders)"
  417. depends on ARCH_MVEBU
  418. select DEBUG_UART_8250
  419. help
  420. Say Y here if you want kernel low-level debugging support
  421. on MVEBU based platforms on UART0.
  422. This option should be used with the old bootloaders
  423. that left the internal registers mapped at
  424. 0xd0000000. As of today, this is the case on
  425. platforms such as the Globalscale Mirabox or the
  426. Plathome OpenBlocks AX3, when using the original
  427. bootloader.
  428. If the wrong DEBUG_MVEBU_UART* option is selected,
  429. when u-boot hands over to the kernel, the system
  430. silently crashes, with no serial output at all.
  431. config DEBUG_MVEBU_UART0_ALTERNATE
  432. bool "Kernel low-level debugging messages via MVEBU UART0 (new bootloaders)"
  433. depends on ARCH_MVEBU
  434. select DEBUG_UART_8250
  435. help
  436. Say Y here if you want kernel low-level debugging support
  437. on MVEBU based platforms on UART0.
  438. This option should be used with the new bootloaders
  439. that remap the internal registers at 0xf1000000.
  440. If the wrong DEBUG_MVEBU_UART* option is selected,
  441. when u-boot hands over to the kernel, the system
  442. silently crashes, with no serial output at all.
  443. config DEBUG_MVEBU_UART1_ALTERNATE
  444. bool "Kernel low-level debugging messages via MVEBU UART1 (new bootloaders)"
  445. depends on ARCH_MVEBU
  446. select DEBUG_UART_8250
  447. help
  448. Say Y here if you want kernel low-level debugging support
  449. on MVEBU based platforms on UART1.
  450. This option should be used with the new bootloaders
  451. that remap the internal registers at 0xf1000000.
  452. If the wrong DEBUG_MVEBU_UART* option is selected,
  453. when u-boot hands over to the kernel, the system
  454. silently crashes, with no serial output at all.
  455. config DEBUG_VF_UART
  456. bool "Vybrid UART"
  457. depends on SOC_VF610
  458. help
  459. Say Y here if you want kernel low-level debugging support
  460. on Vybrid based platforms.
  461. config DEBUG_NETX_UART
  462. bool "Kernel low-level debugging messages via NetX UART"
  463. depends on ARCH_NETX
  464. help
  465. Say Y here if you want kernel low-level debugging support
  466. on Hilscher NetX based platforms.
  467. config DEBUG_NOMADIK_UART
  468. bool "Kernel low-level debugging messages via NOMADIK UART"
  469. depends on ARCH_NOMADIK
  470. select DEBUG_UART_PL01X
  471. help
  472. Say Y here if you want kernel low-level debugging support
  473. on NOMADIK based platforms.
  474. config DEBUG_NSPIRE_CLASSIC_UART
  475. bool "Kernel low-level debugging via TI-NSPIRE 8250 UART"
  476. depends on ARCH_NSPIRE
  477. select DEBUG_UART_8250
  478. help
  479. Say Y here if you want kernel low-level debugging support
  480. on TI-NSPIRE classic models.
  481. config DEBUG_NSPIRE_CX_UART
  482. bool "Kernel low-level debugging via TI-NSPIRE PL011 UART"
  483. depends on ARCH_NSPIRE
  484. select DEBUG_UART_PL01X
  485. help
  486. Say Y here if you want kernel low-level debugging support
  487. on TI-NSPIRE CX models.
  488. config DEBUG_OMAP1UART1
  489. bool "Kernel low-level debugging via OMAP1 UART1"
  490. depends on ARCH_OMAP1
  491. select DEBUG_UART_8250
  492. help
  493. Say Y here if you want kernel low-level debugging support
  494. on OMAP1 based platforms (except OMAP730) on the UART1.
  495. config DEBUG_OMAP1UART2
  496. bool "Kernel low-level debugging via OMAP1 UART2"
  497. depends on ARCH_OMAP1
  498. select DEBUG_UART_8250
  499. help
  500. Say Y here if you want kernel low-level debugging support
  501. on OMAP1 based platforms (except OMAP730) on the UART2.
  502. config DEBUG_OMAP1UART3
  503. bool "Kernel low-level debugging via OMAP1 UART3"
  504. depends on ARCH_OMAP1
  505. select DEBUG_UART_8250
  506. help
  507. Say Y here if you want kernel low-level debugging support
  508. on OMAP1 based platforms (except OMAP730) on the UART3.
  509. config DEBUG_OMAP2UART1
  510. bool "OMAP2/3/4 UART1 (omap2/3 sdp boards and some omap3 boards)"
  511. depends on ARCH_OMAP2PLUS
  512. select DEBUG_OMAP2PLUS_UART
  513. help
  514. This covers at least h4, 2430sdp, 3430sdp, 3630sdp,
  515. omap3 torpedo and 3530 lv som.
  516. config DEBUG_OMAP2UART2
  517. bool "Kernel low-level debugging messages via OMAP2/3/4 UART2"
  518. depends on ARCH_OMAP2PLUS
  519. select DEBUG_OMAP2PLUS_UART
  520. config DEBUG_OMAP2UART3
  521. bool "Kernel low-level debugging messages via OMAP2 UART3 (n8x0)"
  522. depends on ARCH_OMAP2PLUS
  523. select DEBUG_OMAP2PLUS_UART
  524. config DEBUG_OMAP3UART3
  525. bool "Kernel low-level debugging messages via OMAP3 UART3 (most omap3 boards)"
  526. depends on ARCH_OMAP2PLUS
  527. select DEBUG_OMAP2PLUS_UART
  528. help
  529. This covers at least cm_t3x, beagle, crane, devkit8000,
  530. igep00x0, ldp, n900, n9(50), pandora, overo, touchbook,
  531. and 3517evm.
  532. config DEBUG_OMAP4UART3
  533. bool "Kernel low-level debugging messages via OMAP4/5 UART3 (omap4 blaze, panda, omap5 sevm)"
  534. depends on ARCH_OMAP2PLUS
  535. select DEBUG_OMAP2PLUS_UART
  536. config DEBUG_OMAP3UART4
  537. bool "Kernel low-level debugging messages via OMAP36XX UART4"
  538. depends on ARCH_OMAP2PLUS
  539. select DEBUG_OMAP2PLUS_UART
  540. config DEBUG_OMAP4UART4
  541. bool "Kernel low-level debugging messages via OMAP4/5 UART4"
  542. depends on ARCH_OMAP2PLUS
  543. select DEBUG_OMAP2PLUS_UART
  544. config DEBUG_OMAP7XXUART1
  545. bool "Kernel low-level debugging via OMAP730 UART1"
  546. depends on ARCH_OMAP730
  547. select DEBUG_UART_8250
  548. help
  549. Say Y here if you want kernel low-level debugging support
  550. on OMAP730 based platforms on the UART1.
  551. config DEBUG_OMAP7XXUART2
  552. bool "Kernel low-level debugging via OMAP730 UART2"
  553. depends on ARCH_OMAP730
  554. select DEBUG_UART_8250
  555. help
  556. Say Y here if you want kernel low-level debugging support
  557. on OMAP730 based platforms on the UART2.
  558. config DEBUG_OMAP7XXUART3
  559. bool "Kernel low-level debugging via OMAP730 UART3"
  560. depends on ARCH_OMAP730
  561. select DEBUG_UART_8250
  562. help
  563. Say Y here if you want kernel low-level debugging support
  564. on OMAP730 based platforms on the UART3.
  565. config DEBUG_TI81XXUART1
  566. bool "Kernel low-level debugging messages via TI81XX UART1 (ti8148evm)"
  567. depends on ARCH_OMAP2PLUS
  568. select DEBUG_OMAP2PLUS_UART
  569. config DEBUG_TI81XXUART2
  570. bool "Kernel low-level debugging messages via TI81XX UART2"
  571. depends on ARCH_OMAP2PLUS
  572. select DEBUG_OMAP2PLUS_UART
  573. config DEBUG_TI81XXUART3
  574. bool "Kernel low-level debugging messages via TI81XX UART3 (ti8168evm)"
  575. depends on ARCH_OMAP2PLUS
  576. select DEBUG_OMAP2PLUS_UART
  577. config DEBUG_AM33XXUART1
  578. bool "Kernel low-level debugging messages via AM33XX UART1"
  579. depends on ARCH_OMAP2PLUS
  580. select DEBUG_OMAP2PLUS_UART
  581. config DEBUG_ZOOM_UART
  582. bool "Kernel low-level debugging messages via Zoom2/3 UART"
  583. depends on ARCH_OMAP2PLUS
  584. select DEBUG_OMAP2PLUS_UART
  585. config DEBUG_PICOXCELL_UART
  586. depends on ARCH_PICOXCELL
  587. bool "Use PicoXcell UART for low-level debug"
  588. select DEBUG_UART_8250
  589. help
  590. Say Y here if you want kernel low-level debugging support
  591. on PicoXcell based platforms.
  592. config DEBUG_PXA_UART1
  593. depends on ARCH_PXA
  594. bool "Use PXA UART1 for low-level debug"
  595. select DEBUG_UART_8250
  596. help
  597. Say Y here if you want kernel low-level debugging support
  598. on PXA UART1.
  599. config DEBUG_REALVIEW_STD_PORT
  600. bool "RealView Default UART"
  601. depends on ARCH_REALVIEW
  602. select DEBUG_UART_PL01X
  603. help
  604. Say Y here if you want the debug print routines to direct
  605. their output to the serial port on RealView EB, PB11MP, PBA8
  606. and PBX platforms.
  607. config DEBUG_REALVIEW_PB1176_PORT
  608. bool "RealView PB1176 UART"
  609. depends on MACH_REALVIEW_PB1176
  610. select DEBUG_UART_PL01X
  611. help
  612. Say Y here if you want the debug print routines to direct
  613. their output to the standard serial port on the RealView
  614. PB1176 platform.
  615. config DEBUG_RK29_UART0
  616. bool "Kernel low-level debugging messages via Rockchip RK29 UART0"
  617. depends on ARCH_ROCKCHIP
  618. select DEBUG_UART_8250
  619. help
  620. Say Y here if you want kernel low-level debugging support
  621. on Rockchip based platforms.
  622. config DEBUG_RK29_UART1
  623. bool "Kernel low-level debugging messages via Rockchip RK29 UART1"
  624. depends on ARCH_ROCKCHIP
  625. select DEBUG_UART_8250
  626. help
  627. Say Y here if you want kernel low-level debugging support
  628. on Rockchip based platforms.
  629. config DEBUG_RK29_UART2
  630. bool "Kernel low-level debugging messages via Rockchip RK29 UART2"
  631. depends on ARCH_ROCKCHIP
  632. select DEBUG_UART_8250
  633. help
  634. Say Y here if you want kernel low-level debugging support
  635. on Rockchip based platforms.
  636. config DEBUG_RK3X_UART0
  637. bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART0"
  638. depends on ARCH_ROCKCHIP
  639. select DEBUG_UART_8250
  640. help
  641. Say Y here if you want kernel low-level debugging support
  642. on Rockchip based platforms.
  643. config DEBUG_RK3X_UART1
  644. bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART1"
  645. depends on ARCH_ROCKCHIP
  646. select DEBUG_UART_8250
  647. help
  648. Say Y here if you want kernel low-level debugging support
  649. on Rockchip based platforms.
  650. config DEBUG_RK3X_UART2
  651. bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART2"
  652. depends on ARCH_ROCKCHIP
  653. select DEBUG_UART_8250
  654. help
  655. Say Y here if you want kernel low-level debugging support
  656. on Rockchip based platforms.
  657. config DEBUG_RK3X_UART3
  658. bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART3"
  659. depends on ARCH_ROCKCHIP
  660. select DEBUG_UART_8250
  661. help
  662. Say Y here if you want kernel low-level debugging support
  663. on Rockchip based platforms.
  664. config DEBUG_RK32_UART2
  665. bool "Kernel low-level debugging messages via Rockchip RK32 UART2"
  666. depends on ARCH_ROCKCHIP
  667. select DEBUG_UART_8250
  668. help
  669. Say Y here if you want kernel low-level debugging support
  670. on Rockchip RK32xx based platforms.
  671. config DEBUG_R7S72100_SCIF2
  672. bool "Kernel low-level debugging messages via SCIF2 on R7S72100"
  673. depends on ARCH_R7S72100
  674. help
  675. Say Y here if you want kernel low-level debugging support
  676. via SCIF2 on Renesas RZ/A1H (R7S72100).
  677. config DEBUG_RCAR_GEN1_SCIF0
  678. bool "Kernel low-level debugging messages via SCIF0 on R8A7778"
  679. depends on ARCH_R8A7778
  680. help
  681. Say Y here if you want kernel low-level debugging support
  682. via SCIF0 on Renesas R-Car M1A (R8A7778).
  683. config DEBUG_RCAR_GEN1_SCIF2
  684. bool "Kernel low-level debugging messages via SCIF2 on R8A7779"
  685. depends on ARCH_R8A7779
  686. help
  687. Say Y here if you want kernel low-level debugging support
  688. via SCIF2 on Renesas R-Car H1 (R8A7779).
  689. config DEBUG_RCAR_GEN2_SCIF0
  690. bool "Kernel low-level debugging messages via SCIF0 on R8A7790/R8A7791/R8A7793)"
  691. depends on ARCH_R8A7790 || ARCH_R8A7791 || ARCH_R8A7793
  692. help
  693. Say Y here if you want kernel low-level debugging support
  694. via SCIF0 on Renesas R-Car H2 (R8A7790), M2-W (R8A7791), or
  695. M2-N (R8A7793).
  696. config DEBUG_RCAR_GEN2_SCIF2
  697. bool "Kernel low-level debugging messages via SCIF2 on R8A7794"
  698. depends on ARCH_R8A7794
  699. help
  700. Say Y here if you want kernel low-level debugging support
  701. via SCIF2 on Renesas R-Car E2 (R8A7794).
  702. config DEBUG_RMOBILE_SCIFA0
  703. bool "Kernel low-level debugging messages via SCIFA0 on R8A73A4/SH7372"
  704. depends on ARCH_R8A73A4 || ARCH_SH7372
  705. help
  706. Say Y here if you want kernel low-level debugging support
  707. via SCIFA0 on Renesas R-Mobile APE6 (R8A73A4) or SH-Mobile
  708. AP4 (SH7372).
  709. config DEBUG_RMOBILE_SCIFA1
  710. bool "Kernel low-level debugging messages via SCIFA1 on R8A7740"
  711. depends on ARCH_R8A7740
  712. help
  713. Say Y here if you want kernel low-level debugging support
  714. via SCIFA1 on Renesas R-Mobile A1 (R8A7740).
  715. config DEBUG_RMOBILE_SCIFA4
  716. bool "Kernel low-level debugging messages via SCIFA4 on SH73A0"
  717. depends on ARCH_SH73A0
  718. help
  719. Say Y here if you want kernel low-level debugging support
  720. via SCIFA4 on Renesas SH-Mobile AG5 (SH73A0).
  721. config DEBUG_S3C_UART0
  722. depends on PLAT_SAMSUNG
  723. select DEBUG_EXYNOS_UART if ARCH_EXYNOS
  724. select DEBUG_S3C24XX_UART if ARCH_S3C24XX
  725. select DEBUG_S5PV210_UART if ARCH_S5PV210
  726. bool "Use Samsung S3C UART 0 for low-level debug"
  727. help
  728. Say Y here if you want the debug print routines to direct
  729. their output to UART 0. The port must have been initialised
  730. by the boot-loader before use.
  731. config DEBUG_S3C_UART1
  732. depends on PLAT_SAMSUNG
  733. select DEBUG_EXYNOS_UART if ARCH_EXYNOS
  734. select DEBUG_S3C24XX_UART if ARCH_S3C24XX
  735. select DEBUG_S5PV210_UART if ARCH_S5PV210
  736. bool "Use Samsung S3C UART 1 for low-level debug"
  737. help
  738. Say Y here if you want the debug print routines to direct
  739. their output to UART 1. The port must have been initialised
  740. by the boot-loader before use.
  741. config DEBUG_S3C_UART2
  742. depends on PLAT_SAMSUNG
  743. select DEBUG_EXYNOS_UART if ARCH_EXYNOS
  744. select DEBUG_S3C24XX_UART if ARCH_S3C24XX
  745. select DEBUG_S5PV210_UART if ARCH_S5PV210
  746. bool "Use Samsung S3C UART 2 for low-level debug"
  747. help
  748. Say Y here if you want the debug print routines to direct
  749. their output to UART 2. The port must have been initialised
  750. by the boot-loader before use.
  751. config DEBUG_S3C_UART3
  752. depends on PLAT_SAMSUNG && (ARCH_EXYNOS || ARCH_S5PV210)
  753. select DEBUG_EXYNOS_UART if ARCH_EXYNOS
  754. select DEBUG_S5PV210_UART if ARCH_S5PV210
  755. bool "Use Samsung S3C UART 3 for low-level debug"
  756. help
  757. Say Y here if you want the debug print routines to direct
  758. their output to UART 3. The port must have been initialised
  759. by the boot-loader before use.
  760. config DEBUG_S3C2410_UART0
  761. depends on ARCH_S3C24XX
  762. select DEBUG_S3C2410_UART
  763. bool "Use S3C2410/S3C2412 UART 0 for low-level debug"
  764. help
  765. Say Y here if you want the debug print routines to direct
  766. their output to UART 0. The port must have been initialised
  767. by the boot-loader before use.
  768. config DEBUG_S3C2410_UART1
  769. depends on ARCH_S3C24XX
  770. select DEBUG_S3C2410_UART
  771. bool "Use S3C2410/S3C2412 UART 1 for low-level debug"
  772. help
  773. Say Y here if you want the debug print routines to direct
  774. their output to UART 1. The port must have been initialised
  775. by the boot-loader before use.
  776. config DEBUG_S3C2410_UART2
  777. depends on ARCH_S3C24XX
  778. select DEBUG_S3C2410_UART
  779. bool "Use S3C2410/S3C2412 UART 2 for low-level debug"
  780. help
  781. Say Y here if you want the debug print routines to direct
  782. their output to UART 2. The port must have been initialised
  783. by the boot-loader before use.
  784. config DEBUG_SA1100
  785. depends on ARCH_SA1100
  786. bool "Use SA1100 UARTs for low-level debug"
  787. help
  788. Say Y here if you want kernel low-level debugging support
  789. on SA-11x0 UART ports. The kernel will check for the first
  790. enabled UART in a sequence 3-1-2.
  791. config DEBUG_SOCFPGA_UART
  792. depends on ARCH_SOCFPGA
  793. bool "Use SOCFPGA UART for low-level debug"
  794. select DEBUG_UART_8250
  795. help
  796. Say Y here if you want kernel low-level debugging support
  797. on SOCFPGA based platforms.
  798. config DEBUG_SUN9I_UART0
  799. bool "Kernel low-level debugging messages via sun9i UART0"
  800. depends on MACH_SUN9I
  801. select DEBUG_UART_8250
  802. help
  803. Say Y here if you want kernel low-level debugging support
  804. on Allwinner A80 based platforms on the UART0.
  805. config DEBUG_SUNXI_UART0
  806. bool "Kernel low-level debugging messages via sunXi UART0"
  807. depends on ARCH_SUNXI
  808. select DEBUG_UART_8250
  809. help
  810. Say Y here if you want kernel low-level debugging support
  811. on Allwinner A1X based platforms on the UART0.
  812. config DEBUG_SUNXI_UART1
  813. bool "Kernel low-level debugging messages via sunXi UART1"
  814. depends on ARCH_SUNXI
  815. select DEBUG_UART_8250
  816. help
  817. Say Y here if you want kernel low-level debugging support
  818. on Allwinner A1X based platforms on the UART1.
  819. config DEBUG_SUNXI_R_UART
  820. bool "Kernel low-level debugging messages via sunXi R_UART"
  821. depends on MACH_SUN6I || MACH_SUN8I
  822. select DEBUG_UART_8250
  823. help
  824. Say Y here if you want kernel low-level debugging support
  825. on Allwinner A31/A23 based platforms on the R_UART.
  826. config TEGRA_DEBUG_UART_AUTO_ODMDATA
  827. bool "Kernel low-level debugging messages via Tegra UART via ODMDATA"
  828. depends on ARCH_TEGRA
  829. select DEBUG_TEGRA_UART
  830. help
  831. Automatically determines which UART to use for low-level
  832. debug based on the ODMDATA value. This value is part of
  833. the BCT, and is written to the boot memory device using
  834. nvflash, or other flashing tool. When bits 19:18 are 3,
  835. then bits 17:15 indicate which UART to use; 0/1/2/3/4
  836. are UART A/B/C/D/E.
  837. config TEGRA_DEBUG_UARTA
  838. bool "Kernel low-level debugging messages via Tegra UART A"
  839. depends on ARCH_TEGRA
  840. select DEBUG_TEGRA_UART
  841. help
  842. Say Y here if you want kernel low-level debugging support
  843. on Tegra based platforms.
  844. config TEGRA_DEBUG_UARTB
  845. bool "Kernel low-level debugging messages via Tegra UART B"
  846. depends on ARCH_TEGRA
  847. select DEBUG_TEGRA_UART
  848. help
  849. Say Y here if you want kernel low-level debugging support
  850. on Tegra based platforms.
  851. config TEGRA_DEBUG_UARTC
  852. bool "Kernel low-level debugging messages via Tegra UART C"
  853. depends on ARCH_TEGRA
  854. select DEBUG_TEGRA_UART
  855. help
  856. Say Y here if you want kernel low-level debugging support
  857. on Tegra based platforms.
  858. config TEGRA_DEBUG_UARTD
  859. bool "Kernel low-level debugging messages via Tegra UART D"
  860. depends on ARCH_TEGRA
  861. select DEBUG_TEGRA_UART
  862. help
  863. Say Y here if you want kernel low-level debugging support
  864. on Tegra based platforms.
  865. config TEGRA_DEBUG_UARTE
  866. bool "Kernel low-level debugging messages via Tegra UART E"
  867. depends on ARCH_TEGRA
  868. select DEBUG_TEGRA_UART
  869. help
  870. Say Y here if you want kernel low-level debugging support
  871. on Tegra based platforms.
  872. config DEBUG_SIRFPRIMA2_UART1
  873. bool "Kernel low-level debugging messages via SiRFprimaII UART1"
  874. depends on ARCH_PRIMA2
  875. select DEBUG_SIRFSOC_UART
  876. help
  877. Say Y here if you want the debug print routines to direct
  878. their output to the uart1 port on SiRFprimaII devices.
  879. config DEBUG_SIRFATLAS7_UART0
  880. bool "Kernel low-level debugging messages via SiRFatlas7 UART0"
  881. depends on ARCH_ATLAS7
  882. select DEBUG_SIRFSOC_UART
  883. help
  884. Say Y here if you want the debug print routines to direct
  885. their output to the uart0 port on SiRFATLAS7 devices.The uart0
  886. is used on SiRFATLAS7 as a extra debug port.sometimes an extra
  887. debug port can be very useful.
  888. config DEBUG_SIRFATLAS7_UART1
  889. bool "Kernel low-level debugging messages via SiRFatlas7 UART1"
  890. depends on ARCH_ATLAS7
  891. select DEBUG_SIRFSOC_UART
  892. help
  893. Say Y here if you want the debug print routines to direct
  894. their output to the uart1 port on SiRFATLAS7 devices.
  895. config STIH41X_DEBUG_ASC2
  896. bool "Use StiH415/416 ASC2 UART for low-level debug"
  897. depends on ARCH_STI
  898. select DEBUG_STI_UART
  899. help
  900. Say Y here if you want kernel low-level debugging support
  901. on STiH415/416 based platforms like b2000, which has
  902. default UART wired up to ASC2.
  903. If unsure, say N.
  904. config STIH41X_DEBUG_SBC_ASC1
  905. bool "Use StiH415/416 SBC ASC1 UART for low-level debug"
  906. depends on ARCH_STI
  907. select DEBUG_STI_UART
  908. help
  909. Say Y here if you want kernel low-level debugging support
  910. on STiH415/416 based platforms like b2020. which has
  911. default UART wired up to SBC ASC1.
  912. If unsure, say N.
  913. config DEBUG_U300_UART
  914. bool "Kernel low-level debugging messages via U300 UART0"
  915. depends on ARCH_U300
  916. select DEBUG_UART_PL01X
  917. help
  918. Say Y here if you want the debug print routines to direct
  919. their output to the uart port on U300 devices.
  920. config DEBUG_UX500_UART
  921. depends on ARCH_U8500
  922. bool "Use Ux500 UART for low-level debug"
  923. help
  924. Say Y here if you want kernel low-level debugging support
  925. on Ux500 based platforms.
  926. config DEBUG_MT6589_UART0
  927. bool "Mediatek mt6589 UART0"
  928. depends on ARCH_MEDIATEK
  929. select DEBUG_UART_8250
  930. help
  931. Say Y here if you want kernel low-level debugging support
  932. for Mediatek mt6589 based platforms on UART0.
  933. config DEBUG_MT8127_UART0
  934. bool "Mediatek mt8127/mt6592 UART0"
  935. depends on ARCH_MEDIATEK
  936. select DEBUG_UART_8250
  937. help
  938. Say Y here if you want kernel low-level debugging support
  939. for Mediatek mt8127 based platforms on UART0.
  940. config DEBUG_MT8135_UART3
  941. bool "Mediatek mt8135 UART3"
  942. depends on ARCH_MEDIATEK
  943. select DEBUG_UART_8250
  944. help
  945. Say Y here if you want kernel low-level debugging support
  946. for Mediatek mt8135 based platforms on UART3.
  947. config DEBUG_VEXPRESS_UART0_DETECT
  948. bool "Autodetect UART0 on Versatile Express Cortex-A core tiles"
  949. depends on ARCH_VEXPRESS && CPU_CP15_MMU
  950. help
  951. This option enables a simple heuristic which tries to determine
  952. the motherboard's memory map variant (original or RS1) and then
  953. choose the relevant UART0 base address.
  954. Note that this will only work with standard A-class core tiles,
  955. and may fail with non-standard SMM or custom software models.
  956. config DEBUG_VEXPRESS_UART0_CA9
  957. bool "Use PL011 UART0 at 0x10009000 (V2P-CA9 core tile)"
  958. depends on ARCH_VEXPRESS
  959. select DEBUG_UART_PL01X
  960. help
  961. This option selects UART0 at 0x10009000. Except for custom models,
  962. this applies only to the V2P-CA9 tile.
  963. config DEBUG_VEXPRESS_UART0_RS1
  964. bool "Use PL011 UART0 at 0x1c090000 (RS1 complaint tiles)"
  965. depends on ARCH_VEXPRESS
  966. select DEBUG_UART_PL01X
  967. help
  968. This option selects UART0 at 0x1c090000. This applies to most
  969. of the tiles using the RS1 memory map, including all new A-class
  970. core tiles, FPGA-based SMMs and software models.
  971. config DEBUG_VEXPRESS_UART0_CRX
  972. bool "Use PL011 UART0 at 0xb0090000 (Cortex-R compliant tiles)"
  973. depends on ARCH_VEXPRESS && !MMU
  974. select DEBUG_UART_PL01X
  975. help
  976. This option selects UART0 at 0xb0090000. This is appropriate for
  977. Cortex-R series tiles and SMMs, such as Cortex-R5 and Cortex-R7
  978. config DEBUG_VT8500_UART0
  979. bool "Use UART0 on VIA/Wondermedia SoCs"
  980. depends on ARCH_VT8500
  981. help
  982. This option selects UART0 on VIA/Wondermedia System-on-a-chip
  983. devices, including VT8500, WM8505, WM8650 and WM8850.
  984. config DEBUG_ICEDCC
  985. bool "Kernel low-level debugging via EmbeddedICE DCC channel"
  986. help
  987. Say Y here if you want the debug print routines to direct
  988. their output to the EmbeddedICE macrocell's DCC channel using
  989. co-processor 14. This is known to work on the ARM9 style ICE
  990. channel and on the XScale with the PEEDI.
  991. Note that the system will appear to hang during boot if there
  992. is nothing connected to read from the DCC.
  993. config DEBUG_SEMIHOSTING
  994. bool "Kernel low-level debug output via semihosting I/O"
  995. help
  996. Semihosting enables code running on an ARM target to use
  997. the I/O facilities on a host debugger/emulator through a
  998. simple SVC call. The host debugger or emulator must have
  999. semihosting enabled for the special svc call to be trapped
  1000. otherwise the kernel will crash.
  1001. This is known to work with OpenOCD, as well as
  1002. ARM's Fast Models, or any other controlling environment
  1003. that implements semihosting.
  1004. For more details about semihosting, please see
  1005. chapter 8 of DUI0203I_rvct_developer_guide.pdf from ARM Ltd.
  1006. config DEBUG_LL_UART_8250
  1007. bool "Kernel low-level debugging via 8250 UART"
  1008. help
  1009. Say Y here if you wish the debug print routes to direct
  1010. their output to an 8250 UART. You can use this option
  1011. to provide the parameters for the 8250 UART rather than
  1012. selecting one of the platform specific options above if
  1013. you know the parameters for the port.
  1014. This option is preferred over the platform specific
  1015. options; the platform specific options are deprecated
  1016. and will be soon removed.
  1017. config DEBUG_LL_UART_EFM32
  1018. bool "Kernel low-level debugging via efm32 UART"
  1019. depends on ARCH_EFM32
  1020. help
  1021. Say Y here if you want the debug print routines to direct
  1022. their output to an UART or USART port on efm32 based
  1023. machines. Use the following addresses for DEBUG_UART_PHYS:
  1024. 0x4000c000 | USART0
  1025. 0x4000c400 | USART1
  1026. 0x4000c800 | USART2
  1027. 0x4000e000 | UART0
  1028. 0x4000e400 | UART1
  1029. config DEBUG_LL_UART_PL01X
  1030. bool "Kernel low-level debugging via ARM Ltd PL01x Primecell UART"
  1031. help
  1032. Say Y here if you wish the debug print routes to direct
  1033. their output to a PL01x Primecell UART. You can use
  1034. this option to provide the parameters for the UART
  1035. rather than selecting one of the platform specific
  1036. options above if you know the parameters for the port.
  1037. This option is preferred over the platform specific
  1038. options; the platform specific options are deprecated
  1039. and will be soon removed.
  1040. endchoice
  1041. config DEBUG_AT91_UART
  1042. bool
  1043. depends on ARCH_AT91
  1044. config DEBUG_EXYNOS_UART
  1045. bool
  1046. config DEBUG_S3C2410_UART
  1047. bool
  1048. select DEBUG_S3C24XX_UART
  1049. config DEBUG_S3C24XX_UART
  1050. bool
  1051. config DEBUG_S5PV210_UART
  1052. bool
  1053. config DEBUG_OMAP2PLUS_UART
  1054. bool
  1055. depends on ARCH_OMAP2PLUS
  1056. config DEBUG_IMX_UART_PORT
  1057. int "i.MX Debug UART Port Selection" if DEBUG_IMX1_UART || \
  1058. DEBUG_IMX25_UART || \
  1059. DEBUG_IMX21_IMX27_UART || \
  1060. DEBUG_IMX31_UART || \
  1061. DEBUG_IMX35_UART || \
  1062. DEBUG_IMX50_UART || \
  1063. DEBUG_IMX51_UART || \
  1064. DEBUG_IMX53_UART || \
  1065. DEBUG_IMX6Q_UART || \
  1066. DEBUG_IMX6SL_UART || \
  1067. DEBUG_IMX6SX_UART
  1068. default 1
  1069. depends on ARCH_MXC
  1070. help
  1071. Choose UART port on which kernel low-level debug messages
  1072. should be output.
  1073. config DEBUG_VF_UART_PORT
  1074. int "Vybrid Debug UART Port Selection" if DEBUG_VF_UART
  1075. default 1
  1076. range 0 3
  1077. depends on SOC_VF610
  1078. help
  1079. Choose UART port on which kernel low-level debug messages
  1080. should be output.
  1081. config DEBUG_TEGRA_UART
  1082. bool
  1083. depends on ARCH_TEGRA
  1084. config DEBUG_STI_UART
  1085. bool
  1086. depends on ARCH_STI
  1087. config DEBUG_SIRFSOC_UART
  1088. bool
  1089. depends on ARCH_SIRF
  1090. config DEBUG_LL_INCLUDE
  1091. string
  1092. default "debug/sa1100.S" if DEBUG_SA1100
  1093. default "debug/8250.S" if DEBUG_LL_UART_8250 || DEBUG_UART_8250
  1094. default "debug/at91.S" if DEBUG_AT91_UART
  1095. default "debug/asm9260.S" if DEBUG_ASM9260_UART
  1096. default "debug/clps711x.S" if DEBUG_CLPS711X_UART1 || DEBUG_CLPS711X_UART2
  1097. default "debug/meson.S" if DEBUG_MESON_UARTAO
  1098. default "debug/pl01x.S" if DEBUG_LL_UART_PL01X || DEBUG_UART_PL01X
  1099. default "debug/exynos.S" if DEBUG_EXYNOS_UART
  1100. default "debug/efm32.S" if DEBUG_LL_UART_EFM32
  1101. default "debug/icedcc.S" if DEBUG_ICEDCC
  1102. default "debug/imx.S" if DEBUG_IMX1_UART || \
  1103. DEBUG_IMX25_UART || \
  1104. DEBUG_IMX21_IMX27_UART || \
  1105. DEBUG_IMX31_UART || \
  1106. DEBUG_IMX35_UART || \
  1107. DEBUG_IMX50_UART || \
  1108. DEBUG_IMX51_UART || \
  1109. DEBUG_IMX53_UART ||\
  1110. DEBUG_IMX6Q_UART || \
  1111. DEBUG_IMX6SL_UART || \
  1112. DEBUG_IMX6SX_UART
  1113. default "debug/ks8695.S" if DEBUG_KS8695_UART
  1114. default "debug/msm.S" if DEBUG_MSM_UART || DEBUG_QCOM_UARTDM
  1115. default "debug/netx.S" if DEBUG_NETX_UART
  1116. default "debug/omap2plus.S" if DEBUG_OMAP2PLUS_UART
  1117. default "debug/renesas-scif.S" if DEBUG_R7S72100_SCIF2
  1118. default "debug/renesas-scif.S" if DEBUG_RCAR_GEN1_SCIF0
  1119. default "debug/renesas-scif.S" if DEBUG_RCAR_GEN1_SCIF2
  1120. default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF0
  1121. default "debug/renesas-scif.S" if DEBUG_RCAR_GEN2_SCIF2
  1122. default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA0
  1123. default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA1
  1124. default "debug/renesas-scif.S" if DEBUG_RMOBILE_SCIFA4
  1125. default "debug/s3c24xx.S" if DEBUG_S3C24XX_UART
  1126. default "debug/s5pv210.S" if DEBUG_S5PV210_UART
  1127. default "debug/sirf.S" if DEBUG_SIRFSOC_UART
  1128. default "debug/sti.S" if DEBUG_STI_UART
  1129. default "debug/tegra.S" if DEBUG_TEGRA_UART
  1130. default "debug/ux500.S" if DEBUG_UX500_UART
  1131. default "debug/vexpress.S" if DEBUG_VEXPRESS_UART0_DETECT
  1132. default "debug/vf.S" if DEBUG_VF_UART
  1133. default "debug/vt8500.S" if DEBUG_VT8500_UART0
  1134. default "debug/zynq.S" if DEBUG_ZYNQ_UART0 || DEBUG_ZYNQ_UART1
  1135. default "debug/bcm63xx.S" if DEBUG_UART_BCM63XX
  1136. default "debug/digicolor.S" if DEBUG_DIGICOLOR_UA0
  1137. default "mach/debug-macro.S"
  1138. # Compatibility options for PL01x
  1139. config DEBUG_UART_PL01X
  1140. bool
  1141. # Compatibility options for 8250
  1142. config DEBUG_UART_8250
  1143. def_bool ARCH_DOVE || ARCH_EBSA110 || \
  1144. (FOOTBRIDGE && !DEBUG_DC21285_PORT) || \
  1145. ARCH_GEMINI || ARCH_IOP13XX || ARCH_IOP32X || \
  1146. ARCH_IOP33X || ARCH_IXP4XX || \
  1147. ARCH_LPC32XX || ARCH_MV78XX0 || ARCH_ORION5X || ARCH_RPC
  1148. # Compatibility options for BCM63xx
  1149. config DEBUG_UART_BCM63XX
  1150. def_bool ARCH_BCM_63XX
  1151. config DEBUG_UART_PHYS
  1152. hex "Physical base address of debug UART"
  1153. default 0x00100a00 if DEBUG_NETX_UART
  1154. default 0x01c20000 if DEBUG_DAVINCI_DMx_UART0
  1155. default 0x01c28000 if DEBUG_SUNXI_UART0
  1156. default 0x01c28400 if DEBUG_SUNXI_UART1
  1157. default 0x01d0c000 if DEBUG_DAVINCI_DA8XX_UART1
  1158. default 0x01d0d000 if DEBUG_DAVINCI_DA8XX_UART2
  1159. default 0x01f02800 if DEBUG_SUNXI_R_UART
  1160. default 0x02530c00 if DEBUG_KEYSTONE_UART0
  1161. default 0x02531000 if DEBUG_KEYSTONE_UART1
  1162. default 0x03010fe0 if ARCH_RPC
  1163. default 0x07000000 if DEBUG_SUN9I_UART0
  1164. default 0x10009000 if DEBUG_REALVIEW_STD_PORT || \
  1165. DEBUG_VEXPRESS_UART0_CA9
  1166. default 0x1010c000 if DEBUG_REALVIEW_PB1176_PORT
  1167. default 0x10124000 if DEBUG_RK3X_UART0
  1168. default 0x10126000 if DEBUG_RK3X_UART1
  1169. default 0x101f1000 if ARCH_VERSATILE
  1170. default 0x101fb000 if DEBUG_NOMADIK_UART
  1171. default 0x11002000 if DEBUG_MT8127_UART0
  1172. default 0x11006000 if DEBUG_MT6589_UART0
  1173. default 0x11009000 if DEBUG_MT8135_UART3
  1174. default 0x16000000 if ARCH_INTEGRATOR
  1175. default 0x18000300 if DEBUG_BCM_5301X
  1176. default 0x18010000 if DEBUG_SIRFATLAS7_UART0
  1177. default 0x18020000 if DEBUG_SIRFATLAS7_UART1
  1178. default 0x1c090000 if DEBUG_VEXPRESS_UART0_RS1
  1179. default 0x20001000 if DEBUG_HIP01_UART
  1180. default 0x20060000 if DEBUG_RK29_UART0
  1181. default 0x20064000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
  1182. default 0x20068000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
  1183. default 0x20201000 if DEBUG_BCM2835
  1184. default 0x3e000000 if DEBUG_BCM_KONA_UART
  1185. default 0x4000e400 if DEBUG_LL_UART_EFM32
  1186. default 0x40090000 if ARCH_LPC32XX
  1187. default 0x40100000 if DEBUG_PXA_UART1
  1188. default 0x42000000 if ARCH_GEMINI
  1189. default 0x50000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \
  1190. DEBUG_S3C2410_UART0)
  1191. default 0x50004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \
  1192. DEBUG_S3C2410_UART1)
  1193. default 0x50008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \
  1194. DEBUG_S3C2410_UART2)
  1195. default 0x78000000 if DEBUG_CNS3XXX
  1196. default 0x7c0003f8 if FOOTBRIDGE
  1197. default 0x80010000 if DEBUG_ASM9260_UART
  1198. default 0x80070000 if DEBUG_IMX23_UART
  1199. default 0x80074000 if DEBUG_IMX28_UART
  1200. default 0x80230000 if DEBUG_PICOXCELL_UART
  1201. default 0x808c0000 if ARCH_EP93XX
  1202. default 0x90020000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART
  1203. default 0xa9a00000 if DEBUG_MSM_UART
  1204. default 0xb0060000 if DEBUG_SIRFPRIMA2_UART1
  1205. default 0xb0090000 if DEBUG_VEXPRESS_UART0_CRX
  1206. default 0xc0013000 if DEBUG_U300_UART
  1207. default 0xc8000000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
  1208. default 0xc8000003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
  1209. default 0xd0000000 if ARCH_SPEAR3XX || ARCH_SPEAR6XX
  1210. default 0xd0012000 if DEBUG_MVEBU_UART0
  1211. default 0xc81004c0 if DEBUG_MESON_UARTAO
  1212. default 0xd4017000 if DEBUG_MMP_UART2
  1213. default 0xd4018000 if DEBUG_MMP_UART3
  1214. default 0xe0000000 if ARCH_SPEAR13XX
  1215. default 0xe4007000 if DEBUG_HIP04_UART
  1216. default 0xe6c40000 if DEBUG_RMOBILE_SCIFA0
  1217. default 0xe6c50000 if DEBUG_RMOBILE_SCIFA1
  1218. default 0xe6c80000 if DEBUG_RMOBILE_SCIFA4
  1219. default 0xe6e58000 if DEBUG_RCAR_GEN2_SCIF2
  1220. default 0xe6e60000 if DEBUG_RCAR_GEN2_SCIF0
  1221. default 0xe8008000 if DEBUG_R7S72100_SCIF2
  1222. default 0xf0000be0 if ARCH_EBSA110
  1223. default 0xf040ab00 if DEBUG_BRCMSTB_UART
  1224. default 0xf1012000 if DEBUG_MVEBU_UART0_ALTERNATE
  1225. default 0xf1012100 if DEBUG_MVEBU_UART1_ALTERNATE
  1226. default 0xf1012000 if ARCH_DOVE || ARCH_MV78XX0 || \
  1227. ARCH_ORION5X
  1228. default 0xf7fc9000 if DEBUG_BERLIN_UART
  1229. default 0xf8b00000 if DEBUG_HIX5HD2_UART
  1230. default 0xf991e000 if DEBUG_QCOM_UARTDM
  1231. default 0xfcb00000 if DEBUG_HI3620_UART
  1232. default 0xfe800000 if ARCH_IOP32X
  1233. default 0xff690000 if DEBUG_RK32_UART2
  1234. default 0xffc02000 if DEBUG_SOCFPGA_UART
  1235. default 0xffd82340 if ARCH_IOP13XX
  1236. default 0xffe40000 if DEBUG_RCAR_GEN1_SCIF0
  1237. default 0xffe42000 if DEBUG_RCAR_GEN1_SCIF2
  1238. default 0xfff36000 if DEBUG_HIGHBANK_UART
  1239. default 0xfffb0000 if DEBUG_OMAP1UART1 || DEBUG_OMAP7XXUART1
  1240. default 0xfffb0800 if DEBUG_OMAP1UART2 || DEBUG_OMAP7XXUART2
  1241. default 0xfffb9800 if DEBUG_OMAP1UART3 || DEBUG_OMAP7XXUART3
  1242. default 0xfffe8600 if DEBUG_UART_BCM63XX
  1243. default 0xfffff700 if ARCH_IOP33X
  1244. depends on ARCH_EP93XX || \
  1245. DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
  1246. DEBUG_LL_UART_EFM32 || \
  1247. DEBUG_UART_8250 || DEBUG_UART_PL01X || DEBUG_MESON_UARTAO || \
  1248. DEBUG_MSM_UART || DEBUG_NETX_UART || \
  1249. DEBUG_QCOM_UARTDM || DEBUG_R7S72100_SCIF2 || \
  1250. DEBUG_RCAR_GEN1_SCIF0 || DEBUG_RCAR_GEN1_SCIF2 || \
  1251. DEBUG_RCAR_GEN2_SCIF0 || DEBUG_RCAR_GEN2_SCIF2 || \
  1252. DEBUG_RMOBILE_SCIFA0 || DEBUG_RMOBILE_SCIFA1 || \
  1253. DEBUG_RMOBILE_SCIFA4 || DEBUG_S3C24XX_UART || \
  1254. DEBUG_UART_BCM63XX || DEBUG_ASM9260_UART || \
  1255. DEBUG_SIRFSOC_UART || DEBUG_DIGICOLOR_UA0
  1256. config DEBUG_UART_VIRT
  1257. hex "Virtual base address of debug UART"
  1258. default 0xe0000a00 if DEBUG_NETX_UART
  1259. default 0xe0010fe0 if ARCH_RPC
  1260. default 0xe1000000 if DEBUG_MSM_UART
  1261. default 0xf0000be0 if ARCH_EBSA110
  1262. default 0xf0010000 if DEBUG_ASM9260_UART
  1263. default 0xf01fb000 if DEBUG_NOMADIK_UART
  1264. default 0xf0201000 if DEBUG_BCM2835
  1265. default 0xf1000300 if DEBUG_BCM_5301X
  1266. default 0xf1002000 if DEBUG_MT8127_UART0
  1267. default 0xf1006000 if DEBUG_MT6589_UART0
  1268. default 0xf1009000 if DEBUG_MT8135_UART3
  1269. default 0xf11f1000 if ARCH_VERSATILE
  1270. default 0xf1600000 if ARCH_INTEGRATOR
  1271. default 0xf1c28000 if DEBUG_SUNXI_UART0
  1272. default 0xf1c28400 if DEBUG_SUNXI_UART1
  1273. default 0xf1f02800 if DEBUG_SUNXI_R_UART
  1274. default 0xf6200000 if DEBUG_PXA_UART1
  1275. default 0xf4090000 if ARCH_LPC32XX
  1276. default 0xf4200000 if ARCH_GEMINI
  1277. default 0xf7000000 if DEBUG_SUN9I_UART0
  1278. default 0xf7000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \
  1279. DEBUG_S3C2410_UART0)
  1280. default 0xf7004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \
  1281. DEBUG_S3C2410_UART1)
  1282. default 0xf7008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \
  1283. DEBUG_S3C2410_UART2)
  1284. default 0xf7fc9000 if DEBUG_BERLIN_UART
  1285. default 0xf8007000 if DEBUG_HIP04_UART
  1286. default 0xf8009000 if DEBUG_VEXPRESS_UART0_CA9
  1287. default 0xf8090000 if DEBUG_VEXPRESS_UART0_RS1
  1288. default 0xfa71e000 if DEBUG_QCOM_UARTDM
  1289. default 0xfb002000 if DEBUG_CNS3XXX
  1290. default 0xfb009000 if DEBUG_REALVIEW_STD_PORT
  1291. default 0xfb10c000 if DEBUG_REALVIEW_PB1176_PORT
  1292. default 0xfc40ab00 if DEBUG_BRCMSTB_UART
  1293. default 0xfcfe8600 if DEBUG_UART_BCM63XX
  1294. default 0xfd000000 if ARCH_SPEAR3XX || ARCH_SPEAR6XX
  1295. default 0xfd000000 if ARCH_SPEAR13XX
  1296. default 0xfd012000 if ARCH_MV78XX0
  1297. default 0xfde12000 if ARCH_DOVE
  1298. default 0xfe012000 if ARCH_ORION5X
  1299. default 0xf31004c0 if DEBUG_MESON_UARTAO
  1300. default 0xfe017000 if DEBUG_MMP_UART2
  1301. default 0xfe018000 if DEBUG_MMP_UART3
  1302. default 0xfe100000 if DEBUG_IMX23_UART || DEBUG_IMX28_UART
  1303. default 0xfe230000 if DEBUG_PICOXCELL_UART
  1304. default 0xfe300000 if DEBUG_BCM_KONA_UART
  1305. default 0xfe800000 if ARCH_IOP32X
  1306. default 0xfeb00000 if DEBUG_HI3620_UART || DEBUG_HIX5HD2_UART
  1307. default 0xfeb24000 if DEBUG_RK3X_UART0
  1308. default 0xfeb26000 if DEBUG_RK3X_UART1
  1309. default 0xfeb30c00 if DEBUG_KEYSTONE_UART0
  1310. default 0xfeb31000 if DEBUG_KEYSTONE_UART1
  1311. default 0xfec02000 if DEBUG_SOCFPGA_UART
  1312. default 0xfec12000 if DEBUG_MVEBU_UART0 || DEBUG_MVEBU_UART0_ALTERNATE
  1313. default 0xfec12100 if DEBUG_MVEBU_UART1_ALTERNATE
  1314. default 0xfec10000 if DEBUG_SIRFATLAS7_UART0
  1315. default 0xfec20000 if DEBUG_DAVINCI_DMx_UART0
  1316. default 0xfec20000 if DEBUG_SIRFATLAS7_UART1
  1317. default 0xfec60000 if DEBUG_SIRFPRIMA2_UART1
  1318. default 0xfec90000 if DEBUG_RK32_UART2
  1319. default 0xfed0c000 if DEBUG_DAVINCI_DA8XX_UART1
  1320. default 0xfed0d000 if DEBUG_DAVINCI_DA8XX_UART2
  1321. default 0xfed60000 if DEBUG_RK29_UART0
  1322. default 0xfed64000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2
  1323. default 0xfed68000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3
  1324. default 0xfedc0000 if ARCH_EP93XX
  1325. default 0xfee003f8 if FOOTBRIDGE
  1326. default 0xfee20000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART
  1327. default 0xfee82340 if ARCH_IOP13XX
  1328. default 0xfef00000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN
  1329. default 0xfef00003 if ARCH_IXP4XX && CPU_BIG_ENDIAN
  1330. default 0xfef36000 if DEBUG_HIGHBANK_UART
  1331. default 0xfefb0000 if DEBUG_OMAP1UART1 || DEBUG_OMAP7XXUART1
  1332. default 0xfefb0800 if DEBUG_OMAP1UART2 || DEBUG_OMAP7XXUART2
  1333. default 0xfefb9800 if DEBUG_OMAP1UART3 || DEBUG_OMAP7XXUART3
  1334. default 0xfefff700 if ARCH_IOP33X
  1335. default 0xff003000 if DEBUG_U300_UART
  1336. default 0xffd01000 if DEBUG_HIP01_UART
  1337. default DEBUG_UART_PHYS if !MMU
  1338. depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \
  1339. DEBUG_UART_8250 || DEBUG_UART_PL01X || DEBUG_MESON_UARTAO || \
  1340. DEBUG_MSM_UART || DEBUG_NETX_UART || \
  1341. DEBUG_QCOM_UARTDM || DEBUG_S3C24XX_UART || \
  1342. DEBUG_UART_BCM63XX || DEBUG_ASM9260_UART || \
  1343. DEBUG_SIRFSOC_UART || DEBUG_DIGICOLOR_UA0
  1344. config DEBUG_UART_8250_SHIFT
  1345. int "Register offset shift for the 8250 debug UART"
  1346. depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
  1347. default 0 if FOOTBRIDGE || ARCH_IOP32X || DEBUG_BCM_5301X || \
  1348. DEBUG_OMAP7XXUART1 || DEBUG_OMAP7XXUART2 || DEBUG_OMAP7XXUART3
  1349. default 2
  1350. config DEBUG_UART_8250_WORD
  1351. bool "Use 32-bit accesses for 8250 UART"
  1352. depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
  1353. depends on DEBUG_UART_8250_SHIFT >= 2
  1354. default y if DEBUG_PICOXCELL_UART || DEBUG_SOCFPGA_UART || \
  1355. ARCH_KEYSTONE || \
  1356. DEBUG_DAVINCI_DMx_UART0 || DEBUG_DAVINCI_DA8XX_UART1 || \
  1357. DEBUG_DAVINCI_DA8XX_UART2 || \
  1358. DEBUG_BCM_KONA_UART || DEBUG_RK32_UART2 || \
  1359. DEBUG_BRCMSTB_UART
  1360. config DEBUG_UART_8250_FLOW_CONTROL
  1361. bool "Enable flow control for 8250 UART"
  1362. depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250
  1363. default y if ARCH_EBSA110 || FOOTBRIDGE || ARCH_GEMINI || ARCH_RPC
  1364. config DEBUG_UNCOMPRESS
  1365. bool
  1366. depends on ARCH_MULTIPLATFORM || ARCH_MSM || PLAT_SAMSUNG
  1367. default y if DEBUG_LL && !DEBUG_OMAP2PLUS_UART && \
  1368. (!DEBUG_TEGRA_UART || !ZBOOT_ROM)
  1369. help
  1370. This option influences the normal decompressor output for
  1371. multiplatform kernels. Normally, multiplatform kernels disable
  1372. decompressor output because it is not possible to know where to
  1373. send the decompressor output.
  1374. When this option is set, the selected DEBUG_LL output method
  1375. will be re-used for normal decompressor output on multiplatform
  1376. kernels.
  1377. config UNCOMPRESS_INCLUDE
  1378. string
  1379. default "debug/uncompress.h" if ARCH_MULTIPLATFORM || ARCH_MSM || \
  1380. PLAT_SAMSUNG || ARCH_EFM32
  1381. default "mach/uncompress.h"
  1382. config EARLY_PRINTK
  1383. bool "Early printk"
  1384. depends on DEBUG_LL
  1385. help
  1386. Say Y here if you want to have an early console using the
  1387. kernel low-level debugging functions. Add earlyprintk to your
  1388. kernel parameters to enable this console.
  1389. config ARM_KPROBES_TEST
  1390. tristate "Kprobes test module"
  1391. depends on KPROBES && MODULES
  1392. help
  1393. Perform tests of kprobes API and instruction set simulation.
  1394. config PID_IN_CONTEXTIDR
  1395. bool "Write the current PID to the CONTEXTIDR register"
  1396. depends on CPU_COPY_V6
  1397. help
  1398. Enabling this option causes the kernel to write the current PID to
  1399. the PROCID field of the CONTEXTIDR register, at the expense of some
  1400. additional instructions during context switch. Say Y here only if you
  1401. are planning to use hardware trace tools with this kernel.
  1402. config DEBUG_SET_MODULE_RONX
  1403. bool "Set loadable kernel module data as NX and text as RO"
  1404. depends on MODULES
  1405. ---help---
  1406. This option helps catch unintended modifications to loadable
  1407. kernel module's text and read-only data. It also prevents execution
  1408. of module data. Such protection may interfere with run-time code
  1409. patching and dynamic kernel tracing - and they might also protect
  1410. against certain classes of kernel exploits.
  1411. If in doubt, say "N".
  1412. menuconfig CORESIGHT
  1413. bool "CoreSight Tracing Support"
  1414. select ARM_AMBA
  1415. help
  1416. This framework provides a kernel interface for the CoreSight debug
  1417. and trace drivers to register themselves with. It's intended to build
  1418. a topological view of the CoreSight components based on a DT
  1419. specification and configure the right serie of components when a
  1420. trace source gets enabled.
  1421. if CORESIGHT
  1422. config CORESIGHT_LINKS_AND_SINKS
  1423. bool "CoreSight Link and Sink drivers"
  1424. help
  1425. This enables support for CoreSight link and sink drivers that are
  1426. responsible for transporting and collecting the trace data
  1427. respectively. Link and sinks are dynamically aggregated with a trace
  1428. entity at run time to form a complete trace path.
  1429. config CORESIGHT_LINK_AND_SINK_TMC
  1430. bool "Coresight generic TMC driver"
  1431. depends on CORESIGHT_LINKS_AND_SINKS
  1432. help
  1433. This enables support for the Trace Memory Controller driver. Depending
  1434. on its configuration the device can act as a link (embedded trace router
  1435. - ETR) or sink (embedded trace FIFO). The driver complies with the
  1436. generic implementation of the component without special enhancement or
  1437. added features.
  1438. config CORESIGHT_SINK_TPIU
  1439. bool "Coresight generic TPIU driver"
  1440. depends on CORESIGHT_LINKS_AND_SINKS
  1441. help
  1442. This enables support for the Trace Port Interface Unit driver, responsible
  1443. for bridging the gap between the on-chip coresight components and a trace
  1444. port collection engine, typically connected to an external host for use
  1445. case capturing more traces than the on-board coresight memory can handle.
  1446. config CORESIGHT_SINK_ETBV10
  1447. bool "Coresight ETBv1.0 driver"
  1448. depends on CORESIGHT_LINKS_AND_SINKS
  1449. help
  1450. This enables support for the Embedded Trace Buffer version 1.0 driver
  1451. that complies with the generic implementation of the component without
  1452. special enhancement or added features.
  1453. config CORESIGHT_SOURCE_ETM3X
  1454. bool "CoreSight Embedded Trace Macrocell 3.x driver"
  1455. select CORESIGHT_LINKS_AND_SINKS
  1456. help
  1457. This driver provides support for processor ETM3.x and PTM1.x modules,
  1458. which allows tracing the instructions that a processor is executing
  1459. This is primarily useful for instruction level tracing. Depending
  1460. the ETM version data tracing may also be available.
  1461. endif
  1462. endmenu