Commit 3abcc01c authored by Geert Uytterhoeven's avatar Geert Uytterhoeven Committed by Marc Kleine-Budde
Browse files

dt-bindings: can: renesas,rcar-canfd: Fix number of channels for R-Car V3U



According to the bindings, only two channels are supported.
However, R-Car V3U supports eight, leading to "make dtbs" failures:

        arch/arm64/boot/dts/renesas/r8a779a0-falcon.dtb: can@e6660000: Unevaluated properties are not allowed ('channel2', 'channel3', 'channel4', 'channel5', 'channel6', 'channel7' were unexpected)

Update the number of channels to 8 on R-Car V3U.
While at it, prevent adding more properties to the channel nodes, as
they must contain no other properties than a status property.

Fixes: d6254d52 ("dt-bindings: can: renesas,rcar-canfd: Document r8a779a0 support")
Signed-off-by: default avatarGeert Uytterhoeven <geert+renesas@glider.be>
Reviewed-by: default avatarKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/all/7d41d72cd7db2e90bae069ce57dbb672f17500ae.1670431681.git.geert+renesas@glider.be


Signed-off-by: default avatarMarc Kleine-Budde <mkl@pengutronix.de>
parent 0826e82b
Loading
Loading
Loading
Loading
+72 −61
Original line number Diff line number Diff line
@@ -9,9 +9,6 @@ title: Renesas R-Car CAN FD Controller
maintainers:
  - Fabrizio Castro <fabrizio.castro.jz@renesas.com>

allOf:
  - $ref: can-controller.yaml#

properties:
  compatible:
    oneOf:
@@ -77,12 +74,13 @@ properties:
    description: Maximum frequency of the CANFD clock.

patternProperties:
  "^channel[01]$":
  "^channel[0-7]$":
    type: object
    description:
      The controller supports two channels and each is represented as a child
      node.  Each child node supports the "status" property only, which
      is used to enable/disable the respective channel.
      The controller supports multiple channels and each is represented as a
      child node.  Each channel can be enabled/disabled individually.

    additionalProperties: false

required:
  - compatible
@@ -98,7 +96,10 @@ required:
  - channel0
  - channel1

if:
allOf:
  - $ref: can-controller.yaml#

  - if:
      properties:
        compatible:
          contains:
@@ -153,6 +154,16 @@ else:
        resets:
          maxItems: 1

  - if:
      not:
        properties:
          compatible:
            contains:
              const: renesas,r8a779a0-canfd
    then:
      patternProperties:
        "^channel[2-7]$": false

unevaluatedProperties: false

examples: