浏览代码

[bsp][imxrt1052-evk] fixed uart bug: lost interrupt configuration when re-configuring uart

liang yongxiang 7 年之前
父节点
当前提交
a800493fd8
共有 1 个文件被更改,包括 1 次插入4 次删除
  1. 1 4
      bsp/imxrt1052-evk/drivers/drv_uart.c

+ 1 - 4
bsp/imxrt1052-evk/drivers/drv_uart.c

@@ -439,6 +439,7 @@ static rt_err_t imxrt_configure(struct rt_serial_device *serial, struct serial_c
     config.enableRx = true;
 
     LPUART_Init(uart->uart_base, &config, GetUartSrcFreq());
+    LPUART_EnableInterrupts(uart->uart_base, kLPUART_RxDataRegFullInterruptEnable);
 
     return RT_EOK;
 }
@@ -453,15 +454,11 @@ static rt_err_t imxrt_control(struct rt_serial_device *serial, int cmd, void *ar
     switch (cmd)
     {
     case RT_DEVICE_CTRL_CLR_INT:
-        /* disable interrupt */
-        LPUART_DisableInterrupts(uart->uart_base, kLPUART_RxDataRegFullInterruptEnable);
         /* disable rx irq */
         DisableIRQ(uart->irqn);
 
         break;
     case RT_DEVICE_CTRL_SET_INT:
-        /* enable interrupt */
-        LPUART_EnableInterrupts(uart->uart_base, kLPUART_RxDataRegFullInterruptEnable);
         /* enable rx irq */
         EnableIRQ(uart->irqn);
         break;