[PATCH v3 00/14] serial: liteuart: add IRQ support

Gabriel Somlo posted 14 patches 3 years, 5 months ago
There is a newer version of this series
drivers/tty/serial/liteuart.c | 226 +++++++++++++++++++++-------------
1 file changed, 142 insertions(+), 84 deletions(-)
[PATCH v3 00/14] serial: liteuart: add IRQ support
Posted by Gabriel Somlo 3 years, 5 months ago
Add IRQ support to the LiteX LiteUART serial interface

Changes from v2:
  - further split out "separate RX loop from poll timer" into
    dedicated patches highlighting additional changes explicitly:
      - factoring out tty_flip_buffer_push() (6/14)
      - ack only RX events in RX loop (7/14)
      - pass constant flag to uart_insert_char() directly (8/14)
      - fix variable types in rx loop (9/14)
      - separating RX loop from poll timer (10/14)
  - added patch (11/14) to move function definitions to a more
    convenient location, making subsequent changes easier to read
    in diff patch form.
  - fixes and clarifications for RX path IRQ support patch (now 12/14):
      - only return IRQ_HANDLED for RX events
      - use pr_fmt() to improve style of irq setup error message
      - remove unnecessary locking from around single-register access
  - modify TX path to support both IRQ-mode and polling (13/14)
  - move polling-only liteuart_putchar() behind same conditional
    (CONFIG_SERIAL_LITEUART_CONSOLE) as the rest of the code that's
    still using it.

> Changes from v1:
>   - split minor cosmetic changes out into individual patches
>     (1/3 became 1..5/7)
>   - patches 6/7 and 7/7 unchanged (used to be 2/3 and 3/3)

Gabriel Somlo (14):
  serial: liteuart: use KBUILD_MODNAME as driver name
  serial: liteuart: use bit number macros
  serial: liteuart: remove unused uart_ops stubs
  serial: liteuart: don't set unused port fields
  serial: liteuart: minor style fix in liteuart_init()
  serial: liteuart: move tty_flip_buffer_push() out of rx loop
  serial: liteuart: rx loop should only ack rx events
  serial: liteuart: simplify passing of uart_insert_char() flag
  serial: liteuart: fix rx loop variable types
  serial: liteuart: separate rx loop from poll timer
  serial: liteuart: move function definitions
  serial: liteuart: add IRQ support for the RX path
  serial: liteuart: add IRQ support for the TX path
  serial: liteuart: move polling putchar() function

 drivers/tty/serial/liteuart.c | 226 +++++++++++++++++++++-------------
 1 file changed, 142 insertions(+), 84 deletions(-)

-- 
2.37.3