| Bosch C_CAN/D_CAN controller Device Tree Bindings |
| ------------------------------------------------- |
| |
| Required properties: |
| - compatible : Should be "bosch,c_can" for C_CAN controllers and |
| "bosch,d_can" for D_CAN controllers. |
| Can be "ti,dra7-d_can", "ti,am3352-d_can" or |
| "ti,am4372-d_can". |
| - reg : physical base address and size of the C_CAN/D_CAN |
| registers map |
| - interrupts : property with a value describing the interrupt |
| number |
| |
| The following are mandatory properties for DRA7x, AM33xx and AM43xx SoCs only: |
| - ti,hwmods : Must be "d_can<n>" or "c_can<n>", n being the |
| instance number |
| |
| The following are mandatory properties for Keystone 2 66AK2G SoCs only: |
| - power-domains : Should contain a phandle to a PM domain provider node |
| and an args specifier containing the DCAN device id |
| value. This property is as per the binding, |
| Documentation/devicetree/bindings/soc/ti/sci-pm-domain.txt |
| - clocks : CAN functional clock phandle. This property is as per the |
| binding, |
| Documentation/devicetree/bindings/clock/ti,sci-clk.txt |
| |
| Optional properties: |
| - syscon-raminit : Handle to system control region that contains the |
| RAMINIT register, register offset to the RAMINIT |
| register and the CAN instance number (0 offset). |
| |
| Note: "ti,hwmods" field is used to fetch the base address and irq |
| resources from TI, omap hwmod data base during device registration. |
| Future plan is to migrate hwmod data base contents into device tree |
| blob so that, all the required data will be used from device tree dts |
| file. |
| |
| Example: |
| |
| Step1: SoC common .dtsi file |
| |
| dcan1: d_can@481d0000 { |
| compatible = "bosch,d_can"; |
| reg = <0x481d0000 0x2000>; |
| interrupts = <55>; |
| interrupt-parent = <&intc>; |
| status = "disabled"; |
| }; |
| |
| (or) |
| |
| dcan1: d_can@481d0000 { |
| compatible = "bosch,d_can"; |
| ti,hwmods = "d_can1"; |
| reg = <0x481d0000 0x2000>; |
| interrupts = <55>; |
| interrupt-parent = <&intc>; |
| status = "disabled"; |
| }; |
| |
| Step 2: board specific .dts file |
| |
| &dcan1 { |
| status = "okay"; |
| }; |