Line data Source code
1 0 : /* 2 : * Copyright (c) 2023 Intel Corporation 3 : * 4 : * SPDX-License-Identifier: Apache-2.0 5 : */ 6 : 7 : /** 8 : * Header file for the INTEL LW UART 9 : */ 10 : 11 : #ifndef ZEPHYR_DRIVERS_SERIAL_UART_INTEL_LW_H_ 12 : #define ZEPHYR_DRIVERS_SERIAL_UART_INTEL_LW_H_ 13 : 14 : /* End of packet feature. 15 : * Driver will trigger interrupt upon receiving end of package character. 16 : * Please enable CONFIG_UART_INTEL_LW_EOP to use this feature. 17 : * Use the api: uart_drv_cmd with CMD_ENABLE_EOP to enable the feature. 18 : * This cmd will write the ip register and also set a flag to the driver. 19 : * The flag will modify uart_irq_callback_user_data_set 20 : * to set call back function for eop interrupt. 21 : * Flag is cleared after uart_irq_callback_user_data_set is called. 22 : */ 23 1 : #define CMD_ENABLE_EOP 0x01 24 0 : #define CMD_DISABLE_EOP 0x02 25 : 26 : /* Transmit break feature. 27 : * Use uart_drv_cmd with CMD_TRBK_EN to break ongoing transmit. 28 : * After this cmd, uart is unable to transmit any data. 29 : * Please use CMD_TRBK_DIS to resume normal operation. 30 : * Please also call uart_intel_lw_err_check, to clear the error caused 31 : * by transmit break. 32 : */ 33 0 : #define CMD_TRBK_EN 0x03 34 0 : #define CMD_TRBK_DIS 0x04 35 : 36 : /* This driver supports interrupt driven api. 37 : * Polling for data under normal operation, might cause unexpected behaviour. 38 : * If users wish to poll for data, please use the api: 39 : * uart_drv_cmd with CMD_POLL_ASSERT_RTS before polling out/in. 40 : * Then use CMD_POLL_DEASSERT_RTS to resume normal operation after polling. 41 : */ 42 0 : #define CMD_POLL_ASSERT_RTS 0x05 43 0 : #define CMD_POLL_DEASSERT_RTS 0x06 44 : 45 : #endif /* ZEPHYR_DRIVERS_SERIAL_UART_INTEL_LW_H_ */