Re: [PATCH RFC 05/12] dt-bindings: serial: Add BL808 UART

From: Kwanghoon Son

Date: Fri Oct 30 2026 - 01:56:46 EST


On Thu, Oct 29, 2026 at 07:18:38PM +0000, Conor Dooley wrote:
> On Thu, Oct 29, 2026 at 06:54:49PM +0000, Conor Dooley wrote:
> > On Thu, Oct 29, 2026 at 01:05:46AM -0400, Kwanghoon Son wrote:
> > > Describe the UART register range, interrupt and baud clock input.
> > > Initial Linux support targets the BL808 32-byte FIFO and reuses
> > > Zephyr's bflb,uart compatible. UART3 is D0 PLIC source 20.
> > >
> > > Link: https://docs.zephyrproject.org/latest/build/dts/api/bindings/serial/bflb,uart.html
> > >
> > > Signed-off-by: Kwanghoon Son <asdfkwang@xxxxxxxxx>
> > > ---
> > > .../devicetree/bindings/serial/bflb,uart.yaml | 57 ++++++++++++++++++++++
> > > 1 file changed, 57 insertions(+)
> > >
> > > diff --git a/Documentation/devicetree/bindings/serial/bflb,uart.yaml b/Documentation/devicetree/bindings/serial/bflb,uart.yaml
> > > new file mode 100644
> > > index 0000000000000000000000000000000000000000..df29d258f0a1c6d7bb283cf19c4157436991b64b
> > > --- /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@xxxxxxxxx>
> > > +
> > > +allOf:
> > > + - $ref: serial.yaml#
> > > +
> > > +properties:
> > > + compatible:
> > > + const: bflb,uart
> >
> > This needs to be a device-specific compatible - please just use the
> > binding already reviewed and agreed upon in Jisheng's 2023 series.

Again. I'll base this on Jisheng's reviewed binding which is
"bouffalolab,bl808-uart".

> >
> > > +
> > > + reg:
> > > + maxItems: 1
> > > +
> > > + interrupts:
> > > + maxItems: 1
> > > +
> > > + clocks:
> > > + items:
> > > + - description: Baud rate generator clock
> > > +
> > > + clock-names:
> > > + items:
> > > + - const: baud
> >
> > Drop this clock name, with only one clock there's no more need for it
> > than the interrupt-names or reg-names that you do not use either.

I'll remove clock-names from the binding, driver will look up the single
clock without a name.

>
> And additionally, I see no value in picking something to suit zephyr,
> when zephyr uses things like "bflb,clock-controller" or "bflb,pwm-1" and
> "bflb,pwm2" and so on. Make a clean break and do things correctly rather
> than try (and fail) to be compatible with the zephyr dts.
>

I'll describe the hardware rather than compatiblity reusing the Zephyr
name.

> >
> > > +
> > > +required:
> > > + - compatible
> > > + - reg
> > > + - interrupts
> > > + - clocks
> > > + - clock-names
> > > +
> > > +unevaluatedProperties: false
> > > +
> > > +examples:
> > > + - |
> > > + #include <dt-bindings/interrupt-controller/irq.h>
> > > +
> > > + uart3: serial@30002000 {
> > > + compatible = "bflb,uart";
> > > + reg = <0x30002000 0x1000>;
> > > + interrupts = <20 IRQ_TYPE_LEVEL_HIGH>;
> > > + clocks = <&uart_baud>;
> > > + clock-names = "baud";
> > > + };
> > > +...
> > >
> > > --
> > > 2.47.3
> > >
>
>