| # Host command handler functionality |
| |
| # Copyright (c) 2020 Google LLC |
| # SPDX-License-Identifier: Apache-2.0 |
| |
| menu "Host command handler subsystem" |
| |
| config EC_HOST_CMD |
| bool "Support Embedded Controller host command handler subsystem" |
| help |
| Enable host command processing for embedded controllers on notebook |
| computers. |
| |
| if EC_HOST_CMD |
| |
| module = EC_HC |
| module-str = ec-host-commands |
| source "subsys/logging/Kconfig.template.log_config" |
| |
| config EC_HOST_CMD_HANDLER_STACK_SIZE |
| int "Stack size for the EC host command handler thread" |
| default 800 |
| |
| config EC_HOST_CMD_HANDLER_TX_BUFFER_SIZE |
| int "Buffer size in bytes for TX buffer shared by all EC host commands" |
| default 0 if EC_HOST_CMD_BACKEND_ESPI |
| default 0 if EC_HOST_CMD_BACKEND_SHI |
| default 256 if EC_HOST_CMD_BACKEND_UART |
| default 552 if EC_HOST_CMD_BACKEND_SPI |
| default 256 |
| help |
| Buffer size in bytes for TX buffer defined by the host command handler. |
| Some backend layers can define their own buffer, so the size can be zero to |
| avoid duplicating buffers. If multiple backends are used, the size has to be |
| set by user to the largest one. |
| |
| config EC_HOST_CMD_HANDLER_RX_BUFFER_SIZE |
| int "Buffer size in bytes for RX buffer shared by all EC host commands" |
| default 256 if EC_HOST_CMD_BACKEND_ESPI |
| default 0 if EC_HOST_CMD_BACKEND_SHI |
| default 544 if EC_HOST_CMD_BACKEND_UART |
| default 544 if EC_HOST_CMD_BACKEND_SPI |
| default 256 |
| help |
| Buffer size in bytes for TX buffer defined by the host command handler. |
| Some backend layers can define their own buffer, so the size can be zero to |
| avoid duplicating buffers. If multiple backends are used, the size has to be |
| set by user to the largest one. |
| |
| config EC_HOST_CMD_HANDLER_PRIO |
| int "Priority of host command task" |
| default 13 |
| help |
| Priority of the kernel task that handles the host commands. |
| If the priority is too low (high in value), the host commands handler may be unable to |
| process the command on time and the AP will abort the waiting for response and be unable |
| to boot the system properly. |
| |
| config EC_HOST_CMD_INIT_PRIORITY |
| int "Initialization priority" |
| default 80 |
| range 0 99 |
| help |
| Initialization priority for Host Command. It must be higher than the initialization |
| priority of the used backend device. |
| |
| config EC_HOST_CMD_HANDLER_TX_BUFFER_DEF |
| bool |
| default y if EC_HOST_CMD_HANDLER_TX_BUFFER_SIZE > 0 |
| help |
| The handler defines common tx buffer |
| |
| config EC_HOST_CMD_HANDLER_RX_BUFFER_DEF |
| bool |
| default y if EC_HOST_CMD_HANDLER_RX_BUFFER_SIZE > 0 |
| help |
| The handler defines common rx buffer |
| |
| config EC_HOST_CMD_INITIALIZE_AT_BOOT |
| bool "Initialize the host command subsystem automacitlly" |
| default y |
| help |
| Automatically initialize the host command subsystem with the chosen backend. |
| The ec_host_cmd_init function is called by the chosen backend. |
| |
| config EC_HOST_CMD_DEDICATED_THREAD |
| bool "Create a new task for host command" |
| help |
| The ec_host_cmd_init function creates a new thread dedicated for Host Command. |
| Otherwise the ec_host_cmd_task function has to be called within another thread. |
| |
| config EC_HOST_CMD_IN_PROGRESS_STATUS |
| bool "Save status of last IN_PROGRESS command" |
| default y if EC_HOST_CMD_BACKEND_SHI |
| help |
| Enable support for saving final status of a last command that has sent |
| EC_HOST_CMD_IN_PROGRESS status. The saved status can be get with the |
| ec_host_cmd_send_in_progress_status function. |
| |
| source "subsys/mgmt/ec_host_cmd/Kconfig.logging" |
| source "subsys/mgmt/ec_host_cmd/backends/Kconfig" |
| |
| endif # EC_HOST_CMD |
| |
| endmenu |