| # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) |
| %YAML 1.2 |
| --- |
| $id: http://devicetree.org/schemas/net/can/bosch,c_can.yaml# |
| $schema: http://devicetree.org/meta-schemas/core.yaml# |
| |
| title: Bosch C_CAN/D_CAN controller |
| |
| description: Bosch C_CAN/D_CAN controller for CAN bus |
| |
| maintainers: |
| - Dario Binacchi <dariobin@libero.it> |
| |
| allOf: |
| - $ref: can-controller.yaml# |
| |
| properties: |
| compatible: |
| oneOf: |
| - enum: |
| - bosch,c_can |
| - bosch,d_can |
| - ti,dra7-d_can |
| - ti,am3352-d_can |
| - items: |
| - enum: |
| - ti,am4372-d_can |
| - const: ti,am3352-d_can |
| |
| reg: |
| maxItems: 1 |
| |
| interrupts: |
| minItems: 1 |
| maxItems: 4 |
| |
| power-domains: |
| description: | |
| Should contain a phandle to a PM domain provider node and an args |
| specifier containing the DCAN device id value. It's mandatory for |
| Keystone 2 66AK2G SoCs only. |
| maxItems: 1 |
| |
| clocks: |
| description: | |
| CAN functional clock phandle. |
| maxItems: 1 |
| |
| clock-names: |
| maxItems: 1 |
| |
| syscon-raminit: |
| description: | |
| Handle to system control region that contains the RAMINIT register, |
| register offset to the RAMINIT register and the CAN instance number (0 |
| offset). |
| $ref: /schemas/types.yaml#/definitions/phandle-array |
| items: |
| - items: |
| - description: The phandle to the system control region. |
| - description: The register offset. |
| - description: The CAN instance number. |
| |
| resets: |
| maxItems: 1 |
| |
| required: |
| - compatible |
| - reg |
| - interrupts |
| - clocks |
| |
| if: |
| properties: |
| compatible: |
| contains: |
| enum: |
| - bosch,d_can |
| |
| then: |
| properties: |
| interrupts: |
| items: |
| - description: Error and status IRQ |
| - description: Message object IRQ |
| - description: RAM ECC correctable error IRQ |
| - description: RAM ECC non-correctable error IRQ |
| |
| else: |
| properties: |
| interrupts: |
| items: |
| - description: Error and status IRQ |
| |
| additionalProperties: false |
| |
| examples: |
| - | |
| #include <dt-bindings/reset/altr,rst-mgr.h> |
| |
| can@ffc00000 { |
| compatible = "bosch,d_can"; |
| reg = <0xffc00000 0x1000>; |
| interrupts = <0 131 4>, <0 132 4>, <0 133 4>, <0 134 4>; |
| clocks = <&can0_clk>; |
| resets = <&rst CAN0_RESET>; |
| }; |
| - | |
| can@0 { |
| compatible = "ti,am3352-d_can"; |
| reg = <0x0 0x2000>; |
| clocks = <&dcan1_fck>; |
| clock-names = "fck"; |
| syscon-raminit = <&scm_conf 0x644 1>; |
| interrupts = <55>; |
| }; |