[PATCH 1/5] dt-bindings: can: fsl,flexcan: add NXP S32N79 SoC support
Ciprian Marian Costea
ciprianmarian.costea at oss.nxp.com
Wed Mar 18 04:52:24 PDT 2026
On 3/18/2026 12:47 PM, Marc Kleine-Budde wrote:
> On 18.03.2026 10:22:11, Ciprian Costea wrote:
>> From: Ciprian Marian Costea <ciprianmarian.costea at oss.nxp.com>
>>
>> Add NXP S32N79 SoC compatible string and interrupt properties.
>>
>> On S32N79, FlexCAN IP is integrated with two interrupt lines:
>> one for the mailbox interrupts (0-127) and one for signaling
>> errors and bus state changes.
>
Hello Marc,
Thank you for your review.
Correct, I will update the commit message in V2 to clearly state the two
different CAN concepts (bus error vs device state changes -- not bus
state changes).
> Comment from patch#2 applies here, too:
>
> Usually it's "bus error" and "state changes", as the errors happen
> visible for everyone on the bus, while the state change is local to the
> controller (every controller has it's own state).
>
>> Co-developed-by: Andra-Teodora Ilie <andra.ilie at nxp.com>
>> Signed-off-by: Andra-Teodora Ilie <andra.ilie at nxp.com>
>> Co-developed-by: Larisa Grigore <larisa.grigore at nxp.com>
>> Signed-off-by: Larisa Grigore <larisa.grigore at nxp.com>
>> Signed-off-by: Ciprian Marian Costea <ciprianmarian.costea at oss.nxp.com>
>> ---
>> .../bindings/net/can/fsl,flexcan.yaml | 30 ++++++++++++++++++-
>> 1 file changed, 29 insertions(+), 1 deletion(-)
>>
>> diff --git a/Documentation/devicetree/bindings/net/can/fsl,flexcan.yaml b/Documentation/devicetree/bindings/net/can/fsl,flexcan.yaml
>> index f81d56f7c12a..131fae2739fa 100644
>> --- a/Documentation/devicetree/bindings/net/can/fsl,flexcan.yaml
>> +++ b/Documentation/devicetree/bindings/net/can/fsl,flexcan.yaml
>> @@ -26,6 +26,7 @@ properties:
>> - fsl,ls1021ar2-flexcan
>> - fsl,lx2160ar1-flexcan
>> - nxp,s32g2-flexcan
>> + - nxp,s32n79-flexcan
>> - items:
>> - enum:
>> - fsl,imx53-flexcan
>> @@ -173,11 +174,38 @@ allOf:
>> - const: mb-1
>> required:
>> - interrupt-names
>> - else:
>> + - if:
>> + properties:
>> + compatible:
>> + contains:
>> + const: nxp,s32n79-flexcan
>> + then:
>> + properties:
>> + interrupts:
>> + items:
>> + - description: Message Buffer interrupt for mailboxes 0-127
>> + - description: Bus Error interrupt
>
> It's a combined Device state change and Bus Error detection interrupt?
>
I will update the description in V2 to: 'Bus Error detection and Device
state change interrupt'.
>> + interrupt-names:
>> + items:
>> + - const: mb-0
>> + - const: berr
>> + required:
>> + - interrupt-names
>> +
>> + - if:
>> + not:
>> + properties:
>> + compatible:
>> + contains:
>> + enum:
>> + - nxp,s32g2-flexcan
>> + - nxp,s32n79-flexcan
>
> Is there else if or something like that in YAML?
>
AFAIK, dt-schema YAML doesn't have else if.
The negated if (not/contains/enum) seems to be the standard approach
used elsewhere in the dt-bindings tree, e.g., in [1], [2], [3].
[1]
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/devicetree/bindings/thermal/rcar-thermal.yaml#n70
[2]
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/devicetree/bindings/phy/realtek,usb2phy.yaml#n151
[3]
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/devicetree/bindings/thermal/rockchip-thermal.yaml#n148
Best Regards,
Ciprian
>> + then:
>> properties:
>> interrupts:
>> maxItems: 1
>> interrupt-names: false
>> +
>> - if:
>> required:
>> - xceiver-supply
>> --
>> 2.43.0
>>
>>
>>
>
> regards,
> Marc
>
> --
> Pengutronix e.K. | Marc Kleine-Budde |
> Embedded Linux | https://www.pengutronix.de |
> Vertretung Nürnberg | Phone: +49-5121-206917-129 |
> Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-9 |
More information about the linux-arm-kernel
mailing list