Merge branch 'linux-2.6'
[safe/jmp/linux-2.6] / arch / powerpc / Kconfig.debug
index 0baf64e..c38bc22 100644 (file)
@@ -4,30 +4,43 @@ source "lib/Kconfig.debug"
 
 config DEBUG_STACKOVERFLOW
        bool "Check for stack overflows"
-       depends on DEBUG_KERNEL && PPC64
+       depends on DEBUG_KERNEL
        help
          This option will cause messages to be printed if free stack space
          drops below a certain limit.
 
-config KPROBES
-       bool "Kprobes"
-       depends on DEBUG_KERNEL && PPC64
-       help
-         Kprobes allows you to trap at almost any kernel address and
-         execute a callback function.  register_kprobe() establishes
-         a probepoint and specifies the callback.  Kprobes is useful
-         for kernel debugging, non-intrusive instrumentation and testing.
-         If in doubt, say "N".
-
 config DEBUG_STACK_USAGE
        bool "Stack utilization instrumentation"
-       depends on DEBUG_KERNEL && PPC64
+       depends on DEBUG_KERNEL
        help
          Enables the display of the minimum amount of free stack which each
          task has ever had available in the sysrq-T and sysrq-P debug output.
 
          This option will slow down process creation somewhat.
 
+config DEBUG_PAGEALLOC
+        bool "Debug page memory allocations"
+        depends on DEBUG_KERNEL && !HIBERNATION
+        help
+          Unmap pages from the kernel linear mapping after free_pages().
+          This results in a large slowdown, but helps to find certain types
+          of memory corruptions.
+
+
+config HCALL_STATS
+       bool "Hypervisor call instrumentation"
+       depends on PPC_PSERIES && DEBUG_FS
+       help
+         Adds code to keep track of the number of hypervisor calls made and
+         the amount of time spent in hypervisor calls.  Wall time spent in
+         each call is always calculated, and if available CPU cycles spent
+         are also calculated.  A directory named hcall_inst is added at the
+         root of the debugfs filesystem.  Within the hcall_inst directory
+         are files that contain CPU specific call statistics.
+
+         This option will add a small amount of overhead to all hypervisor
+         calls.
+
 config DEBUGGER
        bool "Enable debugger hooks"
        depends on DEBUG_KERNEL
@@ -73,7 +86,7 @@ config KGDB_CONSOLE
 
 config XMON
        bool "Include xmon kernel debugger"
-       depends on DEBUGGER && !PPC_ISERIES
+       depends on DEBUGGER
        help
          Include in-kernel hooks for the xmon kernel monitor/debugger.
          Unless you are intending to debug the kernel, say N here.
@@ -84,6 +97,8 @@ config XMON
          very early during boot. 'xmon=on' will just enable the xmon
          debugger hooks.  'xmon=off' will disable the debugger hooks
          if CONFIG_XMON_DEFAULT is set.
+         xmon will print a backtrace on the very first invocation.
+         'xmon=nobt' will disable this autobacktrace.
 
 config XMON_DEFAULT
        bool "Enable xmon by default"
@@ -92,6 +107,15 @@ config XMON_DEFAULT
          xmon is normally disabled unless booted with 'xmon=on'.
          Use 'xmon=off' to disable xmon init during runtime.
 
+config XMON_DISASSEMBLY
+       bool "Include disassembly support in xmon"
+       depends on XMON
+       default y
+       help
+         Include support for disassembling in xmon. You probably want
+         to say Y here, unless you're building for a memory-constrained
+         system.
+
 config IRQSTACKS
        bool "Use separate kernel stacks when processing interrupts"
        depends on PPC64
@@ -100,6 +124,16 @@ config IRQSTACKS
          for handling hard and soft interrupts.  This can help avoid
          overflowing the process kernel stacks.
 
