linux/arch/powerpc/Kconfig.debug
<<
>>
Prefs
   1menu "Kernel hacking"
   2
   3source "lib/Kconfig.debug"
   4
   5config DEBUG_STACKOVERFLOW
   6        bool "Check for stack overflows"
   7        depends on DEBUG_KERNEL
   8        help
   9          This option will cause messages to be printed if free stack space
  10          drops below a certain limit.
  11
  12config DEBUG_STACK_USAGE
  13        bool "Stack utilization instrumentation"
  14        depends on DEBUG_KERNEL
  15        help
  16          Enables the display of the minimum amount of free stack which each
  17          task has ever had available in the sysrq-T and sysrq-P debug output.
  18
  19          This option will slow down process creation somewhat.
  20
  21config DEBUG_PAGEALLOC
  22        bool "Debug page memory allocations"
  23        depends on DEBUG_KERNEL && !HIBERNATION
  24        help
  25          Unmap pages from the kernel linear mapping after free_pages().
  26          This results in a large slowdown, but helps to find certain types
  27          of memory corruptions.
  28
  29
  30config HCALL_STATS
  31        bool "Hypervisor call instrumentation"
  32        depends on PPC_PSERIES && DEBUG_FS
  33        help
  34          Adds code to keep track of the number of hypervisor calls made and
  35          the amount of time spent in hypervisor calls.  Wall time spent in
  36          each call is always calculated, and if available CPU cycles spent
  37          are also calculated.  A directory named hcall_inst is added at the
  38          root of the debugfs filesystem.  Within the hcall_inst directory
  39          are files that contain CPU specific call statistics.
  40
  41          This option will add a small amount of overhead to all hypervisor
  42          calls.
  43
  44config CODE_PATCHING_SELFTEST
  45        bool "Run self-tests of the code-patching code."
  46        depends on DEBUG_KERNEL
  47        default n
  48
  49config FTR_FIXUP_SELFTEST
  50        bool "Run self-tests of the feature-fixup code."
  51        depends on DEBUG_KERNEL
  52        default n
  53
  54config XMON
  55        bool "Include xmon kernel debugger"
  56        depends on DEBUG_KERNEL
  57        help
  58          Include in-kernel hooks for the xmon kernel monitor/debugger.
  59          Unless you are intending to debug the kernel, say N here.
  60          Make sure to enable also CONFIG_BOOTX_TEXT on Macs. Otherwise
  61          nothing will appear on the screen (xmon writes directly to the
  62          framebuffer memory).
  63          The cmdline option 'xmon' or 'xmon=early' will drop into xmon
  64          very early during boot. 'xmon=on' will just enable the xmon
  65          debugger hooks.  'xmon=off' will disable the debugger hooks
  66          if CONFIG_XMON_DEFAULT is set.
  67          xmon will print a backtrace on the very first invocation.
  68          'xmon=nobt' will disable this autobacktrace.
  69
  70config XMON_DEFAULT
  71        bool "Enable xmon by default"
  72        depends on XMON
  73        help
  74          xmon is normally disabled unless booted with 'xmon=on'.
  75          Use 'xmon=off' to disable xmon init during runtime.
  76
  77config XMON_DISASSEMBLY
  78        bool "Include disassembly support in xmon"
  79        depends on XMON
  80        default y
  81        help
  82          Include support for disassembling in xmon. You probably want
  83          to say Y here, unless you're building for a memory-constrained
  84          system.
  85
  86config DEBUGGER
  87        bool
  88        depends on KGDB || XMON
  89        default y
  90
  91config IRQSTACKS
  92        bool "Use separate kernel stacks when processing interrupts"
  93        help
  94          If you say Y here the kernel will use separate kernel stacks
  95          for handling hard and soft interrupts.  This can help avoid
  96          overflowing the process kernel stacks.
  97
  98config VIRQ_DEBUG
  99        bool "Expose hardware/virtual IRQ mapping via debugfs"
 100        depends on DEBUG_FS
 101        help
 102          This option will show the mapping relationship between hardware irq
 103          numbers and virtual irq numbers. The mapping is exposed via debugfs
 104          in the file powerpc/virq_mapping.
 105
 106          If you don't know what this means you don't need it.
 107
 108config BDI_SWITCH
 109        bool "Include BDI-2000 user context switcher"
 110        depends on DEBUG_KERNEL && PPC32
 111        help
 112          Include in-kernel support for the Abatron BDI2000 debugger.
 113          Unless you are intending to debug the kernel with one of these
 114          machines, say N here.
 115
 116config BOOTX_TEXT
 117        bool "Support for early boot text console (BootX or OpenFirmware only)"
 118        depends on PPC_OF && PPC_MULTIPLATFORM
 119        help
 120          Say Y here to see progress messages from the boot firmware in text
 121          mode. Requires either BootX or Open Firmware.
 122
 123config PPC_EARLY_DEBUG
 124        bool "Early debugging (dangerous)"
 125        # PPC_EARLY_DEBUG on 440 leaves AS=1 mappings above the TLB high water
 126        # mark, which doesn't work with current 440 KVM.
 127        depends on !KVM
 128        help
 129          Say Y to enable some early debugging facilities that may be available
 130          for your processor/board combination. Those facilities are hacks
 131          intended to debug problems early during boot, this should not be
 132          enabled in a production kernel.
 133          Note that enabling this will also cause the kernel default log level
 134          to be pushed to max automatically very early during boot
 135
 136choice
 137        prompt "Early debugging console"
 138        depends on PPC_EARLY_DEBUG
 139        help
 140          Use the selected console for early debugging. Careful, if you
 141          enable debugging for the wrong type of machine your kernel
 142          _will not boot_.
 143
 144config PPC_EARLY_DEBUG_LPAR
 145        bool "LPAR HV Console"
 146        depends on PPC_PSERIES
 147        help
 148          Select this to enable early debugging for a machine with a HVC
 149          console on vterm 0.
 150
 151config PPC_EARLY_DEBUG_G5
 152        bool "Apple G5"
 153        depends on PPC_PMAC64
 154        help
 155          Select this to enable early debugging for Apple G5 machines.
 156
 157config PPC_EARLY_DEBUG_RTAS_PANEL
 158        bool "RTAS Panel"
 159        depends on PPC_RTAS
 160        help
 161          Select this to enable early debugging via the RTAS panel.
 162
 163config PPC_EARLY_DEBUG_RTAS_CONSOLE
 164        bool "RTAS Console"
 165        depends on PPC_RTAS
 166        select UDBG_RTAS_CONSOLE
 167        help
 168          Select this to enable early debugging via the RTAS console.
 169
 170config PPC_EARLY_DEBUG_MAPLE
 171        bool "Maple real mode"
 172        depends on PPC_MAPLE
 173        help
 174          Select this to enable early debugging for Maple.
 175
 176config PPC_EARLY_DEBUG_ISERIES
 177        bool "iSeries HV Console"
 178        depends on PPC_ISERIES
 179        help
 180          Select this to enable early debugging for legacy iSeries. You need
 181          to hit "Ctrl-x Ctrl-x" to see the messages on the console.
 182
 183config PPC_EARLY_DEBUG_PAS_REALMODE
 184        bool "PA Semi real mode"
 185        depends on PPC_PASEMI
 186        help
 187          Select this to enable early debugging for PA Semi.
 188          Output will be on UART0.
 189
 190config PPC_EARLY_DEBUG_BEAT
 191        bool "Beat HV Console"
 192        depends on PPC_CELLEB
 193        select PPC_UDBG_BEAT
 194        help
 195          Select this to enable early debugging for Celleb with Beat.
 196
 197config PPC_EARLY_DEBUG_44x
 198        bool "Early serial debugging for IBM/AMCC 44x CPUs"
 199        depends on 44x
 200        help
 201          Select this to enable early debugging for IBM 44x chips via the
 202          inbuilt serial port.  If you enable this, ensure you set
 203          PPC_EARLY_DEBUG_44x_PHYSLOW below to suit your target board.
 204
 205config PPC_EARLY_DEBUG_40x
 206        bool "Early serial debugging for IBM/AMCC 40x CPUs"
 207        depends on 40x
 208        help
 209          Select this to enable early debugging for IBM 40x chips via the
 210          inbuilt serial port. This works on chips with a 16550 compatible
 211          UART. Xilinx chips with uartlite cannot use this option.
 212
 213config PPC_EARLY_DEBUG_CPM
 214        bool "Early serial debugging for Freescale CPM-based serial ports"
 215        depends on SERIAL_CPM
 216        select PIN_TLB if PPC_8xx
 217        help
 218          Select this to enable early debugging for Freescale chips
 219          using a CPM-based serial port.  This assumes that the bootwrapper
 220          has run, and set up the CPM in a particular way.
 221
 222endchoice
 223
 224config PPC_EARLY_DEBUG_44x_PHYSLOW
 225        hex "Low 32 bits of early debug UART physical address"
 226        depends on PPC_EARLY_DEBUG_44x
 227        default "0x40000200"
 228        help
 229          You probably want 0x40000200 for ebony boards and
 230          0x40000300 for taishan
 231
 232config PPC_EARLY_DEBUG_44x_PHYSHIGH
 233        hex "EPRN of early debug UART physical address"
 234        depends on PPC_EARLY_DEBUG_44x
 235        default "0x1"
 236
 237config PPC_EARLY_DEBUG_40x_PHYSADDR
 238        hex "Early debug UART physical address"
 239        depends on PPC_EARLY_DEBUG_40x
 240        default "0xef600300"
 241
 242config PPC_EARLY_DEBUG_CPM_ADDR
 243        hex "CPM UART early debug transmit descriptor address"
 244        depends on PPC_EARLY_DEBUG_CPM
 245        default "0xfa202008" if PPC_EP88XC
 246        default "0xf0001ff8" if CPM2
 247        default "0xff002008" if CPM1
 248        help
 249          This specifies the address of the transmit descriptor
 250          used for early debug output.  Because it is needed before
 251          platform probing is done, all platforms selected must
 252          share the same address.
 253
 254endmenu
 255