summaryrefslogtreecommitdiffstats
path: root/Documentation
diff options
context:
space:
mode:
authorBiju Das <biju.das.jz@bp.renesas.com>2022-07-10 12:52:44 +0100
committerMarc Kleine-Budde <mkl@pengutronix.de>2022-07-19 20:46:59 +0200
commit4591c760b79759849b563605132e6afdd0149717 (patch)
treef1f38cc1cace09780a5d12e438fe6756816c074b /Documentation
parentf6b8061db9af1d3660160392e1d6591c2b03596d (diff)
downloadlinux-4591c760b79759849b563605132e6afdd0149717.tar.bz2
dt-bindings: can: nxp,sja1000: Document RZ/N1{D,S} support
Add CAN binding documentation for Renesas RZ/N1 SoC. The SJA1000 CAN controller on RZ/N1 SoC has some differences compared to others like it has no clock divider register (CDR) support and it has no HW loopback (HW doesn't see tx messages on rx), so introduced a new compatible 'renesas,rzn1-sja1000' to handle these differences. Link: https://lore.kernel.org/all/20220710115248.190280-3-biju.das.jz@bp.renesas.com Signed-off-by: Biju Das <biju.das.jz@bp.renesas.com> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/devicetree/bindings/net/can/nxp,sja1000.yaml39
1 files changed, 35 insertions, 4 deletions
diff --git a/Documentation/devicetree/bindings/net/can/nxp,sja1000.yaml b/Documentation/devicetree/bindings/net/can/nxp,sja1000.yaml
index ca9bfdfa50ab..b1327c5b86cf 100644
--- a/Documentation/devicetree/bindings/net/can/nxp,sja1000.yaml
+++ b/Documentation/devicetree/bindings/net/can/nxp,sja1000.yaml
@@ -11,9 +11,15 @@ maintainers:
properties:
compatible:
- enum:
- - nxp,sja1000
- - technologic,sja1000
+ oneOf:
+ - enum:
+ - nxp,sja1000
+ - technologic,sja1000
+ - items:
+ - enum:
+ - renesas,r9a06g032-sja1000 # RZ/N1D
+ - renesas,r9a06g033-sja1000 # RZ/N1S
+ - const: renesas,rzn1-sja1000 # RZ/N1
reg:
maxItems: 1
@@ -21,6 +27,9 @@ properties:
interrupts:
maxItems: 1
+ clocks:
+ maxItems: 1
+
reg-io-width:
$ref: /schemas/types.yaml#/definitions/uint32
description: I/O register width (in bytes) implemented by this device
@@ -82,10 +91,20 @@ allOf:
properties:
compatible:
contains:
- const: technologic,sja1000
+ enum:
+ - technologic,sja1000
+ - renesas,rzn1-sja1000
then:
required:
- reg-io-width
+ - if:
+ properties:
+ compatible:
+ contains:
+ const: renesas,rzn1-sja1000
+ then:
+ required:
+ - clocks
unevaluatedProperties: false
@@ -99,3 +118,15 @@ examples:
nxp,tx-output-config = <0x06>;
nxp,external-clock-frequency = <24000000>;
};
+
+ - |
+ #include <dt-bindings/interrupt-controller/arm-gic.h>
+ #include <dt-bindings/clock/r9a06g032-sysctrl.h>
+
+ can@52104000 {
+ compatible = "renesas,r9a06g032-sja1000", "renesas,rzn1-sja1000";
+ reg = <0x52104000 0x800>;
+ reg-io-width = <4>;
+ interrupts = <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>;
+ clocks = <&sysctrl R9A06G032_HCLK_CAN0>;
+ };