# Kconfig - Shell configuration options

#
# Copyright (c) 2014-2015 Wind River Systems, Inc.
# Copyright (c) 2016 Intel Corporation
#
# SPDX-License-Identifier: Apache-2.0
#


config CONSOLE_SHELL
	bool
	prompt "Enable console input handler [ Experimental ]"
	default n
	select CONSOLE_HANDLER
	help
	Shell implementation based on CONSOLE_HANDLER.


if CONSOLE_SHELL

config CONSOLE_SHELL_STACKSIZE
	int
	prompt "Console handler shell stack size"
	default 2000
	help
	Stack size for the console handler shell.

config CONSOLE_SHELL_MAX_CMD_QUEUED
	int "Shell's command queue size"
	default 3
	help
	Maximum size of the queue for input commands.

source "subsys/shell/modules/Kconfig"

endif
