18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0
28c2ecf20Sopenharmony_ci
38c2ecf20Sopenharmony_ciconfig PPC_DISABLE_WERROR
48c2ecf20Sopenharmony_ci	bool "Don't build arch/powerpc code with -Werror"
58c2ecf20Sopenharmony_ci	help
68c2ecf20Sopenharmony_ci	  This option tells the compiler NOT to build the code under
78c2ecf20Sopenharmony_ci	  arch/powerpc with the -Werror flag (which means warnings
88c2ecf20Sopenharmony_ci	  are treated as errors).
98c2ecf20Sopenharmony_ci
108c2ecf20Sopenharmony_ci	  Only enable this if you are hitting a build failure in the
118c2ecf20Sopenharmony_ci	  arch/powerpc code caused by a warning, and you don't feel
128c2ecf20Sopenharmony_ci	  inclined to fix it.
138c2ecf20Sopenharmony_ci
148c2ecf20Sopenharmony_ciconfig PPC_WERROR
158c2ecf20Sopenharmony_ci	bool
168c2ecf20Sopenharmony_ci	depends on !PPC_DISABLE_WERROR
178c2ecf20Sopenharmony_ci	default y
188c2ecf20Sopenharmony_ci
198c2ecf20Sopenharmony_ciconfig PRINT_STACK_DEPTH
208c2ecf20Sopenharmony_ci	int "Stack depth to print" if DEBUG_KERNEL
218c2ecf20Sopenharmony_ci	default 64
228c2ecf20Sopenharmony_ci	help
238c2ecf20Sopenharmony_ci	  This option allows you to set the stack depth that the kernel
248c2ecf20Sopenharmony_ci	  prints in stack traces. This can be useful if your display is
258c2ecf20Sopenharmony_ci	  too small and stack traces cause important information to
268c2ecf20Sopenharmony_ci	  scroll off the screen.
278c2ecf20Sopenharmony_ci
288c2ecf20Sopenharmony_ciconfig HCALL_STATS
298c2ecf20Sopenharmony_ci	bool "Hypervisor call instrumentation"
308c2ecf20Sopenharmony_ci	depends on PPC_PSERIES && DEBUG_FS && TRACEPOINTS
318c2ecf20Sopenharmony_ci	help
328c2ecf20Sopenharmony_ci	  Adds code to keep track of the number of hypervisor calls made and
338c2ecf20Sopenharmony_ci	  the amount of time spent in hypervisor calls.  Wall time spent in
348c2ecf20Sopenharmony_ci	  each call is always calculated, and if available CPU cycles spent
358c2ecf20Sopenharmony_ci	  are also calculated.  A directory named hcall_inst is added at the
368c2ecf20Sopenharmony_ci	  root of the debugfs filesystem.  Within the hcall_inst directory
378c2ecf20Sopenharmony_ci	  are files that contain CPU specific call statistics.
388c2ecf20Sopenharmony_ci
398c2ecf20Sopenharmony_ci	  This option will add a small amount of overhead to all hypervisor
408c2ecf20Sopenharmony_ci	  calls.
418c2ecf20Sopenharmony_ci
428c2ecf20Sopenharmony_ciconfig PPC_EMULATED_STATS
438c2ecf20Sopenharmony_ci	bool "Emulated instructions tracking"
448c2ecf20Sopenharmony_ci	depends on DEBUG_FS
458c2ecf20Sopenharmony_ci	help
468c2ecf20Sopenharmony_ci	  Adds code to keep track of the number of instructions that are
478c2ecf20Sopenharmony_ci	  emulated by the in-kernel emulator. Counters for the various classes
488c2ecf20Sopenharmony_ci	  of emulated instructions are available under
498c2ecf20Sopenharmony_ci	  powerpc/emulated_instructions/ in the root of the debugfs file
508c2ecf20Sopenharmony_ci	  system. Optionally (controlled by
518c2ecf20Sopenharmony_ci	  powerpc/emulated_instructions/do_warn in debugfs), rate-limited
528c2ecf20Sopenharmony_ci	  warnings can be printed to the console when instructions are
538c2ecf20Sopenharmony_ci	  emulated.
548c2ecf20Sopenharmony_ci
558c2ecf20Sopenharmony_ciconfig CODE_PATCHING_SELFTEST
568c2ecf20Sopenharmony_ci	bool "Run self-tests of the code-patching code"
578c2ecf20Sopenharmony_ci	depends on DEBUG_KERNEL
588c2ecf20Sopenharmony_ci
598c2ecf20Sopenharmony_ciconfig JUMP_LABEL_FEATURE_CHECKS
608c2ecf20Sopenharmony_ci	bool "Enable use of jump label for cpu/mmu_has_feature()"
618c2ecf20Sopenharmony_ci	depends on JUMP_LABEL
628c2ecf20Sopenharmony_ci	default y
638c2ecf20Sopenharmony_ci	help
648c2ecf20Sopenharmony_ci	  Selecting this options enables use of jump labels for some internal
658c2ecf20Sopenharmony_ci	  feature checks. This should generate more optimal code for those
668c2ecf20Sopenharmony_ci	  checks.
678c2ecf20Sopenharmony_ci
688c2ecf20Sopenharmony_ciconfig JUMP_LABEL_FEATURE_CHECK_DEBUG
698c2ecf20Sopenharmony_ci	bool "Do extra check on feature fixup calls"
708c2ecf20Sopenharmony_ci	depends on DEBUG_KERNEL && JUMP_LABEL_FEATURE_CHECKS
718c2ecf20Sopenharmony_ci	help
728c2ecf20Sopenharmony_ci	  This tries to catch incorrect usage of cpu_has_feature() and
738c2ecf20Sopenharmony_ci	  mmu_has_feature() in the code.
748c2ecf20Sopenharmony_ci
758c2ecf20Sopenharmony_ci	  If you don't know what this means, say N.
768c2ecf20Sopenharmony_ci
778c2ecf20Sopenharmony_ciconfig FTR_FIXUP_SELFTEST
788c2ecf20Sopenharmony_ci	bool "Run self-tests of the feature-fixup code"
798c2ecf20Sopenharmony_ci	depends on DEBUG_KERNEL
808c2ecf20Sopenharmony_ci
818c2ecf20Sopenharmony_ciconfig MSI_BITMAP_SELFTEST
828c2ecf20Sopenharmony_ci	bool "Run self-tests of the MSI bitmap code"
838c2ecf20Sopenharmony_ci	depends on DEBUG_KERNEL
848c2ecf20Sopenharmony_ci
858c2ecf20Sopenharmony_ciconfig PPC_IRQ_SOFT_MASK_DEBUG
868c2ecf20Sopenharmony_ci	bool "Include extra checks for powerpc irq soft masking"
878c2ecf20Sopenharmony_ci
888c2ecf20Sopenharmony_ciconfig XMON
898c2ecf20Sopenharmony_ci	bool "Include xmon kernel debugger"
908c2ecf20Sopenharmony_ci	depends on DEBUG_KERNEL
918c2ecf20Sopenharmony_ci	help
928c2ecf20Sopenharmony_ci	  Include in-kernel hooks for the xmon kernel monitor/debugger.
938c2ecf20Sopenharmony_ci	  Unless you are intending to debug the kernel, say N here.
948c2ecf20Sopenharmony_ci	  Make sure to enable also CONFIG_BOOTX_TEXT on Macs. Otherwise
958c2ecf20Sopenharmony_ci	  nothing will appear on the screen (xmon writes directly to the
968c2ecf20Sopenharmony_ci	  framebuffer memory).
978c2ecf20Sopenharmony_ci	  The cmdline option 'xmon' or 'xmon=early' will drop into xmon
988c2ecf20Sopenharmony_ci	  very early during boot. 'xmon=on' will just enable the xmon
998c2ecf20Sopenharmony_ci	  debugger hooks.  'xmon=off' will disable the debugger hooks
1008c2ecf20Sopenharmony_ci	  if CONFIG_XMON_DEFAULT is set.
1018c2ecf20Sopenharmony_ci	  xmon will print a backtrace on the very first invocation.
1028c2ecf20Sopenharmony_ci	  'xmon=nobt' will disable this autobacktrace.
1038c2ecf20Sopenharmony_ci
1048c2ecf20Sopenharmony_ciconfig XMON_DEFAULT
1058c2ecf20Sopenharmony_ci	bool "Enable xmon by default"
1068c2ecf20Sopenharmony_ci	depends on XMON
1078c2ecf20Sopenharmony_ci	help
1088c2ecf20Sopenharmony_ci	  xmon is normally disabled unless booted with 'xmon=on'.
1098c2ecf20Sopenharmony_ci	  Use 'xmon=off' to disable xmon init during runtime.
1108c2ecf20Sopenharmony_ci
1118c2ecf20Sopenharmony_ciconfig XMON_DISASSEMBLY
1128c2ecf20Sopenharmony_ci	bool "Include disassembly support in xmon"
1138c2ecf20Sopenharmony_ci	depends on XMON
1148c2ecf20Sopenharmony_ci	default y
1158c2ecf20Sopenharmony_ci	help
1168c2ecf20Sopenharmony_ci	  Include support for disassembling in xmon. You probably want
1178c2ecf20Sopenharmony_ci	  to say Y here, unless you're building for a memory-constrained
1188c2ecf20Sopenharmony_ci	  system.
1198c2ecf20Sopenharmony_ci
1208c2ecf20Sopenharmony_ciconfig XMON_DEFAULT_RO_MODE
1218c2ecf20Sopenharmony_ci	bool "Restrict xmon to read-only operations by default"
1228c2ecf20Sopenharmony_ci	depends on XMON
1238c2ecf20Sopenharmony_ci	default y
1248c2ecf20Sopenharmony_ci	help
1258c2ecf20Sopenharmony_ci	  Operate xmon in read-only mode. The cmdline options 'xmon=rw' and
1268c2ecf20Sopenharmony_ci	  'xmon=ro' override this default.
1278c2ecf20Sopenharmony_ci
1288c2ecf20Sopenharmony_ciconfig DEBUGGER
1298c2ecf20Sopenharmony_ci	bool
1308c2ecf20Sopenharmony_ci	depends on KGDB || XMON
1318c2ecf20Sopenharmony_ci	default y
1328c2ecf20Sopenharmony_ci
1338c2ecf20Sopenharmony_ciconfig BDI_SWITCH
1348c2ecf20Sopenharmony_ci	bool "Include BDI-2000 user context switcher"
1358c2ecf20Sopenharmony_ci	depends on DEBUG_KERNEL && PPC32
1368c2ecf20Sopenharmony_ci	help
1378c2ecf20Sopenharmony_ci	  Include in-kernel support for the Abatron BDI2000 debugger.
1388c2ecf20Sopenharmony_ci	  Unless you are intending to debug the kernel with one of these
1398c2ecf20Sopenharmony_ci	  machines, say N here.
1408c2ecf20Sopenharmony_ci
1418c2ecf20Sopenharmony_ciconfig BOOTX_TEXT
1428c2ecf20Sopenharmony_ci	bool "Support for early boot text console (BootX or OpenFirmware only)"
1438c2ecf20Sopenharmony_ci	depends on PPC_BOOK3S
1448c2ecf20Sopenharmony_ci	help
1458c2ecf20Sopenharmony_ci	  Say Y here to see progress messages from the boot firmware in text
1468c2ecf20Sopenharmony_ci	  mode. Requires either BootX or Open Firmware.
1478c2ecf20Sopenharmony_ci
1488c2ecf20Sopenharmony_ciconfig PPC_EARLY_DEBUG
1498c2ecf20Sopenharmony_ci	bool "Early debugging (dangerous)"
1508c2ecf20Sopenharmony_ci	help
1518c2ecf20Sopenharmony_ci	  Say Y to enable some early debugging facilities that may be available
1528c2ecf20Sopenharmony_ci	  for your processor/board combination. Those facilities are hacks
1538c2ecf20Sopenharmony_ci	  intended to debug problems early during boot, this should not be
1548c2ecf20Sopenharmony_ci	  enabled in a production kernel.
1558c2ecf20Sopenharmony_ci	  Note that enabling this will also cause the kernel default log level
1568c2ecf20Sopenharmony_ci	  to be pushed to max automatically very early during boot
1578c2ecf20Sopenharmony_ci
1588c2ecf20Sopenharmony_cichoice
1598c2ecf20Sopenharmony_ci	prompt "Early debugging console"
1608c2ecf20Sopenharmony_ci	depends on PPC_EARLY_DEBUG
1618c2ecf20Sopenharmony_ci	help
1628c2ecf20Sopenharmony_ci	  Use the selected console for early debugging. Careful, if you
1638c2ecf20Sopenharmony_ci	  enable debugging for the wrong type of machine your kernel
1648c2ecf20Sopenharmony_ci	  _will not boot_.
1658c2ecf20Sopenharmony_ci
1668c2ecf20Sopenharmony_ciconfig PPC_EARLY_DEBUG_BOOTX
1678c2ecf20Sopenharmony_ci	bool "BootX or OpenFirmware"
1688c2ecf20Sopenharmony_ci	depends on BOOTX_TEXT
1698c2ecf20Sopenharmony_ci	help
1708c2ecf20Sopenharmony_ci	  Select this to enable early debugging for a machine using BootX
1718c2ecf20Sopenharmony_ci	  or OpenFirmware.
1728c2ecf20Sopenharmony_ci
1738c2ecf20Sopenharmony_ciconfig PPC_EARLY_DEBUG_LPAR
1748c2ecf20Sopenharmony_ci	bool "LPAR HV Console"
1758c2ecf20Sopenharmony_ci	depends on PPC_PSERIES && HVC_CONSOLE
1768c2ecf20Sopenharmony_ci	help
1778c2ecf20Sopenharmony_ci	  Select this to enable early debugging for a machine with a HVC
1788c2ecf20Sopenharmony_ci	  console on vterm 0.
1798c2ecf20Sopenharmony_ci
1808c2ecf20Sopenharmony_ciconfig PPC_EARLY_DEBUG_LPAR_HVSI
1818c2ecf20Sopenharmony_ci	bool "LPAR HVSI Console"
1828c2ecf20Sopenharmony_ci	depends on PPC_PSERIES && HVC_CONSOLE
1838c2ecf20Sopenharmony_ci	help
1848c2ecf20Sopenharmony_ci	  Select this to enable early debugging for a machine with a HVSI
1858c2ecf20Sopenharmony_ci	  console on a specified vterm.
1868c2ecf20Sopenharmony_ci
1878c2ecf20Sopenharmony_ciconfig PPC_EARLY_DEBUG_G5
1888c2ecf20Sopenharmony_ci	bool "Apple G5"
1898c2ecf20Sopenharmony_ci	depends on PPC_PMAC64
1908c2ecf20Sopenharmony_ci	help
1918c2ecf20Sopenharmony_ci	  Select this to enable early debugging for Apple G5 machines.
1928c2ecf20Sopenharmony_ci
1938c2ecf20Sopenharmony_ciconfig PPC_EARLY_DEBUG_RTAS_PANEL
1948c2ecf20Sopenharmony_ci	bool "RTAS Panel"
1958c2ecf20Sopenharmony_ci	depends on PPC_RTAS
1968c2ecf20Sopenharmony_ci	help
1978c2ecf20Sopenharmony_ci	  Select this to enable early debugging via the RTAS panel.
1988c2ecf20Sopenharmony_ci
1998c2ecf20Sopenharmony_ciconfig PPC_EARLY_DEBUG_RTAS_CONSOLE
2008c2ecf20Sopenharmony_ci	bool "RTAS Console"
2018c2ecf20Sopenharmony_ci	depends on PPC_RTAS
2028c2ecf20Sopenharmony_ci	select UDBG_RTAS_CONSOLE
2038c2ecf20Sopenharmony_ci	help
2048c2ecf20Sopenharmony_ci	  Select this to enable early debugging via the RTAS console.
2058c2ecf20Sopenharmony_ci
2068c2ecf20Sopenharmony_ciconfig PPC_EARLY_DEBUG_MAPLE
2078c2ecf20Sopenharmony_ci	bool "Maple real mode"
2088c2ecf20Sopenharmony_ci	depends on PPC_MAPLE
2098c2ecf20Sopenharmony_ci	help
2108c2ecf20Sopenharmony_ci	  Select this to enable early debugging for Maple.
2118c2ecf20Sopenharmony_ci
2128c2ecf20Sopenharmony_ciconfig PPC_EARLY_DEBUG_PAS_REALMODE
2138c2ecf20Sopenharmony_ci	bool "PA Semi real mode"
2148c2ecf20Sopenharmony_ci	depends on PPC_PASEMI
2158c2ecf20Sopenharmony_ci	help
2168c2ecf20Sopenharmony_ci	  Select this to enable early debugging for PA Semi.
2178c2ecf20Sopenharmony_ci	  Output will be on UART0.
2188c2ecf20Sopenharmony_ci
2198c2ecf20Sopenharmony_ciconfig PPC_EARLY_DEBUG_44x
2208c2ecf20Sopenharmony_ci	bool "Early serial debugging for IBM/AMCC 44x CPUs"
2218c2ecf20Sopenharmony_ci	depends on 44x
2228c2ecf20Sopenharmony_ci	help
2238c2ecf20Sopenharmony_ci	  Select this to enable early debugging for IBM 44x chips via the
2248c2ecf20Sopenharmony_ci	  inbuilt serial port.  If you enable this, ensure you set
2258c2ecf20Sopenharmony_ci	  PPC_EARLY_DEBUG_44x_PHYSLOW below to suit your target board.
2268c2ecf20Sopenharmony_ci
2278c2ecf20Sopenharmony_ciconfig PPC_EARLY_DEBUG_40x
2288c2ecf20Sopenharmony_ci	bool "Early serial debugging for IBM/AMCC 40x CPUs"
2298c2ecf20Sopenharmony_ci	depends on 40x
2308c2ecf20Sopenharmony_ci	help
2318c2ecf20Sopenharmony_ci	  Select this to enable early debugging for IBM 40x chips via the
2328c2ecf20Sopenharmony_ci	  inbuilt serial port. This works on chips with a 16550 compatible
2338c2ecf20Sopenharmony_ci	  UART.
2348c2ecf20Sopenharmony_ci
2358c2ecf20Sopenharmony_ciconfig PPC_EARLY_DEBUG_CPM
2368c2ecf20Sopenharmony_ci	bool "Early serial debugging for Freescale CPM-based serial ports"
2378c2ecf20Sopenharmony_ci	depends on SERIAL_CPM=y
2388c2ecf20Sopenharmony_ci	help
2398c2ecf20Sopenharmony_ci	  Select this to enable early debugging for Freescale chips
2408c2ecf20Sopenharmony_ci	  using a CPM-based serial port.  This assumes that the bootwrapper
2418c2ecf20Sopenharmony_ci	  has run, and set up the CPM in a particular way.
2428c2ecf20Sopenharmony_ci
2438c2ecf20Sopenharmony_ciconfig PPC_EARLY_DEBUG_USBGECKO
2448c2ecf20Sopenharmony_ci	bool "Early debugging through the USB Gecko adapter"
2458c2ecf20Sopenharmony_ci	depends on GAMECUBE_COMMON
2468c2ecf20Sopenharmony_ci	select USBGECKO_UDBG
2478c2ecf20Sopenharmony_ci	help
2488c2ecf20Sopenharmony_ci	  Select this to enable early debugging for Nintendo GameCube/Wii
2498c2ecf20Sopenharmony_ci	  consoles via an external USB Gecko adapter.
2508c2ecf20Sopenharmony_ci
2518c2ecf20Sopenharmony_ciconfig PPC_EARLY_DEBUG_PS3GELIC
2528c2ecf20Sopenharmony_ci	bool "Early debugging through the PS3 Ethernet port"
2538c2ecf20Sopenharmony_ci	depends on PPC_PS3
2548c2ecf20Sopenharmony_ci	select PS3GELIC_UDBG
2558c2ecf20Sopenharmony_ci	help
2568c2ecf20Sopenharmony_ci	  Select this to enable early debugging for the PlayStation3 via
2578c2ecf20Sopenharmony_ci	  UDP broadcasts sent out through the Ethernet port.
2588c2ecf20Sopenharmony_ci
2598c2ecf20Sopenharmony_ciconfig PPC_EARLY_DEBUG_OPAL_RAW
2608c2ecf20Sopenharmony_ci	bool "OPAL raw console"
2618c2ecf20Sopenharmony_ci	depends on HVC_OPAL
2628c2ecf20Sopenharmony_ci	help
2638c2ecf20Sopenharmony_ci	  Select this to enable early debugging for the PowerNV platform
2648c2ecf20Sopenharmony_ci	  using a "raw" console
2658c2ecf20Sopenharmony_ci
2668c2ecf20Sopenharmony_ciconfig PPC_EARLY_DEBUG_OPAL_HVSI
2678c2ecf20Sopenharmony_ci	bool "OPAL hvsi console"
2688c2ecf20Sopenharmony_ci	depends on HVC_OPAL
2698c2ecf20Sopenharmony_ci	help
2708c2ecf20Sopenharmony_ci	  Select this to enable early debugging for the PowerNV platform
2718c2ecf20Sopenharmony_ci	  using an "hvsi" console
2728c2ecf20Sopenharmony_ci
2738c2ecf20Sopenharmony_ciconfig PPC_EARLY_DEBUG_MEMCONS
2748c2ecf20Sopenharmony_ci	bool "In memory console"
2758c2ecf20Sopenharmony_ci	help
2768c2ecf20Sopenharmony_ci	  Select this to enable early debugging using an in memory console.
2778c2ecf20Sopenharmony_ci	  This console provides input and output buffers stored within the
2788c2ecf20Sopenharmony_ci	  kernel BSS and should be safe to select on any system. A debugger
2798c2ecf20Sopenharmony_ci	  can then be used to read kernel output or send input to the console.
2808c2ecf20Sopenharmony_ciendchoice
2818c2ecf20Sopenharmony_ci
2828c2ecf20Sopenharmony_ciconfig PPC_MEMCONS_OUTPUT_SIZE
2838c2ecf20Sopenharmony_ci	int "In memory console output buffer size"
2848c2ecf20Sopenharmony_ci	depends on PPC_EARLY_DEBUG_MEMCONS
2858c2ecf20Sopenharmony_ci	default 4096
2868c2ecf20Sopenharmony_ci	help
2878c2ecf20Sopenharmony_ci	  Selects the size of the output buffer (in bytes) of the in memory
2888c2ecf20Sopenharmony_ci	  console.
2898c2ecf20Sopenharmony_ci
2908c2ecf20Sopenharmony_ciconfig PPC_MEMCONS_INPUT_SIZE
2918c2ecf20Sopenharmony_ci	int "In memory console input buffer size"
2928c2ecf20Sopenharmony_ci	depends on PPC_EARLY_DEBUG_MEMCONS
2938c2ecf20Sopenharmony_ci	default 128
2948c2ecf20Sopenharmony_ci	help
2958c2ecf20Sopenharmony_ci	  Selects the size of the input buffer (in bytes) of the in memory
2968c2ecf20Sopenharmony_ci	  console.
2978c2ecf20Sopenharmony_ci
2988c2ecf20Sopenharmony_ciconfig PPC_EARLY_DEBUG_OPAL
2998c2ecf20Sopenharmony_ci	def_bool y
3008c2ecf20Sopenharmony_ci	depends on PPC_EARLY_DEBUG_OPAL_RAW || PPC_EARLY_DEBUG_OPAL_HVSI
3018c2ecf20Sopenharmony_ci
3028c2ecf20Sopenharmony_ci
3038c2ecf20Sopenharmony_ciconfig PPC_EARLY_DEBUG_HVSI_VTERMNO
3048c2ecf20Sopenharmony_ci	hex "vterm number to use with early debug HVSI"
3058c2ecf20Sopenharmony_ci	depends on PPC_EARLY_DEBUG_LPAR_HVSI
3068c2ecf20Sopenharmony_ci	default "0x30000000"
3078c2ecf20Sopenharmony_ci	help
3088c2ecf20Sopenharmony_ci	  You probably want 0x30000000 for your first serial port and
3098c2ecf20Sopenharmony_ci	  0x30000001 for your second one
3108c2ecf20Sopenharmony_ci
3118c2ecf20Sopenharmony_ciconfig PPC_EARLY_DEBUG_OPAL_VTERMNO
3128c2ecf20Sopenharmony_ci	hex "vterm number to use with OPAL early debug"
3138c2ecf20Sopenharmony_ci	depends on PPC_EARLY_DEBUG_OPAL
3148c2ecf20Sopenharmony_ci	default "0"
3158c2ecf20Sopenharmony_ci	help
3168c2ecf20Sopenharmony_ci	  This correspond to which /dev/hvcN you want to use for early
3178c2ecf20Sopenharmony_ci	  debug.
3188c2ecf20Sopenharmony_ci
3198c2ecf20Sopenharmony_ci	  On OPAL v2, this will be 0 for network console and 1 or 2 for
3208c2ecf20Sopenharmony_ci	  the machine built-in serial ports.
3218c2ecf20Sopenharmony_ci
3228c2ecf20Sopenharmony_ciconfig PPC_EARLY_DEBUG_44x_PHYSLOW
3238c2ecf20Sopenharmony_ci	hex "Low 32 bits of early debug UART physical address"
3248c2ecf20Sopenharmony_ci	depends on PPC_EARLY_DEBUG_44x
3258c2ecf20Sopenharmony_ci	default "0x40000200"
3268c2ecf20Sopenharmony_ci	help
3278c2ecf20Sopenharmony_ci	  You probably want 0x40000200 for ebony boards and
3288c2ecf20Sopenharmony_ci	  0x40000300 for taishan
3298c2ecf20Sopenharmony_ci
3308c2ecf20Sopenharmony_ciconfig PPC_EARLY_DEBUG_44x_PHYSHIGH
3318c2ecf20Sopenharmony_ci	hex "EPRN of early debug UART physical address"
3328c2ecf20Sopenharmony_ci	depends on PPC_EARLY_DEBUG_44x
3338c2ecf20Sopenharmony_ci	default "0x1"
3348c2ecf20Sopenharmony_ci
3358c2ecf20Sopenharmony_ciconfig PPC_EARLY_DEBUG_40x_PHYSADDR
3368c2ecf20Sopenharmony_ci	hex "Early debug UART physical address"
3378c2ecf20Sopenharmony_ci	depends on PPC_EARLY_DEBUG_40x
3388c2ecf20Sopenharmony_ci	default "0xef600300"
3398c2ecf20Sopenharmony_ci
3408c2ecf20Sopenharmony_ciconfig PPC_EARLY_DEBUG_CPM_ADDR
3418c2ecf20Sopenharmony_ci	hex "CPM UART early debug transmit descriptor address"
3428c2ecf20Sopenharmony_ci	depends on PPC_EARLY_DEBUG_CPM
3438c2ecf20Sopenharmony_ci	default "0xfa202008" if PPC_EP88XC
3448c2ecf20Sopenharmony_ci	default "0xf0001ff8" if CPM2
3458c2ecf20Sopenharmony_ci	default "0xff002008" if CPM1
3468c2ecf20Sopenharmony_ci	help
3478c2ecf20Sopenharmony_ci	  This specifies the address of the transmit descriptor
3488c2ecf20Sopenharmony_ci	  used for early debug output.  Because it is needed before
3498c2ecf20Sopenharmony_ci	  platform probing is done, all platforms selected must
3508c2ecf20Sopenharmony_ci	  share the same address.
3518c2ecf20Sopenharmony_ci
3528c2ecf20Sopenharmony_ciconfig FAIL_IOMMU
3538c2ecf20Sopenharmony_ci	bool "Fault-injection capability for IOMMU"
3548c2ecf20Sopenharmony_ci	depends on FAULT_INJECTION
3558c2ecf20Sopenharmony_ci	depends on PCI || IBMVIO
3568c2ecf20Sopenharmony_ci	help
3578c2ecf20Sopenharmony_ci	  Provide fault-injection capability for IOMMU. Each device can
3588c2ecf20Sopenharmony_ci	  be selectively enabled via the fail_iommu property.
3598c2ecf20Sopenharmony_ci
3608c2ecf20Sopenharmony_ci	  If you are unsure, say N.
3618c2ecf20Sopenharmony_ci
3628c2ecf20Sopenharmony_ciconfig PPC_PTDUMP
3638c2ecf20Sopenharmony_ci	bool "Export kernel pagetable layout to userspace via debugfs"
3648c2ecf20Sopenharmony_ci	depends on DEBUG_KERNEL && DEBUG_FS
3658c2ecf20Sopenharmony_ci	help
3668c2ecf20Sopenharmony_ci	  This option exports the state of the kernel pagetables to a
3678c2ecf20Sopenharmony_ci	  debugfs file. This is only useful for kernel developers who are
3688c2ecf20Sopenharmony_ci	  working in architecture specific areas of the kernel - probably
3698c2ecf20Sopenharmony_ci	  not a good idea to enable this feature in a production kernel.
3708c2ecf20Sopenharmony_ci
3718c2ecf20Sopenharmony_ci	  If you are unsure, say N.
3728c2ecf20Sopenharmony_ci
3738c2ecf20Sopenharmony_ciconfig PPC_DEBUG_WX
3748c2ecf20Sopenharmony_ci	bool "Warn on W+X mappings at boot"
3758c2ecf20Sopenharmony_ci	depends on PPC_PTDUMP && STRICT_KERNEL_RWX
3768c2ecf20Sopenharmony_ci	help
3778c2ecf20Sopenharmony_ci	  Generate a warning if any W+X mappings are found at boot.
3788c2ecf20Sopenharmony_ci
3798c2ecf20Sopenharmony_ci	  This is useful for discovering cases where the kernel is leaving
3808c2ecf20Sopenharmony_ci	  W+X mappings after applying NX, as such mappings are a security risk.
3818c2ecf20Sopenharmony_ci
3828c2ecf20Sopenharmony_ci	  Note that even if the check fails, your kernel is possibly
3838c2ecf20Sopenharmony_ci	  still fine, as W+X mappings are not a security hole in
3848c2ecf20Sopenharmony_ci	  themselves, what they do is that they make the exploitation
3858c2ecf20Sopenharmony_ci	  of other unfixed kernel bugs easier.
3868c2ecf20Sopenharmony_ci
3878c2ecf20Sopenharmony_ci	  There is no runtime or memory usage effect of this option
3888c2ecf20Sopenharmony_ci	  once the kernel has booted up - it's a one time check.
3898c2ecf20Sopenharmony_ci
3908c2ecf20Sopenharmony_ci	  If in doubt, say "Y".
3918c2ecf20Sopenharmony_ci
3928c2ecf20Sopenharmony_ciconfig PPC_FAST_ENDIAN_SWITCH
3938c2ecf20Sopenharmony_ci	bool "Deprecated fast endian-switch syscall"
3948c2ecf20Sopenharmony_ci	depends on DEBUG_KERNEL && PPC_BOOK3S_64
3958c2ecf20Sopenharmony_ci	help
3968c2ecf20Sopenharmony_ci	  If you're unsure what this is, say N.
3978c2ecf20Sopenharmony_ci
3988c2ecf20Sopenharmony_ciconfig KASAN_SHADOW_OFFSET
3998c2ecf20Sopenharmony_ci	hex
4008c2ecf20Sopenharmony_ci	depends on KASAN
4018c2ecf20Sopenharmony_ci	default 0xe0000000
402