Kconfig.debug 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206
  1. menu "Kernel hacking"
  2. config TRACE_IRQFLAGS_SUPPORT
  3. def_bool y
  4. source "lib/Kconfig.debug"
  5. config SH_STANDARD_BIOS
  6. bool "Use LinuxSH standard BIOS"
  7. depends on SUPERH32
  8. help
  9. Say Y here if your target has the gdb-sh-stub
  10. package from www.m17n.org (or any conforming standard LinuxSH BIOS)
  11. in FLASH or EPROM. The kernel will use standard BIOS calls during
  12. boot for various housekeeping tasks (including calls to read and
  13. write characters to a system console, get a MAC address from an
  14. on-board Ethernet interface, and shut down the hardware). Note this
  15. does not work with machines with an existing operating system in
  16. mask ROM and no flash (WindowsCE machines fall in this category).
  17. If unsure, say N.
  18. config EARLY_SCIF_CONSOLE
  19. bool "Use early SCIF console"
  20. help
  21. This enables an early console using a fixed SCIF port. This can
  22. be used by platforms that are either not running the SH
  23. standard BIOS, or do not wish to use the BIOS callbacks for the
  24. serial I/O.
  25. config EARLY_SCIF_CONSOLE_PORT
  26. hex
  27. depends on EARLY_SCIF_CONSOLE
  28. default "0xa4400000" if CPU_SUBTYPE_SH7712 || CPU_SUBTYPE_SH7705
  29. default "0xa4430000" if CPU_SUBTYPE_SH7720 || CPU_SUBTYPE_SH7721
  30. default "0xf8420000" if CPU_SUBTYPE_SH7619
  31. default "0xff804000" if CPU_SUBTYPE_MXG
  32. default "0xffc30000" if CPU_SUBTYPE_SHX3
  33. default "0xffe00000" if CPU_SUBTYPE_SH7780 || CPU_SUBTYPE_SH7763 || \
  34. CPU_SUBTYPE_SH7722 || CPU_SUBTYPE_SH7366 || \
  35. CPU_SUBTYPE_SH7343
  36. default "0xffe80000" if CPU_SH4
  37. default "0xffea0000" if CPU_SUBTYPE_SH7785
  38. default "0xfffe8000" if CPU_SUBTYPE_SH7203
  39. default "0xfffe9800" if CPU_SUBTYPE_SH7206 || CPU_SUBTYPE_SH7263
  40. default "0x00000000"
  41. config EARLY_PRINTK
  42. bool "Early printk support"
  43. depends on SH_STANDARD_BIOS || EARLY_SCIF_CONSOLE
  44. help
  45. Say Y here to redirect kernel printk messages to the serial port
  46. used by the SH-IPL bootloader, starting very early in the boot
  47. process and ending when the kernel's serial console is initialised.
  48. This option is only useful porting the kernel to a new machine,
  49. when the kernel may crash or hang before the serial console is
  50. initialised. If unsure, say N.
  51. On devices that are running SH-IPL and want to keep the port
  52. initialization consistent while not using the BIOS callbacks,
  53. select both the EARLY_SCIF_CONSOLE and SH_STANDARD_BIOS, using
  54. the kernel command line option to toggle back and forth.
  55. config DEBUG_BOOTMEM
  56. depends on DEBUG_KERNEL
  57. bool "Debug BOOTMEM initialization"
  58. config DEBUG_STACKOVERFLOW
  59. bool "Check for stack overflows"
  60. depends on DEBUG_KERNEL && SUPERH32
  61. help
  62. This option will cause messages to be printed if free stack space
  63. drops below a certain limit.
  64. config DEBUG_STACK_USAGE
  65. bool "Stack utilization instrumentation"
  66. depends on DEBUG_KERNEL
  67. help
  68. Enables the display of the minimum amount of free stack which each
  69. task has ever had available in the sysrq-T and sysrq-P debug output.
  70. This option will slow down process creation somewhat.
  71. config 4KSTACKS
  72. bool "Use 4Kb for kernel stacks instead of 8Kb"
  73. depends on DEBUG_KERNEL && (MMU || BROKEN)
  74. help
  75. If you say Y here the kernel will use a 4Kb stacksize for the
  76. kernel stack attached to each process/thread. This facilitates
  77. running more threads on a system and also reduces the pressure
  78. on the VM subsystem for higher order allocations. This option
  79. will also use IRQ stacks to compensate for the reduced stackspace.
  80. config IRQSTACKS
  81. bool "Use separate kernel stacks when processing interrupts"
  82. depends on DEBUG_KERNEL && SUPERH32
  83. help
  84. If you say Y here the kernel will use separate kernel stacks
  85. for handling hard and soft interrupts. This can help avoid
  86. overflowing the process kernel stacks.
  87. config SH_KGDB
  88. bool "Include KGDB kernel debugger"
  89. select FRAME_POINTER
  90. select DEBUG_INFO
  91. depends on CPU_SH3 || CPU_SH4
  92. help
  93. Include in-kernel hooks for kgdb, the Linux kernel source level
  94. debugger. See <http://kgdb.sourceforge.net/> for more information.
  95. Unless you are intending to debug the kernel, say N here.
  96. menu "KGDB configuration options"
  97. depends on SH_KGDB
  98. config MORE_COMPILE_OPTIONS
  99. bool "Add any additional compile options"
  100. help
  101. If you want to add additional CFLAGS to the kernel build, enable this
  102. option and then enter what you would like to add in the next question.
  103. Note however that -g is already appended with the selection of KGDB.
  104. config COMPILE_OPTIONS
  105. string "Additional compile arguments"
  106. depends on MORE_COMPILE_OPTIONS
  107. config KGDB_NMI
  108. def_bool n
  109. prompt "Enter KGDB on NMI"
  110. config SH_KGDB_CONSOLE
  111. def_bool n
  112. prompt "Console messages through GDB"
  113. depends on !SERIAL_SH_SCI_CONSOLE && SERIAL_SH_SCI=y
  114. select SERIAL_CORE_CONSOLE
  115. config KGDB_SYSRQ
  116. def_bool y
  117. prompt "Allow SysRq 'G' to enter KGDB"
  118. depends on MAGIC_SYSRQ
  119. comment "Serial port setup"
  120. config KGDB_DEFPORT
  121. int "Port number (ttySCn)"
  122. default "1"
  123. config KGDB_DEFBAUD
  124. int "Baud rate"
  125. default "115200"
  126. choice
  127. prompt "Parity"
  128. depends on SH_KGDB
  129. default KGDB_DEFPARITY_N
  130. config KGDB_DEFPARITY_N
  131. bool "None"
  132. config KGDB_DEFPARITY_E
  133. bool "Even"
  134. config KGDB_DEFPARITY_O
  135. bool "Odd"
  136. endchoice
  137. choice
  138. prompt "Data bits"
  139. depends on SH_KGDB
  140. default KGDB_DEFBITS_8
  141. config KGDB_DEFBITS_8
  142. bool "8"
  143. config KGDB_DEFBITS_7
  144. bool "7"
  145. endchoice
  146. endmenu
  147. if SUPERH64
  148. config SH64_PROC_ASIDS
  149. bool "Debug: report ASIDs through /proc/asids"
  150. depends on PROC_FS && MMU
  151. config SH64_SR_WATCH
  152. bool "Debug: set SR.WATCH to enable hardware watchpoints and trace"
  153. config POOR_MANS_STRACE
  154. bool "Debug: enable rudimentary strace facility"
  155. help
  156. This option allows system calls to be traced to the console. It also
  157. aids in detecting kernel stack underflow. It is useful for debugging
  158. early-userland problems (e.g. init incurring fatal exceptions.)
  159. config SH_ALPHANUMERIC
  160. bool "Enable debug outputs to on-board alphanumeric display"
  161. depends on SH_CAYMAN
  162. config SH_NO_BSS_INIT
  163. bool "Avoid zeroing BSS (to speed-up startup on suitable platforms)"
  164. endif
  165. endmenu