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