Re: [PATCH v4 2/7] dt-bindings: serial: 8250: aspeed: add aspeed,vuart-over-pci bool prop
From: Krzysztof Kozlowski
Date: Thu Jul 09 2026 - 05:05:31 EST
On Wed, Jul 08, 2026 at 03:35:54PM +0000, Grégoire Layet wrote:
> The ASPEED AST2600 has 2 Virtual UARTs accessible over PCI.
> The ASPEED AST2600 can be used as a PCI device.
> 2 Virtual UART can be exposed to the host via this PCI device.
> These are 8250-compatible register sets and can be used to have UART
> communication between the PCI BMC and the host.
>
> This boolean can be set to specify if a VUART is used over PCI. A VUART
> over PCI needs a syscon phandle. The syscon gives a regmap to the SCU,
> which is used to set the enable bits of the PCI device.
> On the aspeed's chips, the clocks phandle already points at the SCU node.
> But deriving the regmap from the clock provider would misuse the clocks
> binding. An explicit syscon phandle states the dependency directly.
>
> Signed-off-by: Grégoire Layet <gregoire.layet@xxxxxxxxxxxxx>
> ---
> .../devicetree/bindings/serial/8250.yaml | 22 +++++++++++++++++++
> 1 file changed, 22 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/serial/8250.yaml b/Documentation/devicetree/bindings/serial/8250.yaml
> index 8f22121381fc..2ea8981bba80 100644
> --- a/Documentation/devicetree/bindings/serial/8250.yaml
> +++ b/Documentation/devicetree/bindings/serial/8250.yaml
> @@ -27,6 +27,16 @@ allOf:
> enum:
> - aspeed,ast2500-vuart
> - aspeed,ast2600-vuart
> + - if:
> + required:
> + - aspeed,vuart-over-pci
> + then:
> + required:
> + - syscon
> + properties:
> + compatible:
> + contains:
> + const: aspeed,ast2600-vuart
else:
...
disallow new properties (see example-schema)
> - if:
> properties:
> compatible:
> @@ -223,6 +233,12 @@ properties:
> - const: uartclk
> - const: reg
>
> + syscon:
That's explicitly forbidden by writing bindings (and mentioned as the
antipattern in my older talks about DT).
> + $ref: /schemas/types.yaml#/definitions/phandle
> + description:
> + Phandle to the SCU syscon, used to enable the VUART over the BMC PCI
> + device. Only applicable to aspeed,ast2600-vuart.
> +
> dmas:
> minItems: 1
> maxItems: 4
> @@ -316,6 +332,12 @@ properties:
> polarity (IRQ_TYPE_LEVEL_LOW or IRQ_TYPE_LEVEL_HIGH). Only
> applicable to aspeed,ast2500-vuart and aspeed,ast2600-vuart.
>
> + aspeed,vuart-over-pci:
> + type: boolean
> + description:
> + Enable the VUART over the BMC PCI device. Only applicable to
> + aspeed,ast2600-vuart.
> +
> required:
> - reg
> - interrupts
> --
> 2.54.0
>