| # Copyright (c) 2025, Nordic Semiconductor ASA |
| # SPDX-License-Identifier: Apache-2.0 |
| |
| config UART_NATIVE_PTY |
| bool "PTY based UART driver for native_sim" |
| default y |
| depends on (DT_HAS_ZEPHYR_NATIVE_PTY_UART_ENABLED || DT_HAS_ZEPHYR_NATIVE_POSIX_UART_ENABLED) |
| select SERIAL_HAS_DRIVER |
| select SERIAL_SUPPORT_ASYNC |
| select SERIAL_SUPPORT_INTERRUPT |
| help |
| This enables a PTY based UART driver for the POSIX ARCH with up to 2 UARTs. |
| For the first UART port, the driver can be configured |
| to either connect to the terminal from which the executable was run, or into |
| one dedicated pseudoterminal for that UART. |
| |
| config UART_NATIVE_POSIX |
| bool "UART driver for native_sim (deprecated)" |
| select SERIAL_HAS_DRIVER |
| select DEPRECATED |
| select UART_NATIVE_PTY |
| help |
| Deprecated option, use UART_NATIVE_PTY instead |
| |
| if (UART_NATIVE_PTY || UART_NATIVE_POSIX) |
| |
| choice UART_NATIVE_PTY_0 |
| prompt "Native PTY Port 0 connection" |
| default UART_NATIVE_PTY_0_ON_STDINOUT if NATIVE_UART_0_ON_STDINOUT |
| default UART_NATIVE_PTY_0_ON_OWN_PTY |
| |
| config UART_NATIVE_PTY_0_ON_OWN_PTY |
| bool "Connect the first PTY UART to its own pseudo terminal" |
| help |
| Connect this UART to its own pseudoterminal. This is the preferred |
| option for users who want to use Zephyr's shell. |
| Moreover this option does not conflict with any other native |
| backend which may use the invoking shell standard input/output. |
| Note it can be overridden from command line |
| |
| config UART_NATIVE_PTY_0_ON_STDINOUT |
| bool "Connect the first PTY UART to the invoking shell stdin/stdout" |
| help |
| Connect this UART to the stdin & stdout of the calling shell/terminal |
| which invoked the native executable. This is good enough for |
| automated testing, or when feeding from a file/pipe. |
| Note that other, non UART messages, will also be printed to the |
| terminal. |
| It is strongly discouraged to try to use this option with the new |
| shell interactively, as the default terminal configuration is NOT |
| appropriate for interactive use. |
| |
| endchoice |
| |
| choice NATIVE_UART_0 |
| prompt "Native UART Port 0 connection (deprecated)" |
| default NATIVE_UART_0_ON_OWN_PTY |
| |
| config NATIVE_UART_0_ON_OWN_PTY |
| bool "Connect the UART to its own pseudo terminal (deprecated)" |
| help |
| Deprecated, use UART_NATIVE_PTY_0_ON_OWN_PTY instead. |
| |
| config NATIVE_UART_0_ON_STDINOUT |
| bool "Connect the UART to the invoking shell stdin/stdout (deprecated)" |
| select DEPRECATED |
| help |
| Deprecated, use UART_NATIVE_PTY_0_ON_STDINOUT instead. |
| |
| endchoice |
| |
| config UART_NATIVE_WAIT_PTS_READY_ENABLE |
| bool "Support waiting for pseudo terminal client readiness (deprecated)" |
| select DEPRECATED |
| help |
| This option is deprecated and does not do anything anymore. (The command line |
| option --wait_uart is always available). |
| |
| config UART_NATIVE_POSIX_PORT_1_ENABLE |
| bool "Second UART port (deprecated)" |
| select DEPRECATED |
| help |
| This option does not do anything anymore. Use DTS to instantiate as many |
| "zephyr,native-pty-uart" compatible nodes as you want. |
| |
| config UART_NATIVE_PTY_AUTOATTACH_DEFAULT_CMD |
| string "Default command to attach a PTY UART to a new terminal" |
| default NATIVE_UART_AUTOATTACH_DEFAULT_CMD |
| help |
| If the native executable is called with the --attach_uart |
| command line option, this will be the default command which will be |
| run to attach a new terminal to the 1st UART. |
| Note that this command must have one, and only one, '%s' as |
| placeholder for the pseudoterminal device name (e.g. /dev/pts/35) |
| This is only applicable if the UART_0 is configured to use its own |
| PTY with NATIVE_UART_0_ON_OWN_PTY. |
| The 2nd UART will not be affected by this option. |
| If you are using GNOME, then you can use this command string |
| 'gnome-terminal -- screen %s' |
| |
| config NATIVE_UART_AUTOATTACH_DEFAULT_CMD |
| string "Default command to attach the UART to a new terminal (deprecated)" |
| default "xterm -e screen %s &" |
| help |
| Deprecated. Use UART_NATIVE_PTY_AUTOATTACH_DEFAULT_CMD instead |
| |
| endif # UART_NATIVE_PTY || UART_NATIVE_POSIX |