123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322 |
- # Shell backends configuration options
- # Copyright (c) 2018 Nordic Semiconductor ASA
- # SPDX-License-Identifier: Apache-2.0
- menuconfig SHELL_BACKENDS
- bool "Enable shell backends"
- default y
- help
- Enable shell backends.
- if SHELL_BACKENDS
- # Workaround for not being able to have commas in macro arguments
- DT_CHOSEN_Z_SHELL_UART := zephyr,shell-uart
- config SHELL_BACKEND_SERIAL
- bool "Enable serial backend"
- default "$(dt_chosen_enabled,$(DT_CHOSEN_Z_SHELL_UART))" if HAS_DTS
- default y if !HAS_DTS
- select SERIAL
- select RING_BUFFER
- help
- Enable serial backend.
- if SHELL_BACKEND_SERIAL
- config SHELL_BACKEND_SERIAL_INIT_PRIORITY
- int "Initialization priority"
- default 0
- range 0 99
- help
- Initialization priority for UART backend. This must be bigger than
- the initialization priority of the used serial device.
- config SHELL_PROMPT_UART
- string "Displayed prompt name"
- default "uart:~$ "
- help
- Displayed prompt name for UART backend.
- # Workaround for not being able to have commas in macro arguments
- DT_CHOSEN_Z_SHELL_UART := zephyr,shell-uart
- config UART_SHELL_ON_DEV_NAME
- string "Device Name of UART Device for SHELL_BACKEND_SERIAL"
- default "$(dt_chosen_label,$(DT_CHOSEN_Z_SHELL_UART))" if HAS_DTS
- default "UART_0"
- help
- This option specifies the name of UART device to be used for the
- SHELL UART backend.
- In case when DTS is enabled (HAS_DTS), the default value is
- set from DTS chosen node 'zephyr,shell-uart' but can be overridden
- here.
- # Internal config to enable UART interrupts if supported.
- config SHELL_BACKEND_SERIAL_INTERRUPT_DRIVEN
- bool "Interrupt driven"
- default y
- depends on SERIAL_SUPPORT_INTERRUPT
- select UART_INTERRUPT_DRIVEN
- config SHELL_BACKEND_SERIAL_TX_RING_BUFFER_SIZE
- int "Set TX ring buffer size"
- default 8
- depends on SHELL_BACKEND_SERIAL_INTERRUPT_DRIVEN
- help
- If UART is utilizing DMA transfers then increasing ring buffer size
- increases transfers length and reduces number of interrupts.
- config SHELL_BACKEND_SERIAL_RX_RING_BUFFER_SIZE
- int "Set RX ring buffer size"
- default 64
- help
- RX ring buffer size impacts accepted latency of handling incoming
- bytes by shell. If shell input is coming from the keyboard then it is
- usually enough if ring buffer is few bytes (more than one due to
- escape sequences). However, if bulk data is transferred it may be
- required to increase it.
- config SHELL_BACKEND_SERIAL_RX_POLL_PERIOD
- int "RX polling period (in milliseconds)"
- default 10
- depends on !SHELL_BACKEND_SERIAL_INTERRUPT_DRIVEN
- help
- Determines how often UART is polled for RX byte.
- config SHELL_BACKEND_SERIAL_CHECK_DTR
- bool "Check DTR signal before TX"
- default y if USB_UART_CONSOLE
- depends on UART_LINE_CTRL
- help
- Check DTR signal before TX.
- module = SHELL_BACKEND_SERIAL
- default-timeout = 100
- source "subsys/shell/Kconfig.template.shell_log_queue_timeout"
- default-size = 10
- source "subsys/shell/Kconfig.template.shell_log_queue_size"
- choice
- prompt "Initial log level limit"
- default SHELL_BACKEND_SERIAL_LOG_LEVEL_DEFAULT
- config SHELL_BACKEND_SERIAL_LOG_LEVEL_DEFAULT
- bool "System limit (LOG_MAX_LEVEL)"
- config SHELL_BACKEND_SERIAL_LOG_LEVEL_DBG
- bool "Debug"
- config SHELL_BACKEND_SERIAL_LOG_LEVEL_INF
- bool "Info"
- config SHELL_BACKEND_SERIAL_LOG_LEVEL_WRN
- bool "Warning"
- config SHELL_BACKEND_SERIAL_LOG_LEVEL_ERR
- bool "Error"
- config SHELL_BACKEND_SERIAL_LOG_LEVEL_NONE
- bool "None"
- endchoice
- config SHELL_BACKEND_SERIAL_LOG_LEVEL
- int
- default 0 if SHELL_BACKEND_SERIAL_LOG_LEVEL_NONE
- default 1 if SHELL_BACKEND_SERIAL_LOG_LEVEL_ERR
- default 2 if SHELL_BACKEND_SERIAL_LOG_LEVEL_WRN
- default 3 if SHELL_BACKEND_SERIAL_LOG_LEVEL_INF
- default 4 if SHELL_BACKEND_SERIAL_LOG_LEVEL_DBG
- default 5 if SHELL_BACKEND_SERIAL_LOG_LEVEL_DEFAULT
- endif # SHELL_BACKEND_SERIAL
- config SHELL_BACKEND_RTT
- bool "Enable RTT backend"
- select CONSOLE
- select RTT_CONSOLE
- depends on USE_SEGGER_RTT
- help
- Enable RTT backend.
- if SHELL_BACKEND_RTT
- config SHELL_PROMPT_RTT
- string "Displayed prompt name"
- default "rtt:~$ "
- help
- Displayed prompt name for RTT backend.
- config SHELL_RTT_RX_POLL_PERIOD
- int "RX polling period (in milliseconds)"
- default 10
- help
- Determines how often RTT is polled for RX byte.
- module = SHELL_BACKEND_RTT
- default-timeout = 100
- source "subsys/shell/Kconfig.template.shell_log_queue_timeout"
- default-size = 10
- source "subsys/shell/Kconfig.template.shell_log_queue_size"
- choice
- prompt "Initial log level limit"
- default SHELL_RTT_INIT_LOG_LEVEL_DEFAULT
- config SHELL_RTT_INIT_LOG_LEVEL_DEFAULT
- bool "System limit (LOG_MAX_LEVEL)"
- config SHELL_RTT_INIT_LOG_LEVEL_DBG
- bool "Debug"
- config SHELL_RTT_INIT_LOG_LEVEL_INF
- bool "Info"
- config SHELL_RTT_INIT_LOG_LEVEL_WRN
- bool "Warning"
- config SHELL_RTT_INIT_LOG_LEVEL_ERR
- bool "Error"
- config SHELL_RTT_INIT_LOG_LEVEL_NONE
- bool "None"
- endchoice
- config SHELL_RTT_INIT_LOG_LEVEL
- int
- default 0 if SHELL_RTT_INIT_LOG_LEVEL_NONE
- default 1 if SHELL_RTT_INIT_LOG_LEVEL_ERR
- default 2 if SHELL_RTT_INIT_LOG_LEVEL_WRN
- default 3 if SHELL_RTT_INIT_LOG_LEVEL_INF
- default 4 if SHELL_RTT_INIT_LOG_LEVEL_DBG
- default 5 if SHELL_RTT_INIT_LOG_LEVEL_DEFAULT
- module = SHELL_RTT
- module-str = RTT shell backend
- source "subsys/logging/Kconfig.template.log_config"
- endif # SHELL_BACKEND_RTT
- config SHELL_BACKEND_TELNET
- bool "Enable TELNET backend."
- depends on NET_TCP
- depends on NET_IPV4 || NET_IPV6
- help
- Enable TELNET backend.
- if SHELL_BACKEND_TELNET
- config SHELL_PROMPT_TELNET
- string "Displayed prompt name"
- default "~$ "
- help
- Displayed prompt name for TELNET backend.
- config SHELL_TELNET_PORT
- int "Telnet port number"
- default 23
- help
- This option is used to configure on which port telnet is going
- to be bound.
- config SHELL_TELNET_LINE_BUF_SIZE
- int "Telnet line buffer size"
- default 80
- help
- This option can be used to modify the size of the buffer storing
- shell output line, prior to sending it through the network.
- Of course an output line can be longer than such size, it just
- means sending it will start as soon as it reaches this size.
- It really depends on what type of output is expected.
- A lot of short lines: better reduce this value. On the contrary,
- raise it.
- config SHELL_TELNET_SEND_TIMEOUT
- int "Telnet line send timeout"
- default 100
- help
- This option can be used to modify the duration of the timer that kick
- in when a line buffer is not empty but did not yet meet the line feed.
- config SHELL_TELNET_SUPPORT_COMMAND
- bool "Add support for telnet commands (IAC) [Experimental]"
- help
- Current support is so limited it's not interesting to enable it.
- However, if proven to be needed at some point, it will be possible
- to extend such support.
- module = SHELL_TELNET
- default-timeout = 100
- source "subsys/shell/Kconfig.template.shell_log_queue_timeout"
- default-size = 10
- source "subsys/shell/Kconfig.template.shell_log_queue_size"
- choice
- prompt "Initial log level limit"
- default SHELL_TELNET_INIT_LOG_LEVEL_DEFAULT
- config SHELL_TELNET_INIT_LOG_LEVEL_DEFAULT
- bool "System limit (LOG_MAX_LEVEL)"
- config SHELL_TELNET_INIT_LOG_LEVEL_DBG
- bool "Debug"
- config SHELL_TELNET_INIT_LOG_LEVEL_INF
- bool "Info"
- config SHELL_TELNET_INIT_LOG_LEVEL_WRN
- bool "Warning"
- config SHELL_TELNET_INIT_LOG_LEVEL_ERR
- bool "Error"
- config SHELL_TELNET_INIT_LOG_LEVEL_NONE
- bool "None"
- endchoice
- config SHELL_TELNET_INIT_LOG_LEVEL
- int
- default 0 if SHELL_TELNET_INIT_LOG_LEVEL_NONE
- default 1 if SHELL_TELNET_INIT_LOG_LEVEL_ERR
- default 2 if SHELL_TELNET_INIT_LOG_LEVEL_WRN
- default 3 if SHELL_TELNET_INIT_LOG_LEVEL_INF
- default 4 if SHELL_TELNET_INIT_LOG_LEVEL_DBG
- default 5 if SHELL_TELNET_INIT_LOG_LEVEL_DEFAULT
- module = SHELL_TELNET
- module-str = TELNET shell backend
- source "subsys/logging/Kconfig.template.log_config"
- endif # SHELL_TELNET_BACKEND
- config SHELL_BACKEND_DUMMY
- bool "Enable dummy backend."
- help
- Enable dummy backend which can be used to execute commands with no
- need for physical transport interface.
- if SHELL_BACKEND_DUMMY
- config SHELL_PROMPT_DUMMY
- string "Displayed prompt name"
- default "~$ "
- help
- Displayed prompt name for DUMMY backend.
- config SHELL_BACKEND_DUMMY_BUF_SIZE
- int "Size of dummy buffer size"
- default 300
- help
- This is size of output buffer that will be used by dummy backend, this limits number of
- characters that will be captured from command output.
- endif # SHELL_BACKEND_DUMMY
- endif # SHELL_BACKENDS
|