/* See mss_uart.h for details of how to use this function.  */
void MSS_UART_enable_irq(mss_uart_instance_t *this_uart, mss_uart_irq_t irq_mask)
/* See mss_uart.h for details of how to use this function.  */
void MSS_UART_enable_irq(mss_uart_instance_t *this_uart, mss_uart_irq_t irq_mask)
{
    ASSERT((this_uart == &g_mss_uart0) || (this_uart == &g_mss_uart1));
    ASSERT(MSS_UART_INVALID_IRQ > irq_mask);
    if(((this_uart == &g_mss_uart0) || (this_uart == &g_mss_uart1)) && 
       (MSS_UART_INVALID_IRQ > irq_mask))
    {
        NVIC_ClearPendingIRQ(this_uart->irqn);
        this_uart->hw_reg->IER |= (uint8_t)irq_mask & IIRF_MASK;
        this_uart->hw_reg->IEM |= (uint8_t)(((uint32_t)irq_mask & ~((uint32_t)IIRF_MASK)) >> 4u);
        NVIC_EnableIRQ(this_uart->irqn);
    }
}