Re: [PATCH] dt-bindings: serial: 8250: add marvell,armada-38x-uart compatible

From: Rosen Penev

Date: Thu Sep 03 2026 - 15:16:41 EST


On Thu, Sep 3, 2026 at 8:42 AM Conor Dooley <conor@xxxxxxxxxx> wrote:
>
> On Wed, Sep 02, 2026 at 02:34:55PM -0700, Rosen Penev wrote:
> > On Tue, Sep 1, 2026 at 10:51 AM Conor Dooley <conor@xxxxxxxxxx> wrote:
> > >
> > > On Mon, Aug 31, 2026 at 05:42:03PM -0700, Rosen Penev wrote:
> > > > The Armada 38x and 98DX3236 SoCs use this compatible, either paired
> > > > with "ns16550a" (armada-38x.dtsi) or on its own
> > > > (armada-xp-98dx3236.dtsi). Neither form is covered by the 8250
> > > > binding, so dtbs_check reports:
> > > >
> > > > serial@12000: failed to match any schema with compatible:
> > > > ['marvell,armada-38x-uart', 'ns16550a']
> > > >
> > > > Add a standalone const entry and a two-string variant paired with
> > > > "ns16550a".
> > >
> > > Only one of these is correct, add one and fix the users.
> > > Given there's match data, it's probably the standalone one.
>
> > Commit 62480772263a adds the second one to support earlycon.
>
> So the one with the ns16550a fallback is the correct one?
Good question. I posted an alternative to this patch here:
https://lore.kernel.org/linux-serial/20260902222555.30C151F000E9@xxxxxxxxxxxxxxx/T/#t

If accepted, it would avoid needing ns16550a in dts, and a v2 of this
patch would be the first hunk + dts fixup.
>
> > >
> > > pw-bot: changes-requested
> > >
> > > Thanks,
> > > Conor.
> > >
> > > >
> > > > Validated with make dt_binding_check (8250.yaml) and dt-validate on
> > > > armada-38x and armada-xp 98DX3236 boards: the UART schema errors are
> > > > gone.
> > > >
> > > > Assisted-by: opencode:big-pickle
> > > > Signed-off-by: Rosen Penev <rosenp@xxxxxxxxx>
> > > > ---
> > > > Documentation/devicetree/bindings/serial/8250.yaml | 4 ++++
> > > > 1 file changed, 4 insertions(+)
> > > >
> > > > diff --git a/Documentation/devicetree/bindings/serial/8250.yaml b/Documentation/devicetree/bindings/serial/8250.yaml
> > > > index 8c2c177faf89..f71c6afe02f2 100644
> > > > --- a/Documentation/devicetree/bindings/serial/8250.yaml
> > > > +++ b/Documentation/devicetree/bindings/serial/8250.yaml
> > > > @@ -109,6 +109,7 @@ properties:
> > > > - const: aspeed,ast2500-vuart
> > > > - const: intel,xscale-uart
> > > > - const: mrvl,pxa-uart
> > > > + - const: marvell,armada-38x-uart
> > > > - const: nuvoton,wpcm450-uart
> > > > - const: nuvoton,npcm750-uart
> > > > - const: nvidia,tegra20-uart
> > > > @@ -119,6 +120,9 @@ properties:
> > > > - exar,xr16l2551
> > > > - exar,xr16l2550
> > > > - const: ns8250
> > > > + - items:
> > > > + - const: marvell,armada-38x-uart
> > > > + - const: ns16550a
> > > > - items:
> > > > - enum:
> > > > - altr,16550-FIFO32
> > > > --
> > > > 2.55.0
> > > >