5 #ifndef OPENTITAN_SW_DEVICE_LIB_TESTING_UART_TESTUTILS_H_
6 #define OPENTITAN_SW_DEVICE_LIB_TESTING_UART_TESTUTILS_H_
10 #include "sw/device/lib/base/status.h"
17 typedef enum uart_pinmux_platform_id {
18 kUartPinmuxPlatformIdFpgaCw310 = 0,
19 kUartPinmuxPlatformIdDvsim,
20 kUartPinmuxPlatformIdSilicon,
21 kUartPinmuxPlatformIdCount,
22 } uart_pinmux_platform_id_t;
27 typedef enum uart_pinmux_channel {
28 kUartPinmuxChannelConsole,
29 kUartPinmuxChannelDut,
30 kUartPinmuxChannelCount,
31 } uart_pinmux_channel_t;
35 uint32_t peripheral_id;
36 uint32_t irq_tx_watermark_id;
37 uint32_t irq_tx_empty_id;
38 uint32_t irq_rx_watermark_id;
39 uint32_t irq_tx_done_id;
40 uint32_t irq_rx_overflow_id;
41 uint32_t irq_rx_frame_err_id;
42 uint32_t irq_rx_break_err_id;
43 uint32_t irq_rx_timeout_id;
44 uint32_t irq_rx_parity_err_id;
57 status_t uart_testutils_select_pinmux(
const dif_pinmux_t *pinmux,
59 uart_pinmux_channel_t channel);
69 status_t uart_testutils_detach_pinmux(
const dif_pinmux_t *pinmux,