# Copyright (c) 2018 Linaro Limited
# SPDX-License-Identifier: Apache-2.0

config ZEPHYR_OPEN_AMP_MODULE
	bool

config OPENAMP
	bool "OpenAMP Support"
	depends on ZEPHYR_OPEN_AMP_MODULE
	select LIBMETAL
	help
	  This option enables the OpenAMP IPC library

if OPENAMP

config OPENAMP_SRC_PATH
	string "OpenAMP library source path"
	default "open-amp"
	depends on OPENAMP
	help
	  This option specifies the path to the source for the open-amp library

config OPENAMP_MASTER
	bool "OpenAMP Master Support"
	default y
	help
	  This option enables support for OpenAMP VirtIO Master

config OPENAMP_SLAVE
	bool "OpenAMP Slave Support"
	default y
	help
	  This option enables support for OpenAMP VirtIO Slave

config OPENAMP_WITH_DCACHE
	bool "Build OpenAMP with vrings cache operations enabled"
	depends on CACHE_MANAGEMENT
	help
	  Build OpenAMP with vrings cache operations enabled.
endif # OPENAMP
