11da177e4SLinus Torvaldsmenu "Kernel hacking" 21da177e4SLinus Torvalds 31da177e4SLinus Torvaldssource "lib/Kconfig.debug" 41da177e4SLinus Torvalds 51fd15b87SRussell Kingconfig ARM_PTDUMP 61fd15b87SRussell King bool "Export kernel pagetable layout to userspace via debugfs" 71fd15b87SRussell King depends on DEBUG_KERNEL 81fd15b87SRussell King select DEBUG_FS 91fd15b87SRussell King ---help--- 101fd15b87SRussell King Say Y here if you want to show the kernel pagetable layout in a 111fd15b87SRussell King debugfs file. This information is only useful for kernel developers 121fd15b87SRussell King who are working in architecture specific areas of the kernel. 131fd15b87SRussell King It is probably not a good idea to enable this feature in a production 141fd15b87SRussell King kernel. 151fd15b87SRussell King If in doubt, say "N" 161fd15b87SRussell King 17087aaffcSNicolas Pitreconfig STRICT_DEVMEM 18087aaffcSNicolas Pitre bool "Filter access to /dev/mem" 19087aaffcSNicolas Pitre depends on MMU 20087aaffcSNicolas Pitre ---help--- 21087aaffcSNicolas Pitre If this option is disabled, you allow userspace (root) access to all 22087aaffcSNicolas Pitre of memory, including kernel and userspace memory. Accidental 23087aaffcSNicolas Pitre access to this is obviously disastrous, but specific access can 24087aaffcSNicolas Pitre be used by people debugging the kernel. 25087aaffcSNicolas Pitre 26087aaffcSNicolas Pitre If this option is switched on, the /dev/mem file only allows 27087aaffcSNicolas Pitre userspace access to memory mapped peripherals. 28087aaffcSNicolas Pitre 29087aaffcSNicolas Pitre If in doubt, say Y. 30087aaffcSNicolas Pitre 31adf8b37bSCatalin Marinas# RMK wants arm kernels compiled with frame pointers or stack unwinding. 321da177e4SLinus Torvalds# If you know what you are doing and are willing to live without stack 331da177e4SLinus Torvalds# traces, you can get a slightly smaller kernel by setting this option to 341da177e4SLinus Torvalds# n, but then RMK will have to kill you ;). 351da177e4SLinus Torvaldsconfig FRAME_POINTER 361da177e4SLinus Torvalds bool 3716c79651SCatalin Marinas depends on !THUMB2_KERNEL 380e341af8SRabin Vincent default y if !ARM_UNWIND || FUNCTION_GRAPH_TRACER 391da177e4SLinus Torvalds help 401da177e4SLinus Torvalds If you say N here, the resulting kernel will be slightly smaller and 41adf8b37bSCatalin Marinas faster. However, if neither FRAME_POINTER nor ARM_UNWIND are enabled, 42adf8b37bSCatalin Marinas when a problem occurs with the kernel, the information that is 43adf8b37bSCatalin Marinas reported is severely limited. 44adf8b37bSCatalin Marinas 45adf8b37bSCatalin Marinasconfig ARM_UNWIND 464a50bfe3SRussell King bool "Enable stack unwinding support (EXPERIMENTAL)" 47d6f94fa0SKees Cook depends on AEABI 48adf8b37bSCatalin Marinas default y 49adf8b37bSCatalin Marinas help 50adf8b37bSCatalin Marinas This option enables stack unwinding support in the kernel 51adf8b37bSCatalin Marinas using the information automatically generated by the 52adf8b37bSCatalin Marinas compiler. The resulting kernel image is slightly bigger but 53adf8b37bSCatalin Marinas the performance is not affected. Currently, this feature 54adf8b37bSCatalin Marinas only works with EABI compilers. If unsure say Y. 551da177e4SLinus Torvalds 5609bfafacSRabin Vincentconfig OLD_MCOUNT 5709bfafacSRabin Vincent bool 5809bfafacSRabin Vincent depends on FUNCTION_TRACER && FRAME_POINTER 5909bfafacSRabin Vincent default y 6009bfafacSRabin Vincent 611da177e4SLinus Torvaldsconfig DEBUG_USER 621da177e4SLinus Torvalds bool "Verbose user fault messages" 631da177e4SLinus Torvalds help 641da177e4SLinus Torvalds When a user program crashes due to an exception, the kernel can 651da177e4SLinus Torvalds print a brief message explaining what the problem was. This is 661da177e4SLinus Torvalds sometimes helpful for debugging but serves no purpose on a 671da177e4SLinus Torvalds production system. Most people should say N here. 681da177e4SLinus Torvalds 691da177e4SLinus Torvalds In addition, you need to pass user_debug=N on the kernel command 701da177e4SLinus Torvalds line to enable this feature. N consists of the sum of: 711da177e4SLinus Torvalds 721da177e4SLinus Torvalds 1 - undefined instruction events 731da177e4SLinus Torvalds 2 - system calls 741da177e4SLinus Torvalds 4 - invalid data aborts 751da177e4SLinus Torvalds 8 - SIGSEGV faults 761da177e4SLinus Torvalds 16 - SIGBUS faults 771da177e4SLinus Torvalds 781da177e4SLinus Torvalds# These options are only for real kernel hackers who want to get their hands dirty. 791da177e4SLinus Torvaldsconfig DEBUG_LL 804f5ef922SWill Deacon bool "Kernel low-level debugging functions (read help!)" 811da177e4SLinus Torvalds depends on DEBUG_KERNEL 821da177e4SLinus Torvalds help 8335efb606SRussell King Say Y here to include definitions of printascii, printch, printhex 841da177e4SLinus Torvalds in the kernel. This is helpful if you are debugging code that 851da177e4SLinus Torvalds executes before the console is initialized. 861da177e4SLinus Torvalds 874f5ef922SWill Deacon Note that selecting this option will limit the kernel to a single 884f5ef922SWill Deacon UART definition, as specified below. Attempting to boot the kernel 894f5ef922SWill Deacon image on a different platform *will not work*, so this option should 904f5ef922SWill Deacon not be enabled for kernels that are intended to be portable. 914f5ef922SWill Deacon 9217916b28SWill Deaconchoice 9317916b28SWill Deacon prompt "Kernel low-level debugging port" 9417916b28SWill Deacon depends on DEBUG_LL 9517916b28SWill Deacon 9613079a73SJean-Christophe PLAGNIOL-VILLARD config AT91_DEBUG_LL_DBGU0 9713079a73SJean-Christophe PLAGNIOL-VILLARD bool "Kernel low-level debugging on rm9200, 9260/9g20, 9261/9g10 and 9rl" 9813079a73SJean-Christophe PLAGNIOL-VILLARD depends on HAVE_AT91_DBGU0 9913079a73SJean-Christophe PLAGNIOL-VILLARD 10013079a73SJean-Christophe PLAGNIOL-VILLARD config AT91_DEBUG_LL_DBGU1 1019918ceafSJean-Christophe PLAGNIOL-VILLARD bool "Kernel low-level debugging on 9263 and 9g45" 10213079a73SJean-Christophe PLAGNIOL-VILLARD depends on HAVE_AT91_DBGU1 10313079a73SJean-Christophe PLAGNIOL-VILLARD 104f1ac922dSStephen Warren config DEBUG_BCM2835 105f1ac922dSStephen Warren bool "Kernel low-level debugging on BCM2835 PL011 UART" 106f1ac922dSStephen Warren depends on ARCH_BCM2835 1075c972af4SRussell King select DEBUG_UART_PL01X 108f1ac922dSStephen Warren 10906580275SHauke Mehrtens config DEBUG_BCM_5301X 11006580275SHauke Mehrtens bool "Kernel low-level debugging on BCM5301X UART1" 11106580275SHauke Mehrtens depends on ARCH_BCM_5301X 11206580275SHauke Mehrtens select DEBUG_UART_PL01X 11306580275SHauke Mehrtens 114753d1243SChristian Daudt config DEBUG_BCM_KONA_UART 115753d1243SChristian Daudt bool "Kernel low-level debugging messages via BCM KONA UART" 1167aa2077bSFlorian Fainelli depends on ARCH_BCM_MOBILE 117753d1243SChristian Daudt select DEBUG_UART_8250 118753d1243SChristian Daudt help 119753d1243SChristian Daudt Say Y here if you want kernel low-level debugging support 120753d1243SChristian Daudt on Broadcom SoC platforms. 121753d1243SChristian Daudt This low level debug works for Broadcom 122753d1243SChristian Daudt mobile SoCs in the Kona family of chips (e.g. bcm28155, 123753d1243SChristian Daudt bcm11351, etc...) 124753d1243SChristian Daudt 125caad0b41SSebastian Hesselbarth config DEBUG_BERLIN_UART 126caad0b41SSebastian Hesselbarth bool "Marvell Berlin SoC Debug UART" 127caad0b41SSebastian Hesselbarth depends on ARCH_BERLIN 128caad0b41SSebastian Hesselbarth select DEBUG_UART_8250 129caad0b41SSebastian Hesselbarth help 130caad0b41SSebastian Hesselbarth Say Y here if you want kernel low-level debugging support 131caad0b41SSebastian Hesselbarth on Marvell Berlin SoC based platforms. 132caad0b41SSebastian Hesselbarth 133164acf96SStephen Boyd config DEBUG_CLPS711X_UART1 134164acf96SStephen Boyd bool "Kernel low-level debugging messages via UART1" 135164acf96SStephen Boyd depends on ARCH_CLPS711X 136164acf96SStephen Boyd help 137164acf96SStephen Boyd Say Y here if you want the debug print routines to direct 138164acf96SStephen Boyd their output to the first serial port on these devices. 13917916b28SWill Deacon 14017916b28SWill Deacon config DEBUG_CLPS711X_UART2 14117916b28SWill Deacon bool "Kernel low-level debugging messages via UART2" 14217916b28SWill Deacon depends on ARCH_CLPS711X 14317916b28SWill Deacon help 14417916b28SWill Deacon Say Y here if you want the debug print routines to direct 14517916b28SWill Deacon their output to the second serial port on these devices. 14617916b28SWill Deacon 14729c9b7beSArnd Bergmann config DEBUG_CNS3XXX 14829c9b7beSArnd Bergmann bool "Kernel Kernel low-level debugging on Cavium Networks CNS3xxx" 14929c9b7beSArnd Bergmann depends on ARCH_CNS3XXX 1505c972af4SRussell King select DEBUG_UART_PL01X 15129c9b7beSArnd Bergmann help 15229c9b7beSArnd Bergmann Say Y here if you want the debug print routines to direct 15329c9b7beSArnd Bergmann their output to the CNS3xxx UART0. 15429c9b7beSArnd Bergmann 155477099f1SUwe Kleine-König config DEBUG_DAVINCI_DA8XX_UART1 156477099f1SUwe Kleine-König bool "Kernel low-level debugging on DaVinci DA8XX using UART1" 157477099f1SUwe Kleine-König depends on ARCH_DAVINCI_DA8XX 15897bd1a48SRussell King select DEBUG_UART_8250 159477099f1SUwe Kleine-König help 160477099f1SUwe Kleine-König Say Y here if you want the debug print routines to direct 161477099f1SUwe Kleine-König their output to UART1 serial port on DaVinci DA8XX devices. 162477099f1SUwe Kleine-König 163477099f1SUwe Kleine-König config DEBUG_DAVINCI_DA8XX_UART2 164477099f1SUwe Kleine-König bool "Kernel low-level debugging on DaVinci DA8XX using UART2" 165477099f1SUwe Kleine-König depends on ARCH_DAVINCI_DA8XX 16697bd1a48SRussell King select DEBUG_UART_8250 167477099f1SUwe Kleine-König help 168477099f1SUwe Kleine-König Say Y here if you want the debug print routines to direct 169477099f1SUwe Kleine-König their output to UART2 serial port on DaVinci DA8XX devices. 170477099f1SUwe Kleine-König 171477099f1SUwe Kleine-König config DEBUG_DAVINCI_DMx_UART0 172477099f1SUwe Kleine-König bool "Kernel low-level debugging on DaVinci DMx using UART0" 173477099f1SUwe Kleine-König depends on ARCH_DAVINCI_DMx 17497bd1a48SRussell King select DEBUG_UART_8250 175477099f1SUwe Kleine-König help 176477099f1SUwe Kleine-König Say Y here if you want the debug print routines to direct 177477099f1SUwe Kleine-König their output to UART0 serial port on DaVinci DMx devices. 178477099f1SUwe Kleine-König 179aaf5e0beSNick Bowler config DEBUG_ZYNQ_UART0 180aaf5e0beSNick Bowler bool "Kernel low-level debugging on Xilinx Zynq using UART0" 181aaf5e0beSNick Bowler depends on ARCH_ZYNQ 182aaf5e0beSNick Bowler help 183aaf5e0beSNick Bowler Say Y here if you want the debug print routines to direct 184aaf5e0beSNick Bowler their output to UART0 on the Zynq platform. 185aaf5e0beSNick Bowler 186aaf5e0beSNick Bowler config DEBUG_ZYNQ_UART1 187aaf5e0beSNick Bowler bool "Kernel low-level debugging on Xilinx Zynq using UART1" 188aaf5e0beSNick Bowler depends on ARCH_ZYNQ 189aaf5e0beSNick Bowler help 190aaf5e0beSNick Bowler Say Y here if you want the debug print routines to direct 191aaf5e0beSNick Bowler their output to UART1 on the Zynq platform. 192aaf5e0beSNick Bowler 193aaf5e0beSNick Bowler If you have a ZC702 board and want early boot messages to 194aaf5e0beSNick Bowler appear on the USB serial adaptor, select this option. 195aaf5e0beSNick Bowler 196e76f4750SRussell King config DEBUG_DC21285_PORT 197e76f4750SRussell King bool "Kernel low-level debugging messages via footbridge serial port" 198e76f4750SRussell King depends on FOOTBRIDGE 199e76f4750SRussell King help 200e76f4750SRussell King Say Y here if you want the debug print routines to direct 201e76f4750SRussell King their output to the serial port in the DC21285 (Footbridge). 202e76f4750SRussell King 203e76f4750SRussell King config DEBUG_FOOTBRIDGE_COM1 204e76f4750SRussell King bool "Kernel low-level debugging messages via footbridge 8250 at PCI COM1" 205e76f4750SRussell King depends on FOOTBRIDGE 206e76f4750SRussell King help 207e76f4750SRussell King Say Y here if you want the debug print routines to direct 208e76f4750SRussell King their output to the 8250 at PCI COM1. 209e76f4750SRussell King 2108d258bebSHaojian Zhuang config DEBUG_HI3620_UART 2118d258bebSHaojian Zhuang bool "Hisilicon HI3620 Debug UART" 2128d258bebSHaojian Zhuang depends on ARCH_HI3xxx 2138d258bebSHaojian Zhuang select DEBUG_UART_PL01X 2148d258bebSHaojian Zhuang help 2158d258bebSHaojian Zhuang Say Y here if you want kernel low-level debugging support 2168d258bebSHaojian Zhuang on HI3620 UART. 2178d258bebSHaojian Zhuang 2188d258bebSHaojian Zhuang config DEBUG_HI3716_UART 2198d258bebSHaojian Zhuang bool "Hisilicon Hi3716 Debug UART" 2208d258bebSHaojian Zhuang depends on ARCH_HI3xxx 2218d258bebSHaojian Zhuang select DEBUG_UART_PL01X 2228d258bebSHaojian Zhuang help 2238d258bebSHaojian Zhuang Say Y here if you want kernel low-level debugging support 2248d258bebSHaojian Zhuang on HI3716 UART. 2258d258bebSHaojian Zhuang 226220e6cf7SRob Herring config DEBUG_HIGHBANK_UART 227220e6cf7SRob Herring bool "Kernel low-level debugging messages via Highbank UART" 228220e6cf7SRob Herring depends on ARCH_HIGHBANK 2295c972af4SRussell King select DEBUG_UART_PL01X 230220e6cf7SRob Herring help 231220e6cf7SRob Herring Say Y here if you want the debug print routines to direct 232220e6cf7SRob Herring their output to the UART on Highbank based devices. 233220e6cf7SRob Herring 234f350b861SShawn Guo config DEBUG_IMX1_UART 235f350b861SShawn Guo bool "i.MX1 Debug UART" 236f350b861SShawn Guo depends on SOC_IMX1 237f350b861SShawn Guo help 238f350b861SShawn Guo Say Y here if you want kernel low-level debugging support 239f350b861SShawn Guo on i.MX1. 240f350b861SShawn Guo 241f350b861SShawn Guo config DEBUG_IMX23_UART 242f350b861SShawn Guo bool "i.MX23 Debug UART" 243f350b861SShawn Guo depends on SOC_IMX23 2445c972af4SRussell King select DEBUG_UART_PL01X 245f350b861SShawn Guo help 246f350b861SShawn Guo Say Y here if you want kernel low-level debugging support 247f350b861SShawn Guo on i.MX23. 248f350b861SShawn Guo 249f350b861SShawn Guo config DEBUG_IMX25_UART 250f350b861SShawn Guo bool "i.MX25 Debug UART" 251f350b861SShawn Guo depends on SOC_IMX25 252f350b861SShawn Guo help 253f350b861SShawn Guo Say Y here if you want kernel low-level debugging support 254f350b861SShawn Guo on i.MX25. 255f350b861SShawn Guo 256f350b861SShawn Guo config DEBUG_IMX21_IMX27_UART 257f350b861SShawn Guo bool "i.MX21 and i.MX27 Debug UART" 258f350b861SShawn Guo depends on SOC_IMX21 || SOC_IMX27 259f350b861SShawn Guo help 260f350b861SShawn Guo Say Y here if you want kernel low-level debugging support 261f350b861SShawn Guo on i.MX21 or i.MX27. 262f350b861SShawn Guo 263f350b861SShawn Guo config DEBUG_IMX28_UART 264f350b861SShawn Guo bool "i.MX28 Debug UART" 265f350b861SShawn Guo depends on SOC_IMX28 2665c972af4SRussell King select DEBUG_UART_PL01X 267f350b861SShawn Guo help 268f350b861SShawn Guo Say Y here if you want kernel low-level debugging support 269f350b861SShawn Guo on i.MX28. 270f350b861SShawn Guo 2714ad625d4SShawn Guo config DEBUG_IMX31_UART 2724ad625d4SShawn Guo bool "i.MX31 Debug UART" 2734ad625d4SShawn Guo depends on SOC_IMX31 274f350b861SShawn Guo help 275f350b861SShawn Guo Say Y here if you want kernel low-level debugging support 2764ad625d4SShawn Guo on i.MX31. 2774ad625d4SShawn Guo 2784ad625d4SShawn Guo config DEBUG_IMX35_UART 2794ad625d4SShawn Guo bool "i.MX35 Debug UART" 2804ad625d4SShawn Guo depends on SOC_IMX35 2814ad625d4SShawn Guo help 2824ad625d4SShawn Guo Say Y here if you want kernel low-level debugging support 2834ad625d4SShawn Guo on i.MX35. 284f350b861SShawn Guo 285ad364a70SGreg Ungerer config DEBUG_IMX50_UART 286ad364a70SGreg Ungerer bool "i.MX50 Debug UART" 287ad364a70SGreg Ungerer depends on SOC_IMX50 288ad364a70SGreg Ungerer help 289ad364a70SGreg Ungerer Say Y here if you want kernel low-level debugging support 290ad364a70SGreg Ungerer on i.MX50. 291ad364a70SGreg Ungerer 292f350b861SShawn Guo config DEBUG_IMX51_UART 293f350b861SShawn Guo bool "i.MX51 Debug UART" 294f350b861SShawn Guo depends on SOC_IMX51 295f350b861SShawn Guo help 296f350b861SShawn Guo Say Y here if you want kernel low-level debugging support 297f350b861SShawn Guo on i.MX51. 298f350b861SShawn Guo 2997356420cSFabio Estevam config DEBUG_IMX53_UART 3007356420cSFabio Estevam bool "i.MX53 Debug UART" 3017356420cSFabio Estevam depends on SOC_IMX53 302f350b861SShawn Guo help 303f350b861SShawn Guo Say Y here if you want kernel low-level debugging support 3047356420cSFabio Estevam on i.MX53. 305f350b861SShawn Guo 30649c9e60eSShawn Guo config DEBUG_IMX6Q_UART 3073c03a2feSShawn Guo bool "i.MX6Q/DL Debug UART" 308785d7fabSDirk Behme depends on SOC_IMX6Q 309785d7fabSDirk Behme help 310785d7fabSDirk Behme Say Y here if you want kernel low-level debugging support 3113c03a2feSShawn Guo on i.MX6Q/DL. 312bac89d75SShawn Guo 31334e8a16bSShawn Guo config DEBUG_IMX6SL_UART 31434e8a16bSShawn Guo bool "i.MX6SL Debug UART" 31534e8a16bSShawn Guo depends on SOC_IMX6SL 31634e8a16bSShawn Guo help 31734e8a16bSShawn Guo Say Y here if you want kernel low-level debugging support 31834e8a16bSShawn Guo on i.MX6SL. 31934e8a16bSShawn Guo 32074368e81SShawn Guo config DEBUG_IMX6SX_UART 32174368e81SShawn Guo bool "i.MX6SX Debug UART" 32274368e81SShawn Guo depends on SOC_IMX6SX 32374368e81SShawn Guo help 32474368e81SShawn Guo Say Y here if you want kernel low-level debugging support 32574368e81SShawn Guo on i.MX6SX. 32674368e81SShawn Guo 327828989adSSantosh Shilimkar config DEBUG_KEYSTONE_UART0 328828989adSSantosh Shilimkar bool "Kernel low-level debugging on KEYSTONE2 using UART0" 329828989adSSantosh Shilimkar depends on ARCH_KEYSTONE 330f2acf003SRussell King select DEBUG_UART_8250 331828989adSSantosh Shilimkar help 332828989adSSantosh Shilimkar Say Y here if you want the debug print routines to direct 333828989adSSantosh Shilimkar their output to UART0 serial port on KEYSTONE2 devices. 334828989adSSantosh Shilimkar 335828989adSSantosh Shilimkar config DEBUG_KEYSTONE_UART1 336828989adSSantosh Shilimkar bool "Kernel low-level debugging on KEYSTONE2 using UART1" 337828989adSSantosh Shilimkar depends on ARCH_KEYSTONE 338f2acf003SRussell King select DEBUG_UART_8250 339828989adSSantosh Shilimkar help 340828989adSSantosh Shilimkar Say Y here if you want the debug print routines to direct 341828989adSSantosh Shilimkar their output to UART1 serial port on KEYSTONE2 devices. 342828989adSSantosh Shilimkar 343fa4cd2a8SHaojian Zhuang config DEBUG_MMP_UART2 344fa4cd2a8SHaojian Zhuang bool "Kernel low-level debugging message via MMP UART2" 345fa4cd2a8SHaojian Zhuang depends on ARCH_MMP 3464a003647SRussell King select DEBUG_UART_8250 347fa4cd2a8SHaojian Zhuang help 348fa4cd2a8SHaojian Zhuang Say Y here if you want kernel low-level debugging support 349fa4cd2a8SHaojian Zhuang on MMP UART2. 350fa4cd2a8SHaojian Zhuang 351fa4cd2a8SHaojian Zhuang config DEBUG_MMP_UART3 352fa4cd2a8SHaojian Zhuang bool "Kernel low-level debugging message via MMP UART3" 353fa4cd2a8SHaojian Zhuang depends on ARCH_MMP 3544a003647SRussell King select DEBUG_UART_8250 355fa4cd2a8SHaojian Zhuang help 356fa4cd2a8SHaojian Zhuang Say Y here if you want kernel low-level debugging support 357fa4cd2a8SHaojian Zhuang on MMP UART3. 358fa4cd2a8SHaojian Zhuang 3597098cff2SIvan T. Ivanov config DEBUG_MSM_UART 3607098cff2SIvan T. Ivanov bool "Kernel low-level debugging messages via MSM UART" 3617098cff2SIvan T. Ivanov depends on ARCH_MSM 362650e3f0dSStephen Boyd help 363650e3f0dSStephen Boyd Say Y here if you want the debug print routines to direct 3647098cff2SIvan T. Ivanov their output to the serial port on MSM devices. 365650e3f0dSStephen Boyd 3667098cff2SIvan T. Ivanov ARCH DEBUG_UART_PHYS DEBUG_UART_BASE # 3677098cff2SIvan T. Ivanov MSM7X00A, QSD8X50 0xa9a00000 0xe1000000 UART1 3687098cff2SIvan T. Ivanov MSM7X00A, QSD8X50 0xa9b00000 0xe1000000 UART2 3697098cff2SIvan T. Ivanov MSM7X00A, QSD8X50 0xa9c00000 0xe1000000 UART3 370650e3f0dSStephen Boyd 3717098cff2SIvan T. Ivanov MSM7X30 0xaca00000 0xe1000000 UART1 3727098cff2SIvan T. Ivanov MSM7X30 0xacb00000 0xe1000000 UART2 3737098cff2SIvan T. Ivanov MSM7X30 0xacc00000 0xe1000000 UART3 374650e3f0dSStephen Boyd 3757098cff2SIvan T. Ivanov Please adjust DEBUG_UART_PHYS and DEBUG_UART_BASE configuration 3767098cff2SIvan T. Ivanov options based on your needs. 377a3d3ef9dSStephen Boyd 3787098cff2SIvan T. Ivanov config DEBUG_QCOM_UARTDM 3797098cff2SIvan T. Ivanov bool "Kernel low-level debugging messages via QCOM UARTDM" 3807098cff2SIvan T. Ivanov depends on ARCH_QCOM 381a3d3ef9dSStephen Boyd help 382a3d3ef9dSStephen Boyd Say Y here if you want the debug print routines to direct 3837098cff2SIvan T. Ivanov their output to the serial port on Qualcomm devices. 384a3d3ef9dSStephen Boyd 3857098cff2SIvan T. Ivanov ARCH DEBUG_UART_PHYS DEBUG_UART_BASE 3862f528dd3SGeorgi Djakov APQ8084 0xf995e000 0xfa75e000 3877098cff2SIvan T. Ivanov MSM8X60 0x19c40000 0xf0040000 3887098cff2SIvan T. Ivanov MSM8960 0x16440000 0xf0040000 3897098cff2SIvan T. Ivanov MSM8974 0xf991e000 0xfa71e000 3907098cff2SIvan T. Ivanov 3917098cff2SIvan T. Ivanov Please adjust DEBUG_UART_PHYS and DEBUG_UART_BASE configuration 3927098cff2SIvan T. Ivanov options based on your needs. 3933c8828f6SRohit Vaswani 394bfd5af99SRob Herring config DEBUG_MVEBU_UART 395c2804cd6SThomas Petazzoni bool "Kernel low-level debugging messages via MVEBU UART (old bootloaders)" 396bfd5af99SRob Herring depends on ARCH_MVEBU 3974a003647SRussell King select DEBUG_UART_8250 398bfd5af99SRob Herring help 399bfd5af99SRob Herring Say Y here if you want kernel low-level debugging support 400bfd5af99SRob Herring on MVEBU based platforms. 401bfd5af99SRob Herring 402c2804cd6SThomas Petazzoni This option should be used with the old bootloaders 403c2804cd6SThomas Petazzoni that left the internal registers mapped at 404c2804cd6SThomas Petazzoni 0xd0000000. As of today, this is the case on 405c2804cd6SThomas Petazzoni platforms such as the Globalscale Mirabox or the 406c2804cd6SThomas Petazzoni Plathome OpenBlocks AX3, when using the original 407c2804cd6SThomas Petazzoni bootloader. 408c2804cd6SThomas Petazzoni 409c2804cd6SThomas Petazzoni If the wrong DEBUG_MVEBU_UART* option is selected, 410c2804cd6SThomas Petazzoni when u-boot hands over to the kernel, the system 411c2804cd6SThomas Petazzoni silently crashes, with no serial output at all. 412c2804cd6SThomas Petazzoni 413c2804cd6SThomas Petazzoni config DEBUG_MVEBU_UART_ALTERNATE 414c2804cd6SThomas Petazzoni bool "Kernel low-level debugging messages via MVEBU UART (new bootloaders)" 415c2804cd6SThomas Petazzoni depends on ARCH_MVEBU 4164a003647SRussell King select DEBUG_UART_8250 417c2804cd6SThomas Petazzoni help 418c2804cd6SThomas Petazzoni Say Y here if you want kernel low-level debugging support 419c2804cd6SThomas Petazzoni on MVEBU based platforms. 420c2804cd6SThomas Petazzoni 421c2804cd6SThomas Petazzoni This option should be used with the new bootloaders 422c2804cd6SThomas Petazzoni that remap the internal registers at 0xf1000000. 423c2804cd6SThomas Petazzoni 424c2804cd6SThomas Petazzoni If the wrong DEBUG_MVEBU_UART* option is selected, 425c2804cd6SThomas Petazzoni when u-boot hands over to the kernel, the system 426c2804cd6SThomas Petazzoni silently crashes, with no serial output at all. 427c2804cd6SThomas Petazzoni 428c7c3eac6SShawn Guo config DEBUG_VF_UART 429c7c3eac6SShawn Guo bool "Vybrid UART" 430c7c3eac6SShawn Guo depends on SOC_VF610 431c7c3eac6SShawn Guo help 432c7c3eac6SShawn Guo Say Y here if you want kernel low-level debugging support 433c7c3eac6SShawn Guo on Vybrid based platforms. 434c7c3eac6SShawn Guo 435266c3479SLinus Walleij config DEBUG_NOMADIK_UART 436266c3479SLinus Walleij bool "Kernel low-level debugging messages via NOMADIK UART" 437266c3479SLinus Walleij depends on ARCH_NOMADIK 4385c972af4SRussell King select DEBUG_UART_PL01X 439266c3479SLinus Walleij help 440266c3479SLinus Walleij Say Y here if you want kernel low-level debugging support 441266c3479SLinus Walleij on NOMADIK based platforms. 442266c3479SLinus Walleij 4439851ca57SDaniel Tang config DEBUG_NSPIRE_CLASSIC_UART 4449851ca57SDaniel Tang bool "Kernel low-level debugging via TI-NSPIRE 8250 UART" 4459851ca57SDaniel Tang depends on ARCH_NSPIRE 4464a003647SRussell King select DEBUG_UART_8250 4479851ca57SDaniel Tang help 4489851ca57SDaniel Tang Say Y here if you want kernel low-level debugging support 4499851ca57SDaniel Tang on TI-NSPIRE classic models. 4509851ca57SDaniel Tang 4519851ca57SDaniel Tang config DEBUG_NSPIRE_CX_UART 4529851ca57SDaniel Tang bool "Kernel low-level debugging via TI-NSPIRE PL011 UART" 4539851ca57SDaniel Tang depends on ARCH_NSPIRE 4545c972af4SRussell King select DEBUG_UART_PL01X 4559851ca57SDaniel Tang help 4569851ca57SDaniel Tang Say Y here if you want kernel low-level debugging support 4579851ca57SDaniel Tang on TI-NSPIRE CX models. 4589851ca57SDaniel Tang 459cce278d2SRussell King config DEBUG_OMAP2UART1 460cce278d2SRussell King bool "OMAP2/3/4 UART1 (omap2/3 sdp boards and some omap3 boards)" 461808b7e07STony Lindgren depends on ARCH_OMAP2PLUS 462cce278d2SRussell King select DEBUG_OMAP2PLUS_UART 463808b7e07STony Lindgren help 464cce278d2SRussell King This covers at least h4, 2430sdp, 3430sdp, 3630sdp, 465cce278d2SRussell King omap3 torpedo and 3530 lv som. 466cce278d2SRussell King 467cce278d2SRussell King config DEBUG_OMAP2UART2 468cce278d2SRussell King bool "Kernel low-level debugging messages via OMAP2/3/4 UART2" 469cce278d2SRussell King depends on ARCH_OMAP2PLUS 470cce278d2SRussell King select DEBUG_OMAP2PLUS_UART 471cce278d2SRussell King 472cce278d2SRussell King config DEBUG_OMAP2UART3 473cce278d2SRussell King bool "Kernel low-level debugging messages via OMAP2 UART3 (n8x0)" 474cce278d2SRussell King depends on ARCH_OMAP2PLUS 475cce278d2SRussell King select DEBUG_OMAP2PLUS_UART 476cce278d2SRussell King 477cce278d2SRussell King config DEBUG_OMAP3UART3 478cce278d2SRussell King bool "Kernel low-level debugging messages via OMAP3 UART3 (most omap3 boards)" 479cce278d2SRussell King depends on ARCH_OMAP2PLUS 480cce278d2SRussell King select DEBUG_OMAP2PLUS_UART 481cce278d2SRussell King help 482cce278d2SRussell King This covers at least cm_t3x, beagle, crane, devkit8000, 483cce278d2SRussell King igep00x0, ldp, n900, n9(50), pandora, overo, touchbook, 484cce278d2SRussell King and 3517evm. 485cce278d2SRussell King 486cce278d2SRussell King config DEBUG_OMAP4UART3 487cce278d2SRussell King bool "Kernel low-level debugging messages via OMAP4/5 UART3 (omap4 blaze, panda, omap5 sevm)" 488cce278d2SRussell King depends on ARCH_OMAP2PLUS 489cce278d2SRussell King select DEBUG_OMAP2PLUS_UART 490cce278d2SRussell King 491cce278d2SRussell King config DEBUG_OMAP3UART4 492cce278d2SRussell King bool "Kernel low-level debugging messages via OMAP36XX UART4" 493cce278d2SRussell King depends on ARCH_OMAP2PLUS 494cce278d2SRussell King select DEBUG_OMAP2PLUS_UART 495cce278d2SRussell King 496cce278d2SRussell King config DEBUG_OMAP4UART4 497cce278d2SRussell King bool "Kernel low-level debugging messages via OMAP4/5 UART4" 498cce278d2SRussell King depends on ARCH_OMAP2PLUS 499cce278d2SRussell King select DEBUG_OMAP2PLUS_UART 500cce278d2SRussell King 501cce278d2SRussell King config DEBUG_TI81XXUART1 502cce278d2SRussell King bool "Kernel low-level debugging messages via TI81XX UART1 (ti8148evm)" 503cce278d2SRussell King depends on ARCH_OMAP2PLUS 504cce278d2SRussell King select DEBUG_OMAP2PLUS_UART 505cce278d2SRussell King 506cce278d2SRussell King config DEBUG_TI81XXUART2 507cce278d2SRussell King bool "Kernel low-level debugging messages via TI81XX UART2" 508cce278d2SRussell King depends on ARCH_OMAP2PLUS 509cce278d2SRussell King select DEBUG_OMAP2PLUS_UART 510cce278d2SRussell King 511cce278d2SRussell King config DEBUG_TI81XXUART3 512cce278d2SRussell King bool "Kernel low-level debugging messages via TI81XX UART3 (ti8168evm)" 513cce278d2SRussell King depends on ARCH_OMAP2PLUS 514cce278d2SRussell King select DEBUG_OMAP2PLUS_UART 515cce278d2SRussell King 516cce278d2SRussell King config DEBUG_AM33XXUART1 517cce278d2SRussell King bool "Kernel low-level debugging messages via AM33XX UART1" 518cce278d2SRussell King depends on ARCH_OMAP2PLUS 519cce278d2SRussell King select DEBUG_OMAP2PLUS_UART 520cce278d2SRussell King 521cce278d2SRussell King config DEBUG_ZOOM_UART 522cce278d2SRussell King bool "Kernel low-level debugging messages via Zoom2/3 UART" 523cce278d2SRussell King depends on ARCH_OMAP2PLUS 524cce278d2SRussell King select DEBUG_OMAP2PLUS_UART 525808b7e07STony Lindgren 52659bba2a9SRob Herring config DEBUG_PICOXCELL_UART 52759bba2a9SRob Herring depends on ARCH_PICOXCELL 52859bba2a9SRob Herring bool "Use PicoXcell UART for low-level debug" 5290b4cccbeSRussell King select DEBUG_UART_8250 53059bba2a9SRob Herring help 53159bba2a9SRob Herring Say Y here if you want kernel low-level debugging support 53259bba2a9SRob Herring on PicoXcell based platforms. 53359bba2a9SRob Herring 5340a43cd3bSHaojian Zhuang config DEBUG_PXA_UART1 5350a43cd3bSHaojian Zhuang depends on ARCH_PXA 5360a43cd3bSHaojian Zhuang bool "Use PXA UART1 for low-level debug" 5374a003647SRussell King select DEBUG_UART_8250 5380a43cd3bSHaojian Zhuang help 5390a43cd3bSHaojian Zhuang Say Y here if you want kernel low-level debugging support 5400a43cd3bSHaojian Zhuang on PXA UART1. 5410a43cd3bSHaojian Zhuang 542e76f4750SRussell King config DEBUG_REALVIEW_STD_PORT 543e76f4750SRussell King bool "RealView Default UART" 544e76f4750SRussell King depends on ARCH_REALVIEW 5455c972af4SRussell King select DEBUG_UART_PL01X 546e76f4750SRussell King help 547e76f4750SRussell King Say Y here if you want the debug print routines to direct 548e76f4750SRussell King their output to the serial port on RealView EB, PB11MP, PBA8 549e76f4750SRussell King and PBX platforms. 550e76f4750SRussell King 551e76f4750SRussell King config DEBUG_REALVIEW_PB1176_PORT 552e76f4750SRussell King bool "RealView PB1176 UART" 553e76f4750SRussell King depends on MACH_REALVIEW_PB1176 5545c972af4SRussell King select DEBUG_UART_PL01X 555e76f4750SRussell King help 556e76f4750SRussell King Say Y here if you want the debug print routines to direct 557e76f4750SRussell King their output to the standard serial port on the RealView 558e76f4750SRussell King PB1176 platform. 559e76f4750SRussell King 560cce278d2SRussell King config DEBUG_RK29_UART0 561cce278d2SRussell King bool "Kernel low-level debugging messages via Rockchip RK29 UART0" 56238bd6892SHeiko Stuebner depends on ARCH_ROCKCHIP 5634a003647SRussell King select DEBUG_UART_8250 564cce278d2SRussell King help 565cce278d2SRussell King Say Y here if you want kernel low-level debugging support 566cce278d2SRussell King on Rockchip based platforms. 567cce278d2SRussell King 568cce278d2SRussell King config DEBUG_RK29_UART1 569cce278d2SRussell King bool "Kernel low-level debugging messages via Rockchip RK29 UART1" 570cce278d2SRussell King depends on ARCH_ROCKCHIP 5714a003647SRussell King select DEBUG_UART_8250 572cce278d2SRussell King help 573cce278d2SRussell King Say Y here if you want kernel low-level debugging support 574cce278d2SRussell King on Rockchip based platforms. 575cce278d2SRussell King 576cce278d2SRussell King config DEBUG_RK29_UART2 577cce278d2SRussell King bool "Kernel low-level debugging messages via Rockchip RK29 UART2" 578cce278d2SRussell King depends on ARCH_ROCKCHIP 5794a003647SRussell King select DEBUG_UART_8250 580cce278d2SRussell King help 581cce278d2SRussell King Say Y here if you want kernel low-level debugging support 582cce278d2SRussell King on Rockchip based platforms. 583cce278d2SRussell King 584cce278d2SRussell King config DEBUG_RK3X_UART0 585aa9c4f74SHeiko Stuebner bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART0" 586cce278d2SRussell King depends on ARCH_ROCKCHIP 5874a003647SRussell King select DEBUG_UART_8250 588cce278d2SRussell King help 589cce278d2SRussell King Say Y here if you want kernel low-level debugging support 590cce278d2SRussell King on Rockchip based platforms. 591cce278d2SRussell King 592cce278d2SRussell King config DEBUG_RK3X_UART1 593aa9c4f74SHeiko Stuebner bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART1" 594cce278d2SRussell King depends on ARCH_ROCKCHIP 5954a003647SRussell King select DEBUG_UART_8250 596cce278d2SRussell King help 597cce278d2SRussell King Say Y here if you want kernel low-level debugging support 598cce278d2SRussell King on Rockchip based platforms. 599cce278d2SRussell King 600cce278d2SRussell King config DEBUG_RK3X_UART2 601aa9c4f74SHeiko Stuebner bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART2" 602cce278d2SRussell King depends on ARCH_ROCKCHIP 6034a003647SRussell King select DEBUG_UART_8250 604cce278d2SRussell King help 605cce278d2SRussell King Say Y here if you want kernel low-level debugging support 606cce278d2SRussell King on Rockchip based platforms. 607cce278d2SRussell King 608cce278d2SRussell King config DEBUG_RK3X_UART3 609aa9c4f74SHeiko Stuebner bool "Kernel low-level debugging messages via Rockchip RK30/RK31 UART3" 610cce278d2SRussell King depends on ARCH_ROCKCHIP 6114a003647SRussell King select DEBUG_UART_8250 61238bd6892SHeiko Stuebner help 61338bd6892SHeiko Stuebner Say Y here if you want kernel low-level debugging support 61438bd6892SHeiko Stuebner on Rockchip based platforms. 61538bd6892SHeiko Stuebner 616*efd02ee9SHeiko Stuebner config DEBUG_RK32_UART2 617*efd02ee9SHeiko Stuebner bool "Kernel low-level debugging messages via Rockchip RK32 UART2" 618*efd02ee9SHeiko Stuebner depends on ARCH_ROCKCHIP 619*efd02ee9SHeiko Stuebner select DEBUG_UART_8250 620*efd02ee9SHeiko Stuebner help 621*efd02ee9SHeiko Stuebner Say Y here if you want kernel low-level debugging support 622*efd02ee9SHeiko Stuebner on Rockchip RK32xx based platforms. 623*efd02ee9SHeiko Stuebner 624e76f4750SRussell King config DEBUG_S3C_UART0 625e76f4750SRussell King depends on PLAT_SAMSUNG 626a2e40710SArnd Bergmann select DEBUG_EXYNOS_UART if ARCH_EXYNOS 6271899de28SHeiko Stuebner select DEBUG_S3C24XX_UART if ARCH_S3C24XX 628e76f4750SRussell King bool "Use S3C UART 0 for low-level debug" 629e76f4750SRussell King help 630e76f4750SRussell King Say Y here if you want the debug print routines to direct 631e76f4750SRussell King their output to UART 0. The port must have been initialised 632e76f4750SRussell King by the boot-loader before use. 633e76f4750SRussell King 634e76f4750SRussell King The uncompressor code port configuration is now handled 635e76f4750SRussell King by CONFIG_S3C_LOWLEVEL_UART_PORT. 636e76f4750SRussell King 637e76f4750SRussell King config DEBUG_S3C_UART1 638e76f4750SRussell King depends on PLAT_SAMSUNG 639a2e40710SArnd Bergmann select DEBUG_EXYNOS_UART if ARCH_EXYNOS 6401899de28SHeiko Stuebner select DEBUG_S3C24XX_UART if ARCH_S3C24XX 641e76f4750SRussell King bool "Use S3C UART 1 for low-level debug" 642e76f4750SRussell King help 643e76f4750SRussell King Say Y here if you want the debug print routines to direct 644e76f4750SRussell King their output to UART 1. The port must have been initialised 645e76f4750SRussell King by the boot-loader before use. 646e76f4750SRussell King 647e76f4750SRussell King The uncompressor code port configuration is now handled 648e76f4750SRussell King by CONFIG_S3C_LOWLEVEL_UART_PORT. 649e76f4750SRussell King 650e76f4750SRussell King config DEBUG_S3C_UART2 651e76f4750SRussell King depends on PLAT_SAMSUNG 652a2e40710SArnd Bergmann select DEBUG_EXYNOS_UART if ARCH_EXYNOS 6531899de28SHeiko Stuebner select DEBUG_S3C24XX_UART if ARCH_S3C24XX 654e76f4750SRussell King bool "Use S3C UART 2 for low-level debug" 655e76f4750SRussell King help 656e76f4750SRussell King Say Y here if you want the debug print routines to direct 657e76f4750SRussell King their output to UART 2. The port must have been initialised 658e76f4750SRussell King by the boot-loader before use. 659e76f4750SRussell King 660e76f4750SRussell King The uncompressor code port configuration is now handled 661e76f4750SRussell King by CONFIG_S3C_LOWLEVEL_UART_PORT. 662e76f4750SRussell King 6635fa23ddeSOlof Johansson config DEBUG_S3C_UART3 6645fa23ddeSOlof Johansson depends on PLAT_SAMSUNG && ARCH_EXYNOS 665a2e40710SArnd Bergmann select DEBUG_EXYNOS_UART 6665fa23ddeSOlof Johansson bool "Use S3C UART 3 for low-level debug" 6675fa23ddeSOlof Johansson help 6685fa23ddeSOlof Johansson Say Y here if you want the debug print routines to direct 6695fa23ddeSOlof Johansson their output to UART 3. The port must have been initialised 6705fa23ddeSOlof Johansson by the boot-loader before use. 6715fa23ddeSOlof Johansson 6725fa23ddeSOlof Johansson The uncompressor code port configuration is now handled 6735fa23ddeSOlof Johansson by CONFIG_S3C_LOWLEVEL_UART_PORT. 6745fa23ddeSOlof Johansson 675daf67dfcSHeiko Stuebner config DEBUG_S3C2410_UART0 676daf67dfcSHeiko Stuebner depends on ARCH_S3C24XX 677daf67dfcSHeiko Stuebner select DEBUG_S3C2410_UART 678daf67dfcSHeiko Stuebner bool "Use S3C2410/S3C2412 UART 0 for low-level debug" 679daf67dfcSHeiko Stuebner help 680daf67dfcSHeiko Stuebner Say Y here if you want the debug print routines to direct 681daf67dfcSHeiko Stuebner their output to UART 0. The port must have been initialised 682daf67dfcSHeiko Stuebner by the boot-loader before use. 683daf67dfcSHeiko Stuebner 684daf67dfcSHeiko Stuebner config DEBUG_S3C2410_UART1 685daf67dfcSHeiko Stuebner depends on ARCH_S3C24XX 686daf67dfcSHeiko Stuebner select DEBUG_S3C2410_UART 687daf67dfcSHeiko Stuebner bool "Use S3C2410/S3C2412 UART 1 for low-level debug" 688daf67dfcSHeiko Stuebner help 689daf67dfcSHeiko Stuebner Say Y here if you want the debug print routines to direct 690daf67dfcSHeiko Stuebner their output to UART 1. The port must have been initialised 691daf67dfcSHeiko Stuebner by the boot-loader before use. 692daf67dfcSHeiko Stuebner 693daf67dfcSHeiko Stuebner config DEBUG_S3C2410_UART2 694daf67dfcSHeiko Stuebner depends on ARCH_S3C24XX 695daf67dfcSHeiko Stuebner select DEBUG_S3C2410_UART 696daf67dfcSHeiko Stuebner bool "Use S3C2410/S3C2412 UART 2 for low-level debug" 697daf67dfcSHeiko Stuebner help 698daf67dfcSHeiko Stuebner Say Y here if you want the debug print routines to direct 699daf67dfcSHeiko Stuebner their output to UART 2. The port must have been initialised 700daf67dfcSHeiko Stuebner by the boot-loader before use. 701daf67dfcSHeiko Stuebner 7026111bf7cSRob Herring config DEBUG_SOCFPGA_UART 7036111bf7cSRob Herring depends on ARCH_SOCFPGA 7046111bf7cSRob Herring bool "Use SOCFPGA UART for low-level debug" 7050b4cccbeSRussell King select DEBUG_UART_8250 7066111bf7cSRob Herring help 7076111bf7cSRob Herring Say Y here if you want kernel low-level debugging support 7086111bf7cSRob Herring on SOCFPGA based platforms. 7096111bf7cSRob Herring 710aa25115aSStefan Roese config DEBUG_SUNXI_UART0 711aa25115aSStefan Roese bool "Kernel low-level debugging messages via sunXi UART0" 712aa25115aSStefan Roese depends on ARCH_SUNXI 7134a003647SRussell King select DEBUG_UART_8250 714aa25115aSStefan Roese help 715aa25115aSStefan Roese Say Y here if you want kernel low-level debugging support 716aa25115aSStefan Roese on Allwinner A1X based platforms on the UART0. 717aa25115aSStefan Roese 718cb84fa18SMaxime Ripard config DEBUG_SUNXI_UART1 719cb84fa18SMaxime Ripard bool "Kernel low-level debugging messages via sunXi UART1" 720cb84fa18SMaxime Ripard depends on ARCH_SUNXI 7214a003647SRussell King select DEBUG_UART_8250 722cb84fa18SMaxime Ripard help 723cb84fa18SMaxime Ripard Say Y here if you want kernel low-level debugging support 724cb84fa18SMaxime Ripard on Allwinner A1X based platforms on the UART1. 725cb84fa18SMaxime Ripard 726cce278d2SRussell King config TEGRA_DEBUG_UART_AUTO_ODMDATA 727cce278d2SRussell King bool "Kernel low-level debugging messages via Tegra UART via ODMDATA" 72846067803SStephen Warren depends on ARCH_TEGRA 729cce278d2SRussell King select DEBUG_TEGRA_UART 730cce278d2SRussell King help 731cce278d2SRussell King Automatically determines which UART to use for low-level 732cce278d2SRussell King debug based on the ODMDATA value. This value is part of 733cce278d2SRussell King the BCT, and is written to the boot memory device using 734cce278d2SRussell King nvflash, or other flashing tool. When bits 19:18 are 3, 735cce278d2SRussell King then bits 17:15 indicate which UART to use; 0/1/2/3/4 736cce278d2SRussell King are UART A/B/C/D/E. 737cce278d2SRussell King 738cce278d2SRussell King config TEGRA_DEBUG_UARTA 739cce278d2SRussell King bool "Kernel low-level debugging messages via Tegra UART A" 740cce278d2SRussell King depends on ARCH_TEGRA 741cce278d2SRussell King select DEBUG_TEGRA_UART 742cce278d2SRussell King help 743cce278d2SRussell King Say Y here if you want kernel low-level debugging support 744cce278d2SRussell King on Tegra based platforms. 745cce278d2SRussell King 746cce278d2SRussell King config TEGRA_DEBUG_UARTB 747cce278d2SRussell King bool "Kernel low-level debugging messages via Tegra UART B" 748cce278d2SRussell King depends on ARCH_TEGRA 749cce278d2SRussell King select DEBUG_TEGRA_UART 750cce278d2SRussell King help 751cce278d2SRussell King Say Y here if you want kernel low-level debugging support 752cce278d2SRussell King on Tegra based platforms. 753cce278d2SRussell King 754cce278d2SRussell King config TEGRA_DEBUG_UARTC 755cce278d2SRussell King bool "Kernel low-level debugging messages via Tegra UART C" 756cce278d2SRussell King depends on ARCH_TEGRA 757cce278d2SRussell King select DEBUG_TEGRA_UART 758cce278d2SRussell King help 759cce278d2SRussell King Say Y here if you want kernel low-level debugging support 760cce278d2SRussell King on Tegra based platforms. 761cce278d2SRussell King 762cce278d2SRussell King config TEGRA_DEBUG_UARTD 763cce278d2SRussell King bool "Kernel low-level debugging messages via Tegra UART D" 764cce278d2SRussell King depends on ARCH_TEGRA 765cce278d2SRussell King select DEBUG_TEGRA_UART 766cce278d2SRussell King help 767cce278d2SRussell King Say Y here if you want kernel low-level debugging support 768cce278d2SRussell King on Tegra based platforms. 769cce278d2SRussell King 770cce278d2SRussell King config TEGRA_DEBUG_UARTE 771cce278d2SRussell King bool "Kernel low-level debugging messages via Tegra UART E" 772cce278d2SRussell King depends on ARCH_TEGRA 773cce278d2SRussell King select DEBUG_TEGRA_UART 77446067803SStephen Warren help 77546067803SStephen Warren Say Y here if you want kernel low-level debugging support 77646067803SStephen Warren on Tegra based platforms. 77746067803SStephen Warren 7787f46a107SBarry Song config DEBUG_SIRFPRIMA2_UART1 7797f46a107SBarry Song bool "Kernel low-level debugging messages via SiRFprimaII UART1" 7807f46a107SBarry Song depends on ARCH_PRIMA2 7817f46a107SBarry Song help 7827f46a107SBarry Song Say Y here if you want the debug print routines to direct 7837f46a107SBarry Song their output to the uart1 port on SiRFprimaII devices. 7847f46a107SBarry Song 7857f46a107SBarry Song config DEBUG_SIRFMARCO_UART1 7867f46a107SBarry Song bool "Kernel low-level debugging messages via SiRFmarco UART1" 7877f46a107SBarry Song depends on ARCH_MARCO 7887f46a107SBarry Song help 7897f46a107SBarry Song Say Y here if you want the debug print routines to direct 7907f46a107SBarry Song their output to the uart1 port on SiRFmarco devices. 7917f46a107SBarry Song 792cce278d2SRussell King config STIH41X_DEBUG_ASC2 793cce278d2SRussell King bool "Use StiH415/416 ASC2 UART for low-level debug" 7945562b800SArnd Bergmann depends on ARCH_STI 795cce278d2SRussell King select DEBUG_STI_UART 7965562b800SArnd Bergmann help 7975562b800SArnd Bergmann Say Y here if you want kernel low-level debugging support 798cce278d2SRussell King on STiH415/416 based platforms like b2000, which has 799cce278d2SRussell King default UART wired up to ASC2. 800cce278d2SRussell King 801cce278d2SRussell King If unsure, say N. 802cce278d2SRussell King 803cce278d2SRussell King config STIH41X_DEBUG_SBC_ASC1 804cce278d2SRussell King bool "Use StiH415/416 SBC ASC1 UART for low-level debug" 805cce278d2SRussell King depends on ARCH_STI 806cce278d2SRussell King select DEBUG_STI_UART 807cce278d2SRussell King help 808cce278d2SRussell King Say Y here if you want kernel low-level debugging support 809cce278d2SRussell King on STiH415/416 based platforms like b2020. which has 810cce278d2SRussell King default UART wired up to SBC ASC1. 8115562b800SArnd Bergmann 8125562b800SArnd Bergmann If unsure, say N. 8135562b800SArnd Bergmann 814dd324da7SLinus Walleij config DEBUG_U300_UART 815dd324da7SLinus Walleij bool "Kernel low-level debugging messages via U300 UART0" 816dd324da7SLinus Walleij depends on ARCH_U300 8175c972af4SRussell King select DEBUG_UART_PL01X 818dd324da7SLinus Walleij help 819dd324da7SLinus Walleij Say Y here if you want the debug print routines to direct 820dd324da7SLinus Walleij their output to the uart port on U300 devices. 821dd324da7SLinus Walleij 822f87b95ddSLinus Walleij config DEBUG_UX500_UART 823f87b95ddSLinus Walleij depends on ARCH_U8500 824f87b95ddSLinus Walleij bool "Use Ux500 UART for low-level debug" 825f87b95ddSLinus Walleij help 826f87b95ddSLinus Walleij Say Y here if you want kernel low-level debugging support 827f87b95ddSLinus Walleij on Ux500 based platforms. 828f87b95ddSLinus Walleij 8291b820eafSPawel Moll config DEBUG_VEXPRESS_UART0_DETECT 8301b820eafSPawel Moll bool "Autodetect UART0 on Versatile Express Cortex-A core tiles" 8311b820eafSPawel Moll depends on ARCH_VEXPRESS && CPU_CP15_MMU 8321b820eafSPawel Moll help 8331b820eafSPawel Moll This option enables a simple heuristic which tries to determine 8341b820eafSPawel Moll the motherboard's memory map variant (original or RS1) and then 8351b820eafSPawel Moll choose the relevant UART0 base address. 8361b820eafSPawel Moll 8371b820eafSPawel Moll Note that this will only work with standard A-class core tiles, 8381b820eafSPawel Moll and may fail with non-standard SMM or custom software models. 8391b820eafSPawel Moll 8401b820eafSPawel Moll config DEBUG_VEXPRESS_UART0_CA9 8411b820eafSPawel Moll bool "Use PL011 UART0 at 0x10009000 (V2P-CA9 core tile)" 8421b820eafSPawel Moll depends on ARCH_VEXPRESS 8435c972af4SRussell King select DEBUG_UART_PL01X 8441b820eafSPawel Moll help 8451b820eafSPawel Moll This option selects UART0 at 0x10009000. Except for custom models, 8461b820eafSPawel Moll this applies only to the V2P-CA9 tile. 8471b820eafSPawel Moll 8481b820eafSPawel Moll config DEBUG_VEXPRESS_UART0_RS1 8491b820eafSPawel Moll bool "Use PL011 UART0 at 0x1c090000 (RS1 complaint tiles)" 8501b820eafSPawel Moll depends on ARCH_VEXPRESS 8515c972af4SRussell King select DEBUG_UART_PL01X 8521b820eafSPawel Moll help 8531b820eafSPawel Moll This option selects UART0 at 0x1c090000. This applies to most 8541b820eafSPawel Moll of the tiles using the RS1 memory map, including all new A-class 8551b820eafSPawel Moll core tiles, FPGA-based SMMs and software models. 8561b820eafSPawel Moll 857ed18bdc8SJonathan Austin config DEBUG_VEXPRESS_UART0_CRX 858ed18bdc8SJonathan Austin bool "Use PL011 UART0 at 0xb0090000 (Cortex-R compliant tiles)" 859ed18bdc8SJonathan Austin depends on ARCH_VEXPRESS && !MMU 8605c972af4SRussell King select DEBUG_UART_PL01X 861ed18bdc8SJonathan Austin help 862ed18bdc8SJonathan Austin This option selects UART0 at 0xb0090000. This is appropriate for 863ed18bdc8SJonathan Austin Cortex-R series tiles and SMMs, such as Cortex-R5 and Cortex-R7 864ed18bdc8SJonathan Austin 865b61a2722STony Prisk config DEBUG_VT8500_UART0 866b61a2722STony Prisk bool "Use UART0 on VIA/Wondermedia SoCs" 867b61a2722STony Prisk depends on ARCH_VT8500 868b61a2722STony Prisk help 869b61a2722STony Prisk This option selects UART0 on VIA/Wondermedia System-on-a-chip 870b61a2722STony Prisk devices, including VT8500, WM8505, WM8650 and WM8850. 871b61a2722STony Prisk 872e76f4750SRussell King config DEBUG_LL_UART_NONE 873e76f4750SRussell King bool "No low-level debugging UART" 874387798b3SRob Herring depends on !ARCH_MULTIPLATFORM 875e76f4750SRussell King help 876e76f4750SRussell King Say Y here if your platform doesn't provide a UART option 877730cc26fSRussell King above. This relies on your platform choosing the right UART 878e76f4750SRussell King definition internally in order for low-level debugging to 879e76f4750SRussell King work. 880e76f4750SRussell King 881e76f4750SRussell King config DEBUG_ICEDCC 882e76f4750SRussell King bool "Kernel low-level debugging via EmbeddedICE DCC channel" 883e76f4750SRussell King help 884e76f4750SRussell King Say Y here if you want the debug print routines to direct 885e76f4750SRussell King their output to the EmbeddedICE macrocell's DCC channel using 886e76f4750SRussell King co-processor 14. This is known to work on the ARM9 style ICE 887e76f4750SRussell King channel and on the XScale with the PEEDI. 888e76f4750SRussell King 889e76f4750SRussell King Note that the system will appear to hang during boot if there 890e76f4750SRussell King is nothing connected to read from the DCC. 891e76f4750SRussell King 892b0df8986SRussell King config DEBUG_SEMIHOSTING 89362194bdaSStephen Boyd bool "Kernel low-level debug output via semihosting I/O" 894b0df8986SRussell King help 895b0df8986SRussell King Semihosting enables code running on an ARM target to use 896b0df8986SRussell King the I/O facilities on a host debugger/emulator through a 89762194bdaSStephen Boyd simple SVC call. The host debugger or emulator must have 898b0df8986SRussell King semihosting enabled for the special svc call to be trapped 899b0df8986SRussell King otherwise the kernel will crash. 900b0df8986SRussell King 901b0df8986SRussell King This is known to work with OpenOCD, as well as 902b0df8986SRussell King ARM's Fast Models, or any other controlling environment 903b0df8986SRussell King that implements semihosting. 904b0df8986SRussell King 905b0df8986SRussell King For more details about semihosting, please see 906b0df8986SRussell King chapter 8 of DUI0203I_rvct_developer_guide.pdf from ARM Ltd. 907b0df8986SRussell King 908f8f1279cSRussell King config DEBUG_LL_UART_8250 909f8f1279cSRussell King bool "Kernel low-level debugging via 8250 UART" 910f8f1279cSRussell King help 911f8f1279cSRussell King Say Y here if you wish the debug print routes to direct 912f8f1279cSRussell King their output to an 8250 UART. You can use this option 913f8f1279cSRussell King to provide the parameters for the 8250 UART rather than 914f8f1279cSRussell King selecting one of the platform specific options above if 915f8f1279cSRussell King you know the parameters for the port. 916f8f1279cSRussell King 917f8f1279cSRussell King This option is preferred over the platform specific 918f8f1279cSRussell King options; the platform specific options are deprecated 919f8f1279cSRussell King and will be soon removed. 920f8f1279cSRussell King 921494e492dSUwe Kleine-König config DEBUG_LL_UART_EFM32 922494e492dSUwe Kleine-König bool "Kernel low-level debugging via efm32 UART" 923494e492dSUwe Kleine-König depends on ARCH_EFM32 924494e492dSUwe Kleine-König help 925494e492dSUwe Kleine-König Say Y here if you want the debug print routines to direct 926494e492dSUwe Kleine-König their output to an UART or USART port on efm32 based 927494e492dSUwe Kleine-König machines. Use the following addresses for DEBUG_UART_PHYS: 928494e492dSUwe Kleine-König 929494e492dSUwe Kleine-König 0x4000c000 | USART0 930494e492dSUwe Kleine-König 0x4000c400 | USART1 931494e492dSUwe Kleine-König 0x4000c800 | USART2 932494e492dSUwe Kleine-König 0x4000e000 | UART0 933494e492dSUwe Kleine-König 0x4000e400 | UART1 934494e492dSUwe Kleine-König 935f8f1279cSRussell King config DEBUG_LL_UART_PL01X 936f8f1279cSRussell King bool "Kernel low-level debugging via ARM Ltd PL01x Primecell UART" 937f8f1279cSRussell King help 938f8f1279cSRussell King Say Y here if you wish the debug print routes to direct 939f8f1279cSRussell King their output to a PL01x Primecell UART. You can use 940f8f1279cSRussell King this option to provide the parameters for the UART 941f8f1279cSRussell King rather than selecting one of the platform specific 942f8f1279cSRussell King options above if you know the parameters for the port. 943f8f1279cSRussell King 944f8f1279cSRussell King This option is preferred over the platform specific 945f8f1279cSRussell King options; the platform specific options are deprecated 946f8f1279cSRussell King and will be soon removed. 947f8f1279cSRussell King 94817916b28SWill Deaconendchoice 94917916b28SWill Deacon 950a2e40710SArnd Bergmannconfig DEBUG_EXYNOS_UART 951a2e40710SArnd Bergmann bool 952a2e40710SArnd Bergmann 953daf67dfcSHeiko Stuebnerconfig DEBUG_S3C2410_UART 954daf67dfcSHeiko Stuebner bool 9551899de28SHeiko Stuebner select DEBUG_S3C24XX_UART 9561899de28SHeiko Stuebner 9571899de28SHeiko Stuebnerconfig DEBUG_S3C24XX_UART 9581899de28SHeiko Stuebner bool 959daf67dfcSHeiko Stuebner 960cce278d2SRussell Kingconfig DEBUG_OMAP2PLUS_UART 961cce278d2SRussell King bool 962cce278d2SRussell King depends on ARCH_OMAP2PLUS 963cce278d2SRussell King 964f8c95fe6SShawn Guoconfig DEBUG_IMX_UART_PORT 965f8c95fe6SShawn Guo int "i.MX Debug UART Port Selection" if DEBUG_IMX1_UART || \ 966f8c95fe6SShawn Guo DEBUG_IMX25_UART || \ 967f8c95fe6SShawn Guo DEBUG_IMX21_IMX27_UART || \ 968f8c95fe6SShawn Guo DEBUG_IMX31_UART || \ 969f8c95fe6SShawn Guo DEBUG_IMX35_UART || \ 970ad364a70SGreg Ungerer DEBUG_IMX50_UART || \ 971f8c95fe6SShawn Guo DEBUG_IMX51_UART || \ 9720c52db7eSPaul Bolle DEBUG_IMX53_UART || \ 97334e8a16bSShawn Guo DEBUG_IMX6Q_UART || \ 97474368e81SShawn Guo DEBUG_IMX6SL_UART || \ 97574368e81SShawn Guo DEBUG_IMX6SX_UART 97649c9e60eSShawn Guo default 1 977287939a3SShawn Guo depends on ARCH_MXC 97849c9e60eSShawn Guo help 97949c9e60eSShawn Guo Choose UART port on which kernel low-level debug messages 98049c9e60eSShawn Guo should be output. 98149c9e60eSShawn Guo 982cfdb7d56SStefan Agnerconfig DEBUG_VF_UART_PORT 983cfdb7d56SStefan Agner int "Vybrid Debug UART Port Selection" if DEBUG_VF_UART 984cfdb7d56SStefan Agner default 1 985cfdb7d56SStefan Agner range 0 3 986cfdb7d56SStefan Agner depends on SOC_VF610 987cfdb7d56SStefan Agner help 988cfdb7d56SStefan Agner Choose UART port on which kernel low-level debug messages 989cfdb7d56SStefan Agner should be output. 990cfdb7d56SStefan Agner 991cce278d2SRussell Kingconfig DEBUG_TEGRA_UART 992cce278d2SRussell King bool 993cce278d2SRussell King depends on ARCH_TEGRA 994808b7e07STony Lindgren 995cce278d2SRussell Kingconfig DEBUG_STI_UART 996cce278d2SRussell King bool 997cce278d2SRussell King depends on ARCH_STI 9985026aecfSSrinivas Kandagatla 99991a9fec0SRob Herringconfig DEBUG_LL_INCLUDE 100091a9fec0SRob Herring string 1001f8f1279cSRussell King default "debug/8250.S" if DEBUG_LL_UART_8250 || DEBUG_UART_8250 1002f8f1279cSRussell King default "debug/pl01x.S" if DEBUG_LL_UART_PL01X || DEBUG_UART_PL01X 1003a2e40710SArnd Bergmann default "debug/exynos.S" if DEBUG_EXYNOS_UART 1004494e492dSUwe Kleine-König default "debug/efm32.S" if DEBUG_LL_UART_EFM32 100591a9fec0SRob Herring default "debug/icedcc.S" if DEBUG_ICEDCC 10066dde5ac5SShawn Guo default "debug/imx.S" if DEBUG_IMX1_UART || \ 10076dde5ac5SShawn Guo DEBUG_IMX25_UART || \ 10086dde5ac5SShawn Guo DEBUG_IMX21_IMX27_UART || \ 10094ad625d4SShawn Guo DEBUG_IMX31_UART || \ 10104ad625d4SShawn Guo DEBUG_IMX35_UART || \ 1011ad364a70SGreg Ungerer DEBUG_IMX50_UART || \ 10126dde5ac5SShawn Guo DEBUG_IMX51_UART || \ 10137356420cSFabio Estevam DEBUG_IMX53_UART ||\ 101434e8a16bSShawn Guo DEBUG_IMX6Q_UART || \ 101574368e81SShawn Guo DEBUG_IMX6SL_UART || \ 101674368e81SShawn Guo DEBUG_IMX6SX_UART 10177098cff2SIvan T. Ivanov default "debug/msm.S" if DEBUG_MSM_UART || DEBUG_QCOM_UARTDM 1018808b7e07STony Lindgren default "debug/omap2plus.S" if DEBUG_OMAP2PLUS_UART 10192cd62bd4SHeiko Stuebner default "debug/s3c24xx.S" if DEBUG_S3C24XX_UART 102067bdb287SArnd Bergmann default "debug/sirf.S" if DEBUG_SIRFPRIMA2_UART1 || DEBUG_SIRFMARCO_UART1 10215026aecfSSrinivas Kandagatla default "debug/sti.S" if DEBUG_STI_UART 1022150a8dcfSLinus Torvalds default "debug/tegra.S" if DEBUG_TEGRA_UART 1023150a8dcfSLinus Torvalds default "debug/ux500.S" if DEBUG_UX500_UART 10244e218b99SRussell King default "debug/vexpress.S" if DEBUG_VEXPRESS_UART0_DETECT 1025c7c3eac6SShawn Guo default "debug/vf.S" if DEBUG_VF_UART 1026b61a2722STony Prisk default "debug/vt8500.S" if DEBUG_VT8500_UART0 1027385f02b1SJosh Cartwright default "debug/zynq.S" if DEBUG_ZYNQ_UART0 || DEBUG_ZYNQ_UART1 102891a9fec0SRob Herring default "mach/debug-macro.S" 102991a9fec0SRob Herring 1030f8f1279cSRussell King# Compatibility options for PL01x 10315c972af4SRussell Kingconfig DEBUG_UART_PL01X 10325c972af4SRussell King def_bool ARCH_EP93XX || \ 10335c972af4SRussell King ARCH_INTEGRATOR || \ 10340dc0e475SRussell King ARCH_SPEAR3XX || \ 10350dc0e475SRussell King ARCH_SPEAR6XX || \ 10360dc0e475SRussell King ARCH_SPEAR13XX || \ 10375c972af4SRussell King ARCH_VERSATILE 10385c972af4SRussell King 1039f8f1279cSRussell King# Compatibility options for 8250 10407610b607SRussell Kingconfig DEBUG_UART_8250 10414a003647SRussell King def_bool ARCH_DOVE || ARCH_EBSA110 || \ 10424a003647SRussell King (FOOTBRIDGE && !DEBUG_DC21285_PORT) || \ 10434a003647SRussell King ARCH_GEMINI || ARCH_IOP13XX || ARCH_IOP32X || \ 10444a003647SRussell King ARCH_IOP33X || ARCH_IXP4XX || ARCH_KIRKWOOD || \ 10454a003647SRussell King ARCH_LPC32XX || ARCH_MV78XX0 || ARCH_ORION5X || ARCH_RPC 10464a003647SRussell King 1047c3faa9b7SRussell Kingconfig DEBUG_UART_PHYS 1048c3faa9b7SRussell King hex "Physical base address of debug UART" 104997bd1a48SRussell King default 0x01c20000 if DEBUG_DAVINCI_DMx_UART0 1050c3faa9b7SRussell King default 0x01c28000 if DEBUG_SUNXI_UART0 1051c3faa9b7SRussell King default 0x01c28400 if DEBUG_SUNXI_UART1 105297bd1a48SRussell King default 0x01d0c000 if DEBUG_DAVINCI_DA8XX_UART1 105397bd1a48SRussell King default 0x01d0d000 if DEBUG_DAVINCI_DA8XX_UART2 1054f2acf003SRussell King default 0x02530c00 if DEBUG_KEYSTONE_UART0 1055f2acf003SRussell King default 0x02531000 if DEBUG_KEYSTONE_UART1 1056c3faa9b7SRussell King default 0x03010fe0 if ARCH_RPC 10575c972af4SRussell King default 0x10009000 if DEBUG_REALVIEW_STD_PORT || DEBUG_CNS3XXX || \ 10585c972af4SRussell King DEBUG_VEXPRESS_UART0_CA9 10595c972af4SRussell King default 0x1010c000 if DEBUG_REALVIEW_PB1176_PORT 1060c3faa9b7SRussell King default 0x10124000 if DEBUG_RK3X_UART0 1061c3faa9b7SRussell King default 0x10126000 if DEBUG_RK3X_UART1 10625c972af4SRussell King default 0x101f1000 if ARCH_VERSATILE 10635c972af4SRussell King default 0x101fb000 if DEBUG_NOMADIK_UART 10645c972af4SRussell King default 0x16000000 if ARCH_INTEGRATOR 106506580275SHauke Mehrtens default 0x18000300 if DEBUG_BCM_5301X 10665c972af4SRussell King default 0x1c090000 if DEBUG_VEXPRESS_UART0_RS1 1067c3faa9b7SRussell King default 0x20060000 if DEBUG_RK29_UART0 1068c3faa9b7SRussell King default 0x20064000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2 1069c3faa9b7SRussell King default 0x20068000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3 10705c972af4SRussell King default 0x20201000 if DEBUG_BCM2835 1071753d1243SChristian Daudt default 0x3e000000 if DEBUG_BCM_KONA_UART 1072494e492dSUwe Kleine-König default 0x4000e400 if DEBUG_LL_UART_EFM32 1073c3faa9b7SRussell King default 0x40090000 if ARCH_LPC32XX 1074c3faa9b7SRussell King default 0x40100000 if DEBUG_PXA_UART1 1075c3faa9b7SRussell King default 0x42000000 if ARCH_GEMINI 10761899de28SHeiko Stuebner default 0x50000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \ 10771899de28SHeiko Stuebner DEBUG_S3C2410_UART0) 10781899de28SHeiko Stuebner default 0x50004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \ 10791899de28SHeiko Stuebner DEBUG_S3C2410_UART1) 10801899de28SHeiko Stuebner default 0x50008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \ 10811899de28SHeiko Stuebner DEBUG_S3C2410_UART2) 1082c3faa9b7SRussell King default 0x7c0003f8 if FOOTBRIDGE 10835c972af4SRussell King default 0x80070000 if DEBUG_IMX23_UART 10845c972af4SRussell King default 0x80074000 if DEBUG_IMX28_UART 1085c39e1ef7SAlexander Shiyan default 0x80230000 if DEBUG_PICOXCELL_UART 10865c972af4SRussell King default 0x808c0000 if ARCH_EP93XX 10875c972af4SRussell King default 0x90020000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART 10887098cff2SIvan T. Ivanov default 0xa9a00000 if DEBUG_MSM_UART 10895c972af4SRussell King default 0xb0090000 if DEBUG_VEXPRESS_UART0_CRX 10905c972af4SRussell King default 0xc0013000 if DEBUG_U300_UART 1091c3faa9b7SRussell King default 0xc8000000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN 1092c3faa9b7SRussell King default 0xc8000003 if ARCH_IXP4XX && CPU_BIG_ENDIAN 10930dc0e475SRussell King default 0xd0000000 if ARCH_SPEAR3XX || ARCH_SPEAR6XX 1094c3faa9b7SRussell King default 0xd0012000 if DEBUG_MVEBU_UART 1095c3faa9b7SRussell King default 0xd4017000 if DEBUG_MMP_UART2 1096c3faa9b7SRussell King default 0xd4018000 if DEBUG_MMP_UART3 10970dc0e475SRussell King default 0xe0000000 if ARCH_SPEAR13XX 1098c3faa9b7SRussell King default 0xf0000be0 if ARCH_EBSA110 1099c3faa9b7SRussell King default 0xf1012000 if DEBUG_MVEBU_UART_ALTERNATE 1100c3faa9b7SRussell King default 0xf1012000 if ARCH_DOVE || ARCH_KIRKWOOD || ARCH_MV78XX0 || \ 1101c3faa9b7SRussell King ARCH_ORION5X 1102caad0b41SSebastian Hesselbarth default 0xf7fc9000 if DEBUG_BERLIN_UART 11038d258bebSHaojian Zhuang default 0xf8b00000 if DEBUG_HI3716_UART 11047098cff2SIvan T. Ivanov default 0xf991e000 if DEBUG_QCOM_UARTDM 11058d258bebSHaojian Zhuang default 0xfcb00000 if DEBUG_HI3620_UART 1106c3faa9b7SRussell King default 0xfe800000 if ARCH_IOP32X 1107*efd02ee9SHeiko Stuebner default 0xff690000 if DEBUG_RK32_UART2 11080b4cccbeSRussell King default 0xffc02000 if DEBUG_SOCFPGA_UART 1109c3faa9b7SRussell King default 0xffd82340 if ARCH_IOP13XX 11105c972af4SRussell King default 0xfff36000 if DEBUG_HIGHBANK_UART 1111c3faa9b7SRussell King default 0xfffff700 if ARCH_IOP33X 1112f8f1279cSRussell King depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \ 1113494e492dSUwe Kleine-König DEBUG_LL_UART_EFM32 || \ 11147098cff2SIvan T. Ivanov DEBUG_UART_8250 || DEBUG_UART_PL01X || \ 1115fe388facSOlof Johansson DEBUG_MSM_UART || DEBUG_QCOM_UARTDM || DEBUG_S3C24XX_UART 1116c3faa9b7SRussell King 1117c3faa9b7SRussell Kingconfig DEBUG_UART_VIRT 1118c3faa9b7SRussell King hex "Virtual base address of debug UART" 1119c3faa9b7SRussell King default 0xe0010fe0 if ARCH_RPC 11207098cff2SIvan T. Ivanov default 0xe1000000 if DEBUG_MSM_UART 1121c3faa9b7SRussell King default 0xf0000be0 if ARCH_EBSA110 11225c972af4SRussell King default 0xf0009000 if DEBUG_CNS3XXX 11235c972af4SRussell King default 0xf01fb000 if DEBUG_NOMADIK_UART 11245c972af4SRussell King default 0xf0201000 if DEBUG_BCM2835 112506580275SHauke Mehrtens default 0xf1000300 if DEBUG_BCM_5301X 11265c972af4SRussell King default 0xf11f1000 if ARCH_VERSATILE 11275c972af4SRussell King default 0xf1600000 if ARCH_INTEGRATOR 1128c3faa9b7SRussell King default 0xf1c28000 if DEBUG_SUNXI_UART0 1129c3faa9b7SRussell King default 0xf1c28400 if DEBUG_SUNXI_UART1 1130c3faa9b7SRussell King default 0xf2100000 if DEBUG_PXA_UART1 1131c3faa9b7SRussell King default 0xf4090000 if ARCH_LPC32XX 1132c3faa9b7SRussell King default 0xf4200000 if ARCH_GEMINI 11331899de28SHeiko Stuebner default 0xf7000000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART0 || \ 11341899de28SHeiko Stuebner DEBUG_S3C2410_UART0) 11351899de28SHeiko Stuebner default 0xf7004000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART1 || \ 11361899de28SHeiko Stuebner DEBUG_S3C2410_UART1) 11371899de28SHeiko Stuebner default 0xf7008000 if DEBUG_S3C24XX_UART && (DEBUG_S3C_UART2 || \ 11381899de28SHeiko Stuebner DEBUG_S3C2410_UART2) 1139caad0b41SSebastian Hesselbarth default 0xf7fc9000 if DEBUG_BERLIN_UART 11405c972af4SRussell King default 0xf8009000 if DEBUG_VEXPRESS_UART0_CA9 11415c972af4SRussell King default 0xf8090000 if DEBUG_VEXPRESS_UART0_RS1 11427098cff2SIvan T. Ivanov default 0xfa71e000 if DEBUG_QCOM_UARTDM 11435c972af4SRussell King default 0xfb009000 if DEBUG_REALVIEW_STD_PORT 11445c972af4SRussell King default 0xfb10c000 if DEBUG_REALVIEW_PB1176_PORT 11450dc0e475SRussell King default 0xfd000000 if ARCH_SPEAR3XX || ARCH_SPEAR6XX 11460dc0e475SRussell King default 0xfd000000 if ARCH_SPEAR13XX 1147c3faa9b7SRussell King default 0xfd012000 if ARCH_MV78XX0 1148c3faa9b7SRussell King default 0xfde12000 if ARCH_DOVE 1149c3faa9b7SRussell King default 0xfe012000 if ARCH_ORION5X 1150c3faa9b7SRussell King default 0xfe017000 if DEBUG_MMP_UART2 1151c3faa9b7SRussell King default 0xfe018000 if DEBUG_MMP_UART3 11525c972af4SRussell King default 0xfe100000 if DEBUG_IMX23_UART || DEBUG_IMX28_UART 11530b4cccbeSRussell King default 0xfe230000 if DEBUG_PICOXCELL_UART 1154753d1243SChristian Daudt default 0xfe300000 if DEBUG_BCM_KONA_UART 1155c3faa9b7SRussell King default 0xfe800000 if ARCH_IOP32X 11568d258bebSHaojian Zhuang default 0xfeb00000 if DEBUG_HI3620_UART || DEBUG_HI3716_UART 1157c3faa9b7SRussell King default 0xfeb24000 if DEBUG_RK3X_UART0 1158c3faa9b7SRussell King default 0xfeb26000 if DEBUG_RK3X_UART1 1159f2acf003SRussell King default 0xfeb30c00 if DEBUG_KEYSTONE_UART0 1160f2acf003SRussell King default 0xfeb31000 if DEBUG_KEYSTONE_UART1 11610b4cccbeSRussell King default 0xfec02000 if DEBUG_SOCFPGA_UART 1162c39e1ef7SAlexander Shiyan default 0xfec12000 if DEBUG_MVEBU_UART || DEBUG_MVEBU_UART_ALTERNATE 116397bd1a48SRussell King default 0xfec20000 if DEBUG_DAVINCI_DMx_UART0 1164*efd02ee9SHeiko Stuebner default 0xfec90000 if DEBUG_RK32_UART2 116597bd1a48SRussell King default 0xfed0c000 if DEBUG_DAVINCI_DA8XX_UART1 116697bd1a48SRussell King default 0xfed0d000 if DEBUG_DAVINCI_DA8XX_UART2 1167c3faa9b7SRussell King default 0xfed12000 if ARCH_KIRKWOOD 1168c39e1ef7SAlexander Shiyan default 0xfed60000 if DEBUG_RK29_UART0 1169c39e1ef7SAlexander Shiyan default 0xfed64000 if DEBUG_RK29_UART1 || DEBUG_RK3X_UART2 1170c39e1ef7SAlexander Shiyan default 0xfed68000 if DEBUG_RK29_UART2 || DEBUG_RK3X_UART3 11715c972af4SRussell King default 0xfedc0000 if ARCH_EP93XX 1172c3faa9b7SRussell King default 0xfee003f8 if FOOTBRIDGE 11735c972af4SRussell King default 0xfee20000 if DEBUG_NSPIRE_CLASSIC_UART || DEBUG_NSPIRE_CX_UART 1174c3faa9b7SRussell King default 0xfee82340 if ARCH_IOP13XX 1175c3faa9b7SRussell King default 0xfef00000 if ARCH_IXP4XX && !CPU_BIG_ENDIAN 1176c3faa9b7SRussell King default 0xfef00003 if ARCH_IXP4XX && CPU_BIG_ENDIAN 1177c39e1ef7SAlexander Shiyan default 0xfef36000 if DEBUG_HIGHBANK_UART 1178c3faa9b7SRussell King default 0xfefff700 if ARCH_IOP33X 11795c972af4SRussell King default 0xff003000 if DEBUG_U300_UART 11805c972af4SRussell King default DEBUG_UART_PHYS if !MMU 1181f8f1279cSRussell King depends on DEBUG_LL_UART_8250 || DEBUG_LL_UART_PL01X || \ 11827098cff2SIvan T. Ivanov DEBUG_UART_8250 || DEBUG_UART_PL01X || \ 1183fe388facSOlof Johansson DEBUG_MSM_UART || DEBUG_QCOM_UARTDM || DEBUG_S3C24XX_UART 1184c3faa9b7SRussell King 11854a003647SRussell Kingconfig DEBUG_UART_8250_SHIFT 11864a003647SRussell King int "Register offset shift for the 8250 debug UART" 1187f8f1279cSRussell King depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250 11884a003647SRussell King default 0 if FOOTBRIDGE || ARCH_IOP32X 11894a003647SRussell King default 2 11907610b607SRussell King 11910b4cccbeSRussell Kingconfig DEBUG_UART_8250_WORD 11920b4cccbeSRussell King bool "Use 32-bit accesses for 8250 UART" 1193f8f1279cSRussell King depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250 11940b4cccbeSRussell King depends on DEBUG_UART_8250_SHIFT >= 2 1195f2acf003SRussell King default y if DEBUG_PICOXCELL_UART || DEBUG_SOCFPGA_UART || \ 119697bd1a48SRussell King ARCH_KEYSTONE || \ 119797bd1a48SRussell King DEBUG_DAVINCI_DMx_UART0 || DEBUG_DAVINCI_DA8XX_UART1 || \ 11989d6eccb9SArnd Bergmann DEBUG_DAVINCI_DA8XX_UART2 || \ 1199*efd02ee9SHeiko Stuebner DEBUG_BCM_KONA_UART || DEBUG_RK32_UART2 12000b4cccbeSRussell King 12017610b607SRussell Kingconfig DEBUG_UART_8250_FLOW_CONTROL 12027610b607SRussell King bool "Enable flow control for 8250 UART" 1203f8f1279cSRussell King depends on DEBUG_LL_UART_8250 || DEBUG_UART_8250 12047610b607SRussell King default y if ARCH_EBSA110 || FOOTBRIDGE || ARCH_GEMINI || ARCH_RPC 12057610b607SRussell King 12063b4af9bcSShawn Guoconfig DEBUG_UNCOMPRESS 12073b4af9bcSShawn Guo bool 120890266754SHeiko Stuebner depends on ARCH_MULTIPLATFORM || ARCH_MSM || PLAT_SAMSUNG 1209b6992fa9SRussell King default y if DEBUG_LL && !DEBUG_OMAP2PLUS_UART && \ 1210ae3c99a2SStephen Warren (!DEBUG_TEGRA_UART || !ZBOOT_ROM) 1211b6992fa9SRussell King help 1212b6992fa9SRussell King This option influences the normal decompressor output for 1213b6992fa9SRussell King multiplatform kernels. Normally, multiplatform kernels disable 1214b6992fa9SRussell King decompressor output because it is not possible to know where to 1215b6992fa9SRussell King send the decompressor output. 1216b6992fa9SRussell King 1217b6992fa9SRussell King When this option is set, the selected DEBUG_LL output method 1218b6992fa9SRussell King will be re-used for normal decompressor output on multiplatform 1219b6992fa9SRussell King kernels. 1220b6992fa9SRussell King 12213b4af9bcSShawn Guo 1222615967b0SShawn Guoconfig UNCOMPRESS_INCLUDE 1223615967b0SShawn Guo string 1224ffd80eccSSachin Kamat default "debug/uncompress.h" if ARCH_MULTIPLATFORM || ARCH_MSM || \ 12252bf73dd6SLinus Torvalds PLAT_SAMSUNG || ARCH_EFM32 1226615967b0SShawn Guo default "mach/uncompress.h" 1227615967b0SShawn Guo 122893fd03a8SCatalin Marinasconfig EARLY_PRINTK 122993fd03a8SCatalin Marinas bool "Early printk" 123093fd03a8SCatalin Marinas depends on DEBUG_LL 123193fd03a8SCatalin Marinas help 123293fd03a8SCatalin Marinas Say Y here if you want to have an early console using the 123393fd03a8SCatalin Marinas kernel low-level debugging functions. Add earlyprintk to your 123493fd03a8SCatalin Marinas kernel parameters to enable this console. 123593fd03a8SCatalin Marinas 1236c5d6c770SAlexander Shishkinconfig OC_ETM 1237c5d6c770SAlexander Shishkin bool "On-chip ETM and ETB" 123853eebb0dSArnd Bergmann depends on ARM_AMBA 1239c5d6c770SAlexander Shishkin help 1240c5d6c770SAlexander Shishkin Enables the on-chip embedded trace macrocell and embedded trace 1241c5d6c770SAlexander Shishkin buffer driver that will allow you to collect traces of the 1242c5d6c770SAlexander Shishkin kernel code. 1243c5d6c770SAlexander Shishkin 12444189bc71SJon Medhurstconfig ARM_KPROBES_TEST 12454189bc71SJon Medhurst tristate "Kprobes test module" 12464189bc71SJon Medhurst depends on KPROBES && MODULES 12474189bc71SJon Medhurst help 12484189bc71SJon Medhurst Perform tests of kprobes API and instruction set simulation. 12494189bc71SJon Medhurst 1250575320d6SWill Deaconconfig PID_IN_CONTEXTIDR 1251575320d6SWill Deacon bool "Write the current PID to the CONTEXTIDR register" 1252575320d6SWill Deacon depends on CPU_COPY_V6 1253575320d6SWill Deacon help 1254575320d6SWill Deacon Enabling this option causes the kernel to write the current PID to 1255575320d6SWill Deacon the PROCID field of the CONTEXTIDR register, at the expense of some 1256575320d6SWill Deacon additional instructions during context switch. Say Y here only if you 1257575320d6SWill Deacon are planning to use hardware trace tools with this kernel. 1258575320d6SWill Deacon 1259dca9aa92SLaura Abbottconfig DEBUG_SET_MODULE_RONX 1260dca9aa92SLaura Abbott bool "Set loadable kernel module data as NX and text as RO" 1261dca9aa92SLaura Abbott depends on MODULES 1262dca9aa92SLaura Abbott ---help--- 1263dca9aa92SLaura Abbott This option helps catch unintended modifications to loadable 1264dca9aa92SLaura Abbott kernel module's text and read-only data. It also prevents execution 1265dca9aa92SLaura Abbott of module data. Such protection may interfere with run-time code 1266dca9aa92SLaura Abbott patching and dynamic kernel tracing - and they might also protect 1267dca9aa92SLaura Abbott against certain classes of kernel exploits. 1268dca9aa92SLaura Abbott If in doubt, say "N". 1269dca9aa92SLaura Abbott 12701da177e4SLinus Torvaldsendmenu 1271