+config VIRQ_DEBUG
+       bool "Expose hardware/virtual IRQ mapping via debugfs"
+       depends on DEBUG_FS && PPC_MERGE
+       help
+         This option will show the mapping relationship between hardware irq
+         numbers and virtual irq numbers. The mapping is exposed via debugfs
+         in the file powerpc/virq_mapping.
+
+         If you don't know what this means you don't need it.
+
 config BDI_SWITCH
        bool "Include BDI-2000 user context switcher"
        depends on DEBUG_KERNEL && PPC32
@@ -110,19 +144,93 @@ config BDI_SWITCH
 
 config BOOTX_TEXT
        bool "Support for early boot text console (BootX or OpenFirmware only)"
-       depends PPC_OF && !PPC_ISERIES
+       depends PPC_OF && PPC_MULTIPLATFORM
        help
          Say Y here to see progress messages from the boot firmware in text
          mode. Requires either BootX or Open Firmware.
 
-config SERIAL_TEXT_DEBUG
-       bool "Support for early boot texts over serial port"
-       depends on 4xx || LOPEC || MV64X60 || PPLUS || PRPMC800 || \
-               PPC_GEN550 || PPC_MPC52xx
+config PPC_EARLY_DEBUG
+       bool "Early debugging (dangerous)"
 
-config PPC_OCP
-       bool
-       depends on IBM_OCP || XILINX_OCP
-       default y
+choice
+       prompt "Early debugging console"
+       depends on PPC_EARLY_DEBUG
+       help
+         Use the selected console for early debugging. Careful, if you
+         enable debugging for the wrong type of machine your kernel
+         _will not boot_.
+
+config PPC_EARLY_DEBUG_LPAR
+       bool "LPAR HV Console"
+       depends on PPC_PSERIES
+       help
+         Select this to enable early debugging for a machine with a HVC
+         console on vterm 0.
+
+config PPC_EARLY_DEBUG_G5
+       bool "Apple G5"
+       depends on PPC_PMAC64
+       help
+         Select this to enable early debugging for Apple G5 machines.
+
+config PPC_EARLY_DEBUG_RTAS_PANEL
+       bool "RTAS Panel"
+       depends on PPC_RTAS
+       help
+         Select this to enable early debugging via the RTAS panel.
+
+config PPC_EARLY_DEBUG_RTAS_CONSOLE
+       bool "RTAS Console"
+       depends on PPC_RTAS
+       select UDBG_RTAS_CONSOLE
+       help
+         Select this to enable early debugging via the RTAS console.
+
+config PPC_EARLY_DEBUG_MAPLE
+       bool "Maple real mode"
+       depends on PPC_MAPLE
+       help
+         Select this to enable early debugging for Maple.
+
+config PPC_EARLY_DEBUG_ISERIES
+       bool "iSeries HV Console"
+       depends on PPC_ISERIES
+       help
+         Select this to enable early debugging for legacy iSeries. You need
+         to hit "Ctrl-x Ctrl-x" to see the messages on the console.
+
+config PPC_EARLY_DEBUG_PAS_REALMODE
+       bool "PA Semi real mode"
+       depends on PPC_PASEMI
+       help
+         Select this to enable early debugging for PA Semi.
+         Output will be on UART0.
+
+config PPC_EARLY_DEBUG_BEAT
+       bool "Beat HV Console"
+       depends on PPC_CELLEB
+       select PPC_UDBG_BEAT
+       help
+         Select this to enable early debugging for Celleb with Beat.
+
+config PPC_EARLY_DEBUG_44x
+       bool "Early serial debugging for IBM/AMCC 44x CPUs"
+       depends on 44x
+       select PPC_UDBG_16550
+       help
+         Select this to enable early debugging for IBM 44x chips via the
+         inbuilt serial port.
+
+endchoice
+
+config PPC_EARLY_DEBUG_44x_PHYSLOW
+       hex "Low 32 bits of early debug UART physical address"
+       depends PPC_EARLY_DEBUG_44x
+       default "0x40000200"
+
+config PPC_EARLY_DEBUG_44x_PHYSHIGH
+       hex "EPRN of early debug UART physical address"
+       depends PPC_EARLY_DEBUG_44x
+       default "0x1"
 
 endmenu