# Physical Memory Protection (PMP) configuration options

# Copyright (c) 2020 BayLibre, SAS
# SPDX-License-Identifier: Apache-2.0

config PMP_SLOT
	int "Number of PMP slot"
	default 8
	help
	  Depend of the arch/board. Take care to don't put value higher
	  than the Hardware allow you.

config PMP_POWER_OF_TWO_ALIGNMENT
	bool "Enable power of two alignment"
	default n
	select MPU_REQUIRES_POWER_OF_TWO_ALIGNMENT
	select GEN_PRIV_STACKS
	help
	  This option will reduce the PMP slot number usage but increase
	  the memory consumption.

config PMP_STACK_GUARD
	bool "Thread Stack Guard"
	default n
	help
	  Enable Thread Stack Guards via PMP

if PMP_STACK_GUARD

config PMP_STACK_GUARD_MIN_SIZE
	int "Guard size"
	default 16
	help
	  Minimum size (and alignment when applicable) of an stack guard
	  region, which guards the stack of a thread. The width of the
	  guard is set to 16 bytes, to accommodate the riscv
	  granularity.

endif # PMP_STACK_GUARD
