| #nRF UART(E) instance configuration |
| |
| # Copyright (c) 2023 Nordic Semiconductor ASA |
| # SPDX-License-Identifier: Apache-2.0 |
| |
| config UART_$(nrfx_uart_num)_INTERRUPT_DRIVEN |
| bool "Interrupt support on port $(nrfx_uart_num)" |
| depends on UART_INTERRUPT_DRIVEN |
| default y |
| help |
| This option enables UART interrupt support on port $(nrfx_uart_num). |
| |
| config UART_$(nrfx_uart_num)_ASYNC |
| bool "Asynchronous API support on port $(nrfx_uart_num)" |
| depends on UART_ASYNC_API && !UART_$(nrfx_uart_num)_INTERRUPT_DRIVEN |
| default y |
| help |
| This option enables UART Asynchronous API support on port $(nrfx_uart_num). |
| |
| config UART_$(nrfx_uart_num)_ENHANCED_POLL_OUT |
| bool "Efficient poll out on port $(nrfx_uart_num)" |
| default y |
| depends on HAS_HW_NRF_UARTE$(nrfx_uart_num) |
| select NRFX_PPI if HAS_HW_NRF_PPI |
| select NRFX_DPPI if HAS_HW_NRF_DPPIC |
| help |
| When enabled, polling out does not trigger interrupt which stops TX. |
| Feature uses a PPI channel. |
| |
| config UART_$(nrfx_uart_num)_NRF_PARITY_BIT |
| bool "Parity bit" |
| help |
| Enable parity bit. |
| |
| config UART_$(nrfx_uart_num)_NRF_TX_BUFFER_SIZE |
| int "Size of RAM buffer" |
| depends on UART_INTERRUPT_DRIVEN |
| range 1 65535 |
| default 32 |
| help |
| Size of the transmit buffer for API function: fifo_fill. |
| This value is limited by range of TXD.MAXCNT register for |
| particular SoC. |
| |
| config UART_$(nrfx_uart_num)_NRF_HW_ASYNC |
| bool "Use hardware RX byte counting" |
| depends on HAS_HW_NRF_UARTE$(nrfx_uart_num) |
| depends on UART_ASYNC_API |
| select NRFX_PPI if HAS_HW_NRF_PPI |
| select NRFX_DPPI if HAS_HW_NRF_DPPIC |
| help |
| If default driver uses interrupts to count incoming bytes, it is possible |
| that with higher speeds and/or high cpu load some data can be lost. |
| It is recommended to use hardware byte counting in such scenarios. |
| Hardware RX byte counting requires timer instance and one PPI channel. |
| |
| config UART_$(nrfx_uart_num)_NRF_ASYNC_LOW_POWER |
| bool "Low power mode" |
| depends on HAS_HW_NRF_UARTE$(nrfx_uart_num) |
| depends on UART_ASYNC_API |
| help |
| When enabled, UARTE is enabled before each TX or RX usage and disabled |
| when not used. Disabling UARTE while in idle allows to achieve lowest |
| power consumption. It is only feasible if receiver is not always on. |
| |
| config UART_$(nrfx_uart_num)_NRF_HW_ASYNC_TIMER |
| int "Timer instance" |
| depends on UART_$(nrfx_uart_num)_NRF_HW_ASYNC |
| |
| config UART_$(nrfx_uart_num)_GPIO_MANAGEMENT |
| bool "GPIO management on port $(nrfx_uart_num)" |
| depends on PM_DEVICE |
| default y |
| help |
| If enabled, the driver will configure the GPIOs used by the uart to |
| their default configuration when device is powered down. The GPIOs |
| will be configured back to correct state when UART is powered up. |