All of lore.kernel.org
 help / color / mirror / Atom feed
From: sashiko-bot@kernel.org
To: "Kwanghoon Son" <asdfkwang@gmail.com>
Cc: devicetree@vger.kernel.org, linux-serial@vger.kernel.org,
	robh@kernel.org, conor+dt@kernel.org, ojeda@kernel.org,
	gary@garyguo.net
Subject: Re: [PATCH RFC 05/12] dt-bindings: serial: Add BL808 UART
Date: Thu, 29 Oct 2026 05:15:17 +0000	[thread overview]
Message-ID: <sashiko-outbox-188747@kernel.org> (raw)
In-Reply-To: <20261029-rust-bl808-console-v1-5-b736ee920078@gmail.com>

Thank you for your contribution! Sashiko AI review found 2 potential issue(s) to consider:
- [Medium] dt-bindings: serial: missing SoC-specific compatible in bflb,uart.yaml
- [Low] dt-bindings: serial: unused label in bflb,uart.yaml example
--

commit 1bdd5b51639067c3a28b1a40beeb8fbfbbc65a65
Author: Kwanghoon Son <asdfkwang@gmail.com>

dt-bindings: serial: Add BL808 UART

This commit adds the Device Tree binding schema for the Bouffalo Lab UART
controller, describing its register range, interrupt, and baud clock input.

Link: https://docs.zephyrproject.org/latest/build/dts/api/bindings/serial/bflb,uart.html

> diff --git a/Documentation/devicetree/bindings/serial/bflb,uart.yaml b/Documentation/devicetree/bindings/serial/bflb,uart.yaml
> new file mode 100644
> index 0000000000000..df29d258f0a1c
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/serial/bflb,uart.yaml
> @@ -0,0 +1,57 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/serial/bflb,uart.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Bouffalo Lab UART Controller
> +
> +description: |
> +  UART IP used by Bouffalo Lab SoCs. Initial Linux support covers the
> +  BL808 controller with a 32-byte FIFO. The compatible follows Zephyr.
> +
> +maintainers:
> +  - Kwanghoon Son <asdfkwang@gmail.com>
> +
> +allOf:
> +  - $ref: serial.yaml#
> +
> +properties:
> +  compatible:
> +    const: bflb,uart

[Severity: Medium]
Should the compatible property in Documentation/devicetree/bindings/serial/bflb,uart.yaml
include a SoC-specific compatible string such as bflb,bl808-uart (either
alone or with bflb,uart as a fallback), and should the description section
describe the hardware rather than what Linux currently supports?

Documentation/devicetree/bindings/writing-bindings.rst requires SoC-specific
compatible strings for SoC devices rather than generic vendor-wide names, and
notes that bindings should describe the hardware rather than what an OS or
driver currently supports.

In the accompanying driver (drivers/tty/serial/bflb_uart.rs), tx_empty()
relies on a hardcoded 32-byte FIFO depth to check whether all TX FIFO slots
are free:

    const FIFO_DEPTH: u32 = 32;
    ...
    fn tx_empty(&self) -> bool {
        self.read::<FIFO_CONFIG1>() & TX_FIFO_CNT_MASK == FIFO_DEPTH
    }

Without a SoC-specific compatible string like bflb,bl808-uart, Device Trees
using only bflb,uart cannot distinguish the BL808 UART from other Bouffalo Lab
SoCs with different FIFO depths or hardware capabilities without breaking the
DT ABI.

[ ... ]

