# Copyright (c) 2021 Google LLC
# SPDX-License-Identifier: Apache-2.0

config ZEPHYR_CHRE_MODULE
	bool

menuconfig CHRE
	bool "CHRE Support"
	select REQUIRES_FULL_LIBCPP
	help
	  This option enables the CHRE library.

if CHRE

module = CHRE
module-str = chre
source "subsys/logging/Kconfig.template.log_config"

config CHRE_MESSAGE_TO_HOST_MAX_SIZE
	int "Maximum message size to send to the host (bytes)"
	default 4000
	help
	  Defines the maximum message size that can be sent to the host.

config CHRE_ASSERTIONS
	bool "Enable CHRE assertions"
	help
	  When enabled, CHRE will include various assertions which will trigger
	  calls to chreAbort if resolve to false.

config CHRE_AUDIO_SUPPORT_ENABLED
	bool "Enable audio support"
	help
	  When enabled, CHRE will include the code needed to support the audio
	  framework. The framework should be provided via chrePalAudioGetApi()

config CHRE_GNSS_SUPPORT_ENABLED
	bool "Enable GNSS support"
	help
	  When enabled, CHRE will include the code needed to support the GNSS
	  framework. The framework should be provided via chrePalGnssGetApi()

config CHRE_SENSORS_SUPPORT_ENABLED
	bool "Enable sensor support"
	help
	  When enabled, CHRE will include the code needed to support the sensor
	  framework. The framework should be provided via chrePalSensorGetApi()

config CHRE_WIFI_SUPPORT_ENABLED
	bool "Enable WiFi support"
	help
	  When enabled, CHRE will include the code needed to support the WiFi
	  framework. The framework should be provided via chrePalWifiGetApi()

config CHRE_DYNAMIC_MEMORY_SIZE
	int "The size of the CHRE memory pool"
	default 4096

config CHRE_TASK_NAME
	string "The name of the CHRE task"
	default "CHRE"

config CHRE_TASK_STACK_SIZE
	int "The size of the CHRE task stack"
	default 2048

config CHRE_TASK_PRIORITY
	int "The priority of the CHRE task"
	default 5

endif # CHRE
