This series adds a serial driver, with console support, for the UART IP block present on the SiFive FU540 SoC. The programming model is straightforward, but unique. Boot-tested on a SiFive FU540 HiFive-U board (with appropriate patches to the DT data). The patches in this series can also be found at: https://github.com/sifive/riscv-linux/tree/dev/paulw/serial-v4.19-rc7 This second version fixes a few problems identified by the 0-day build system, mostly focused around remnants relating to CONFIG_CONSOLE_POLL, and a missing spin_unlock() in the ISR. Paul Walmsley (2): dt-bindings: serial: add documentation for the SiFive UART driver tty: serial: add driver for the SiFive UART .../bindings/serial/sifive-serial.txt | 21 + drivers/tty/serial/Kconfig | 24 + drivers/tty/serial/Makefile | 1 + drivers/tty/serial/sifive.c | 1067 +++++++++++++++++ include/uapi/linux/serial_core.h | 3 + 5 files changed, 1116 insertions(+) create mode 100644 Documentation/devicetree/bindings/serial/sifive-serial.txt create mode 100644 drivers/tty/serial/sifive.c Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> Cc: Jiri Slaby <jslaby@xxxxxxxx> Cc: Palmer Dabbelt <palmer@xxxxxxxxxx> Cc: Wesley Terpstra <wesley@xxxxxxxxxx> Cc: linux-serial@xxxxxxxxxxxxxxx Cc: linux-riscv@xxxxxxxxxxxxxxxxxxx Cc: linux-kernel@xxxxxxxxxxxxxxx Cc: devicetree@xxxxxxxxxxxxxxx -- 2.19.1