> +examples:
> +  - |
> +    #include <dt-bindings/interrupt-controller/irq.h>
> +
> +    uart3: serial@30002000 {
> +        compatible = "bflb,uart";

[Severity: Low]
Can the unused uart3 label be dropped from the serial@30002000 node in the
examples section of Documentation/devicetree/bindings/serial/bflb,uart.yaml?

Because uart3 is never referenced by a phandle in the example, running
scripts/dtc/dt-check-style --mode=strict reports an unused-labels warning in
check_unused_labels().

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20261029-rust-bl808-console-v1-0-b736ee920078@gmail.com?part=5

  reply	other threads:[~2026-10-29  5:15 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-29  5:05 [PATCH RFC 00/12] Add BL808 UART3 support with a Rust serial-core polling console Kwanghoon Son
2026-10-29  5:05 ` Kwanghoon Son
2026-10-29  5:05 ` [PATCH RFC 01/12] dt-bindings: vendor-prefixes: Add Bouffalo Lab Kwanghoon Son
2026-10-29  5:05   ` Kwanghoon Son
2026-10-29  5:10   ` sashiko-bot
2026-10-29  5:05 ` [PATCH RFC 02/12] dt-bindings: interrupt-controller: Add BL808 PLIC Kwanghoon Son
2026-10-29  5:05   ` Kwanghoon Son
2026-10-29  5:11   ` sashiko-bot
2026-10-29  5:05 ` [PATCH RFC 03/12] dt-bindings: timer: Add BL808 CLINT Kwanghoon Son
2026-10-29  5:05   ` Kwanghoon Son
2026-10-29  5:12   ` sashiko-bot
2026-10-29  5:05 ` [PATCH RFC 04/12] dt-bindings: riscv: Add Bouffalo Lab BL808 Kwanghoon Son
2026-10-29  5:05   ` Kwanghoon Son
2026-10-29  5:11   ` sashiko-bot
2026-10-29  5:05 ` [PATCH RFC 05/12] dt-bindings: serial: Add BL808 UART Kwanghoon Son
2026-10-29  5:05   ` Kwanghoon Son
2026-10-29  5:15   ` sashiko-bot [this message]
2026-10-29  5:05 ` [PATCH RFC 06/12] rust: serial: Add minimal serial-core polling console support Kwanghoon Son
2026-10-29  5:05   ` Kwanghoon Son
2026-10-29  5:37   ` sashiko-bot
2026-10-29  5:05 ` [PATCH RFC 07/12] serial: bflb: Add Rust BL808 polling console Kwanghoon Son
2026-10-29  5:05   ` Kwanghoon Son
2026-10-29  5:16   ` sashiko-bot
2026-10-29  5:05 ` [PATCH RFC 08/12] riscv: Add Bouffalo Lab SoC selection Kwanghoon Son
2026-10-29  5:05   ` Kwanghoon Son
2026-10-29  5:14   ` sashiko-bot
2026-10-29  5:05 ` [PATCH RFC 09/12] riscv: dts: bouffalolab: Add BL808 SoC Kwanghoon Son
2026-10-29  5:05   ` Kwanghoon Son
2026-10-29  5:12   ` sashiko-bot
2026-10-29  5:05 ` [PATCH RFC 10/12] riscv: dts: bouffalolab: Add Sipeed M1s Dock Kwanghoon Son
2026-10-29  5:05   ` Kwanghoon Son
2026-10-29  5:10   ` sashiko-bot
2026-10-29  5:05 ` [PATCH RFC 11/12] riscv: defconfig: Enable Bouffalo Lab SoCs Kwanghoon Son
2026-10-29  5:05   ` Kwanghoon Son
2026-10-29  5:13   ` sashiko-bot
2026-10-29  5:05 ` [PATCH RFC 12/12] MAINTAINERS: Add Bouffalo Lab BL808 support Kwanghoon Son
2026-10-29  5:05   ` Kwanghoon Son

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=sashiko-outbox-188747@kernel.org \
    --to=sashiko-bot@kernel.org \
    --cc=asdfkwang@gmail.com \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=gary@garyguo.net \
    --cc=linux-serial@vger.kernel.org \
    --cc=ojeda@kernel.org \
    --cc=robh@kernel.org \
    --cc=sashiko-reviews@lists.linux.dev \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.