# SPDX-License-Identifier: GPL-2.0
config PPC_POWERNV
	depends on PPC64 && PPC_BOOK3S
	bool "IBM PowerNV (Non-Virtualized) platform support"
	select PPC_NATIVE
	select PPC_XICS
	select PPC_ICP_NATIVE
	select PPC_XIVE_NATIVE
	select PPC_P7_NAP
	select FORCE_PCI
	select PCI_MSI
	select EPAPR_BOOT
	select PPC_INDIRECT_PIO
	select PPC_UDBG_16550
	select ARCH_RANDOM
	select CPU_FREQ
	select PPC_DOORBELL
	select MMU_NOTIFIER
	select FORCE_SMP
	default y

config OPAL_PRD
	tristate 'OPAL PRD driver'
	depends on PPC_POWERNV
	help
	  This enables the opal-prd driver, a facility to run processor
	  recovery diagnostics on OpenPower machines

config PPC_MEMTRACE
	bool "Enable removal of RAM from kernel mappings for tracing"
	depends on PPC_POWERNV && MEMORY_HOTREMOVE
	help
	  Enabling this option allows for the removal of memory (RAM)
	  from the kernel mappings to be used for hardware tracing.

config PPC_VAS
	bool "IBM Virtual Accelerator Switchboard (VAS)"
	depends on PPC_POWERNV && PPC_64K_PAGES
	default y
	help
	  This enables support for IBM Virtual Accelerator Switchboard (VAS).

	  VAS allows accelerators in co-processors like NX-GZIP and NX-842
	  to be accessible to kernel subsystems and user processes.

	  VAS adapters are found in POWER9 based systems.

	  If unsure, say N.

config SCOM_DEBUGFS
	bool "Expose SCOM controllers via debugfs"
	depends on DEBUG_FS
