RK3288串口接手数据问题,原厂bug

比如电脑发送数据:
abcdefg
,RK芯片不是一次性收到,而是要分两次或者多次,如:
a
bcdefg
虽然总数对,但是收到字符a就上报给上层了,接着再接收bcdefg
不知道有没有补丁?

自己顶一下

这个是原厂代码把串口的接收buffer设置为1了,把buffer设置为最大就可以了。可以试试

buzaiyouyu001 发表于 2016-11-10 19:44
这个是原厂代码把串口的接收buffer设置为1了,把buffer设置为最大就可以了。可以试试

请问具体是那个,我找了char_revicve函数没有啊,对驱动不是很熟

问题没解决,我在串口代码里看到一个RK工程师留下的邮箱,发邮问了,他叫我自己调{:4_191:}

lushengchu 发表于 2016-12-2 11:33
问题没解决,我在串口代码里看到一个RK工程师留下的邮箱,发邮问了,他叫我自己调

1

问题解决了吗?今天扒到以前的代码了
修改文件: kernel\drivers\tty\serial\rk_serial.c
serial_rk_set_termios(struct uart_port *port, struct ktermios *termios,
struct ktermios *old)
{

    {
        if (termios->c_cflag & CRTSCTS)
            fcr |= UART_FCR_R_TRIG_11;
        else
            fcr |= UART_FCR_R_TRIG_00;
        //修改串口的 FIFO为最大值
        fcr |= UART_FCR_R_TRIG_11;
    }

}

buzaiyouyu001 发表于 2017-1-7 15:30
问题解决了吗?今天扒到以前的代码了
修改文件: kernel\drivers\tty\serial\rk_serial.c
serial_rk_set_ …

谢谢,我试试看

停止位改下测试下?

buzaiyouyu001 发表于 2017-1-7 15:30
问题解决了吗?今天扒到以前的代码了
修改文件: kernel\drivers\tty\serial\rk_serial.c
serial_rk_set_ …

我这边也出现了类似问题,这个方法好用!tks