diff options
author | Jonathan Herman <hermanjl@cs.unc.edu> | 2013-01-17 16:15:55 -0500 |
---|---|---|
committer | Jonathan Herman <hermanjl@cs.unc.edu> | 2013-01-17 16:15:55 -0500 |
commit | 8dea78da5cee153b8af9c07a2745f6c55057fe12 (patch) | |
tree | a8f4d49d63b1ecc92f2fddceba0655b2472c5bd9 /Documentation/devicetree/bindings/net/can/fsl-flexcan.txt | |
parent | 406089d01562f1e2bf9f089fd7637009ebaad589 (diff) |
Patched in Tegra support.
Diffstat (limited to 'Documentation/devicetree/bindings/net/can/fsl-flexcan.txt')
-rw-r--r-- | Documentation/devicetree/bindings/net/can/fsl-flexcan.txt | 80 |
1 files changed, 57 insertions, 23 deletions
diff --git a/Documentation/devicetree/bindings/net/can/fsl-flexcan.txt b/Documentation/devicetree/bindings/net/can/fsl-flexcan.txt index 8ff324eaa88..1a729f08986 100644 --- a/Documentation/devicetree/bindings/net/can/fsl-flexcan.txt +++ b/Documentation/devicetree/bindings/net/can/fsl-flexcan.txt | |||
@@ -1,27 +1,61 @@ | |||
1 | Flexcan CAN controller on Freescale's ARM and PowerPC system-on-a-chip (SOC). | 1 | CAN Device Tree Bindings |
2 | 2 | ------------------------ | |
3 | Required properties: | 3 | 2011 Freescale Semiconductor, Inc. |
4 | 4 | ||
5 | - compatible : Should be "fsl,<processor>-flexcan" | 5 | fsl,flexcan-v1.0 nodes |
6 | 6 | ----------------------- | |
7 | An implementation should also claim any of the following compatibles | 7 | In addition to the required compatible-, reg- and interrupt-properties, you can |
8 | that it is fully backwards compatible with: | 8 | also specify which clock source shall be used for the controller. |
9 | 9 | ||
10 | - fsl,p1010-flexcan | 10 | CPI Clock- Can Protocol Interface Clock |
11 | 11 | This CLK_SRC bit of CTRL(control register) selects the clock source to | |
12 | - reg : Offset and length of the register set for this device | 12 | the CAN Protocol Interface(CPI) to be either the peripheral clock |
13 | - interrupts : Interrupt tuple for this device | 13 | (driven by the PLL) or the crystal oscillator clock. The selected clock |
14 | 14 | is the one fed to the prescaler to generate the Serial Clock (Sclock). | |
15 | Optional properties: | 15 | The PRESDIV field of CTRL(control register) controls a prescaler that |
16 | 16 | generates the Serial Clock (Sclock), whose period defines the | |
17 | - clock-frequency : The oscillator frequency driving the flexcan device | 17 | time quantum used to compose the CAN waveform. |
18 | 18 | ||
19 | Example: | 19 | Can Engine Clock Source |
20 | 20 | There are two sources for CAN clock | |
21 | can@1c000 { | 21 | - Platform Clock It represents the bus clock |
22 | compatible = "fsl,p1010-flexcan"; | 22 | - Oscillator Clock |
23 | |||
24 | Peripheral Clock (PLL) | ||
25 | -------------- | ||
26 | | | ||
27 | --------- ------------- | ||
28 | | |CPI Clock | Prescaler | Sclock | ||
29 | | |---------------->| (1.. 256) |------------> | ||
30 | --------- ------------- | ||
31 | | | | ||
32 | -------------- ---------------------CLK_SRC | ||
33 | Oscillator Clock | ||
34 | |||
35 | - fsl,flexcan-clock-source : CAN Engine Clock Source.This property selects | ||
36 | the peripheral clock. PLL clock is fed to the | ||
37 | prescaler to generate the Serial Clock (Sclock). | ||
38 | Valid values are "oscillator" and "platform" | ||
39 | "oscillator": CAN engine clock source is oscillator clock. | ||
40 | "platform" The CAN engine clock source is the bus clock | ||
41 | (platform clock). | ||
42 | |||
43 | - fsl,flexcan-clock-divider : for the reference and system clock, an additional | ||
44 | clock divider can be specified. | ||
45 | - clock-frequency: frequency required to calculate the bitrate for FlexCAN. | ||
46 | |||
47 | Note: | ||
48 | - v1.0 of flexcan-v1.0 represent the IP block version for P1010 SOC. | ||
49 | - P1010 does not have oscillator as the Clock Source.So the default | ||
50 | Clock Source is platform clock. | ||
51 | Examples: | ||
52 | |||
53 | can0@1c000 { | ||
54 | compatible = "fsl,flexcan-v1.0"; | ||
23 | reg = <0x1c000 0x1000>; | 55 | reg = <0x1c000 0x1000>; |
24 | interrupts = <48 0x2>; | 56 | interrupts = <48 0x2>; |
25 | interrupt-parent = <&mpic>; | 57 | interrupt-parent = <&mpic>; |
26 | clock-frequency = <200000000>; // filled in by bootloader | 58 | fsl,flexcan-clock-source = "platform"; |
59 | fsl,flexcan-clock-divider = <2>; | ||
60 | clock-frequency = <fixed by u-boot>; | ||
27 | }; | 61 | }; |