[PATCH v1 2/2] LRW UART: serial: add driver for the LRW UART

Krzysztof Kozlowski krzk at kernel.org
Fri Feb 13 02:02:57 PST 2026


On 13/02/2026 10:33, LiuQingtao wrote:
> From: Wenhong Liu <liu.wenhong35 at zte.com.cn>
> 
> This commit introduces a serial driver for the LRW UART controller


Please do not use "This commit/patch/change", but imperative mood. See
longer explanation here:
https://elixir.bootlin.com/linux/v6.16/source/Documentation/process/submitting-patches.rst#L94

> 
> Key features implemented:
> - Support for FIFO mode (16-byte depth)
> - Baud rate configuration
> - Standard asynchronous communication formats:
>   * Data bits: 5, 6, 7, 8, 9 bits
>   * Parity: odd, even, fixed, none
>   * Stop bits: 1 or 2 bits
> - Hardware flow control (RTS/CTS)
> - Multiple interrupt reporting mechanisms
> 
> Signed-off-by: Wenhong Liu <liu.wenhong35 at zte.com.cn>
> Signed-off-by: Qingtao Liu <liu.qingtao2 at zte.com.cn>

Mismatched DCO/SoB.

Run checkpatch on your code.

> ---
>  MAINTAINERS                      |    3 +
>  drivers/tty/serial/Kconfig       |   33 +
>  drivers/tty/serial/Makefile      |    1 +
>  drivers/tty/serial/lrw_uart.c    | 2822 ++++++++++++++++++++++++++++++
>  include/uapi/linux/serial_core.h |    3 +
>  5 files changed, 2862 insertions(+)
>  create mode 100644 drivers/tty/serial/lrw_uart.c
> 
> diff --git a/MAINTAINERS b/MAINTAINERS
> index ad6acbe24544..a97fbd205f75 100644
> --- a/MAINTAINERS
> +++ b/MAINTAINERS
> @@ -15041,6 +15041,9 @@ R:	Qingtao Liu <liu.qingtao2 at zte.com.cn>
>  L:	linux-serial at vger.kernel.org
>  S:	Maintained
>  F:	Documentation/devicetree/bindings/serial/lrw,lrw-uart.yaml
> +F:	drivers/tty/serial/Kconfig
> +F:	drivers/tty/serial/Makefile

Why do you claim you maintain these files?

> +F:	drivers/tty/serial/lrw_uart.c
>  


...


> +
> +static int lrw_uart_probe(struct platform_device *pdev)
> +{
> +	struct lrw_uart_port *sup;
> +	struct resource *r;
> +	int portnr, ret;
> +	unsigned int clk;
> +	unsigned int baudrate;
> +
> +	/*
> +	 * Check the mandatory baud rate parameter in the DT node early
> +	 * so that we can easily exit with the error.
> +	 */
> +	if (pdev->dev.of_node) {
> +		struct device_node *np = pdev->dev.of_node;
> +
> +		ret = of_property_read_u32(np, "current-speed", &baudrate);

Test your code/DTS - there is no such property allowed and you would see
warnings on DTS.


Best regards,
Krzysztof



More information about the linux-riscv mailing list