1. 27 3月, 2015 1 次提交
  2. 07 3月, 2015 1 次提交
  3. 03 2月, 2015 1 次提交
    • N
      tty: xuartps: Fix RX hang, and TX corruption in termios call · 6ecde472
      Nathan Rossi 提交于
      The implementation of flushing the RX FIFO breaks in a number of cases,
      it is impossible to ensure an complete flush of the RX FIFO due to the
      hardware not allowing the use of the FIFOs when the receiver is disabled
      (Reading from the FIFO register does not remove it from the FIFO when
      the RX_EN=0 or RX_DIS=1). Additionally during an initial set_termios
      call where RX_DIS=1 causes a hang waiting forever for the RX FIFO to
      empty. On top of this the FIFO will be cleared by the use of the RXRST
      bits on the Control Register, making the RX flush pointless (as it does
      not preserve the data read anyway).
      
      Due to the TXRST the TX FIFO and transmitter can be interrupted during
      frame trasmission, causing corruption and additionally data lost in the
      FIFO. Most other serial drivers do not flush or clear the FIFOs during
      a termios configuration change and as such do not have issues with
      corruption. For this UART controller is it required that the TXRST/RXRST
      bit be flagged during the change, this means that the data in the FIFO
      will be dropped when changing configuration. In order to prevent data
      loss and corruption of the transmitted data, wait until the TX FIFO is
      empty before changing the configuration. The performance of this may
      cause the set_termios call to take a longer amount of time especially
      on lower baud rates, however it is comparable to the same performance
      hit that a console_write call costs.
      Signed-off-by: NNathan Rossi <nathan.rossi@xilinx.com>
      Acked-by: NAnirudha Sarangi <anirudh@xilinx.com>
      Acked-by: NHarini Katakam <harinik@xilinx.com>
      Signed-off-by: NMichal Simek <michal.simek@xilinx.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      6ecde472
  4. 07 11月, 2014 1 次提交
  5. 29 9月, 2014 1 次提交
  6. 09 9月, 2014 2 次提交
  7. 10 7月, 2014 1 次提交
  8. 25 4月, 2014 7 次提交
  9. 18 12月, 2013 1 次提交
  10. 09 12月, 2013 1 次提交
    • S
      tty: xuartps: Properly guard sysrq specific code · 39669f3a
      Soren Brinkmann 提交于
      Commit 'tty: xuartps: Implement BREAK detection, add SYSRQ support'
      (0c0c47bc) introduced sysrq support
      without properly guarding sysrq specific code which results in build
      errors when sysrq is disabled:
      	DNAME=KBUILD_STR(xilinx_uartps)" -c -o
      	drivers/tty/serial/.tmp_xilinx_uartps.o
      	drivers/tty/serial/xilinx_uartps.c
      	drivers/tty/serial/xilinx_uartps.c: In function 'xuartps_isr':
      	drivers/tty/serial/xilinx_uartps.c:247:5: error: 'struct uart_port'
      	has no member named 'sysrq'
      	drivers/tty/serial/xilinx_uartps.c:247:5: error: 'struct uart_port'
      	has no member named 'sysrq'
      	drivers/tty/serial/xilinx_uartps.c:247:5: error: 'struct uart_port'
      	has no member named 'sysrq'
      	make[3]: *** [drivers/tty/serial/xilinx_uartps.o] Error 1
      Reported-by: NMasanari Iida <standby24x7@gmail.com>
      Cc: Vlad Lungu <vlad.lungu@windriver.com>
      Signed-off-by: NSoren Brinkmann <soren.brinkmann@xilinx.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      39669f3a
  11. 30 10月, 2013 3 次提交
  12. 20 10月, 2013 10 次提交
  13. 04 6月, 2013 1 次提交
  14. 27 5月, 2013 1 次提交
  15. 21 5月, 2013 1 次提交
  16. 26 3月, 2013 2 次提交
  17. 23 1月, 2013 1 次提交
  18. 22 1月, 2013 1 次提交
  19. 16 1月, 2013 1 次提交
    • J
      TTY: switch tty_flip_buffer_push · 2e124b4a
      Jiri Slaby 提交于
      Now, we start converting tty buffer functions to actually use
      tty_port. This will allow us to get rid of the need of tty in many
      call sites. Only tty_port will needed and hence no more
      tty_port_tty_get in those paths.
      
      Now, the one where most of tty_port_tty_get gets removed:
      tty_flip_buffer_push.
      
      IOW we also closed all the races in drivers not using tty_port_tty_get
      at all yet.
      
      Also we move tty_flip_buffer_push declaration from include/linux/tty.h
      to include/linux/tty_flip.h to all others while we are changing it
      anyway.
      Signed-off-by: NJiri Slaby <jslaby@suse.cz>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      2e124b4a
  20. 22 11月, 2012 2 次提交