[PATCH v1] spi: dt-bindings: nuvoton,npcm-fiu: Convert to DT schema

Krzysztof Kozlowski krzk at kernel.org
Thu Nov 13 19:51:47 AEDT 2025


On Wed, Nov 12, 2025 at 07:33:14PM +0200, Tomer Maimon wrote:
> +  The NPCM7XX supports three FIU modules:
> +    FIU0 and FIUx support two chip selects
> +    FIU3 supports four chip selects.
> +
> +  The NPCM8XX supports four FIU modules:
> +    FIU0 and FIUx support two chip selects
> +    FIU1 and FIU3 support four chip selects.
> +
> +  Alias convention:
> +    The '/aliases' node should define:
> +      For NPCM7xx:  fiu0=&fiu0; fiu1=&fiu3; fiu2=&fiux;
> +      For NPCM8xx:  fiu0=&fiu0; fiu1=&fiu3; fiu2=&fiux; fiu3=&fiu1;
> +
> +properties:
> +  compatible:
> +    enum:
> +      - nuvoton,npcm750-fiu # Poleg NPCM7XX
> +      - nuvoton,npcm845-fiu # Arbel NPCM8XX
> +
> +  reg:
> +    minItems: 1

It wasn't flexible in the original binding. Your DTS being absolute mess
and defining one 'reg' entry but two 'reg-names' (!!!) does not help at
all.

Anyway, address space is rarely optional, so I have doubts you would
have proper justification for this change.

> +    items:
> +      - description: FIU registers
> +      - description: Memory-mapped flash contents (optional)
> +
> +  reg-names:
> +    minItems: 1
> +    items:
> +      - const: control
> +      - const: memory
> +
> +  interrupts:

Wasn't in the old binding. I asked last time - you need to explain each
changen done to the binding from pure conversion.

> +    maxItems: 1
> +
> +  clocks:
> +    maxItems: 1
> +
> +  nuvoton,spix-mode:
> +    type: boolean
> +    description: Enable SPIX mode for an expansion bus to an ASIC or CPLD.
> +
> +required:
> +  - compatible
> +  - reg
> +  - reg-names
> +  - clocks
> +
> +unevaluatedProperties: false
> +
> +examples:
> +  - |
> +    #include <dt-bindings/clock/nuvoton,npcm7xx-clock.h>
> +    fiu3: spi at c0000000 {

Drop unused label.

> +        compatible = "nuvoton,npcm750-fiu";
> +        #address-cells = <1>;
> +        #size-cells = <0>;
> +        reg = <0xfb000000 0x1000>,
> +              <0x80000000 0x10000000>;

Keep reg as the second property, followed by reg-names.

> +        reg-names = "control", "memory";
> +        clocks = <&clk NPCM7XX_CLK_AHB>;
> +        pinctrl-names = "default";
> +        pinctrl-0 = <&spi3_pins>;

Best regards,
Krzysztof



More information about the openbmc mailing list