1. 07 3月, 2015 9 次提交
  2. 03 2月, 2015 1 次提交
  3. 10 1月, 2015 17 次提交
  4. 26 11月, 2014 1 次提交
  5. 07 11月, 2014 2 次提交
  6. 06 11月, 2014 4 次提交
  7. 20 10月, 2014 1 次提交
  8. 29 9月, 2014 3 次提交
  9. 09 9月, 2014 2 次提交
    • D
      serial: imx: clean up imx_poll_get_char() · 26c47412
      Dirk Behme 提交于
      Looking at the get_poll_char() function of the 8250.c serial driver,
      we learn:
      
      * poll_get_char() doesn't have to save/disable/restore the interrupt
        registers. No interrupt handling is needed in this function at all.
        Remove it.
      
      * Don't block in case there is no data available. So instead blocking
        in the do {} while loop, just return with NO_POLL_CHAR, immediately .
      
      Additionally, while the i.MX6 register URXD[7-0] contain the RX_DATA,
      the upper bits of this register (URXD[15-10]) might contain some
      control flags. To ensure that these are not returned with the data
      read, just mask out URXD[7-0].
      
      These changes fix the 'hang' working with kdb:
      
      $ echo ttymxc3 > /sys/module/kgdboc/parameters/kgdboc
      $ echo g >/proc/sysrq-trigger
      [0]kdb> help
      ...
      <hang>
      Signed-off-by: NDirk Behme <dirk.behme@de.bosch.com>
      Signed-off-by: NDaniel Thompson <daniel.thompson@linaro.org>
      Cc: Jiri Slaby <jslaby@suse.cz>
      Cc: linux-serial@vger.kernel.org
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      26c47412
    • P
      serial: imx: Fix x_char handling and tx flow control · 5e42e9a3
      Peter Hurley 提交于
      The serial core expects the UART driver to transmit x_char
      (START/STOP chars) even if tx is stopped and before data already
      in the tx ring buffer if possible. Also, sending x_char must
      not cause additional data in the tx ring buffer to transmit
      if tx is stopped.
      
      Cause x_char to be transmitted before any other data is sent.
      Auto-stop tx if the tx ring buffer is empty or tx should be stopped.
      Only perform one write wakeup if tx ring buffer space is below
      threshold.
      
      x_char handling in DMA mode is still broken; add FIXME.
      Signed-off-by: NPeter Hurley <peter@hurleysoftware.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      5e42e9a3