Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

flexcan: Fix up fsl-flexcan device tree binding.

This patch cleans up the documentation of the device-tree binding for
the Flexcan devices on Freescale's PowerPC and ARM cores. Extra
properties are not used by the driver so we are removing them.

Signed-off-by: Robin Holt <holt@sgi.com>
Acked-by: Marc Kleine-Budde <mkl@pengutronix.de>,
Acked-by: Wolfgang Grandegger <wg@grandegger.com>,
Cc: U Bhaskar-B22300 <B22300@freescale.com>
Cc: Scott Wood <scottwood@freescale.com>
Cc: Grant Likely <grant.likely@secretlab.ca>
Cc: Kumar Gala <galak@kernel.crashing.org>
Cc: socketcan-core@lists.berlios.de,
Cc: netdev@vger.kernel.org,
Cc: PPC list <linuxppc-dev@lists.ozlabs.org>
Cc: devicetree-discuss@lists.ozlabs.org
Signed-off-by: David S. Miller <davem@davemloft.net>

authored by

holt@sgi.com and committed by
David S. Miller
243abbf2 61e271ee

+17 -64
+11 -50
Documentation/devicetree/bindings/net/can/fsl-flexcan.txt
··· 1 - CAN Device Tree Bindings 2 - ------------------------ 3 - 2011 Freescale Semiconductor, Inc. 1 + Flexcan CAN contoller on Freescale's ARM and PowerPC system-on-a-chip (SOC). 4 2 5 - fsl,flexcan-v1.0 nodes 6 - ----------------------- 7 - In addition to the required compatible-, reg- and interrupt-properties, you can 8 - also specify which clock source shall be used for the controller. 3 + Required properties: 9 4 10 - CPI Clock- Can Protocol Interface Clock 11 - This CLK_SRC bit of CTRL(control register) selects the clock source to 12 - the CAN Protocol Interface(CPI) to be either the peripheral clock 13 - (driven by the PLL) or the crystal oscillator clock. The selected clock 14 - is the one fed to the prescaler to generate the Serial Clock (Sclock). 15 - The PRESDIV field of CTRL(control register) controls a prescaler that 16 - generates the Serial Clock (Sclock), whose period defines the 17 - time quantum used to compose the CAN waveform. 5 + - compatible : Should be "fsl,<processor>-flexcan" 18 6 19 - Can Engine Clock Source 20 - There are two sources for CAN clock 21 - - Platform Clock It represents the bus clock 22 - - Oscillator Clock 7 + An implementation should also claim any of the following compatibles 8 + that it is fully backwards compatible with: 23 9 24 - Peripheral Clock (PLL) 25 - -------------- 26 - | 27 - --------- ------------- 28 - | |CPI Clock | Prescaler | Sclock 29 - | |---------------->| (1.. 256) |------------> 30 - --------- ------------- 31 - | | 32 - -------------- ---------------------CLK_SRC 33 - Oscillator Clock 10 + - fsl,p1010-flexcan 34 11 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). 12 + - reg : Offset and length of the register set for this device 13 + - interrupts : Interrupt tuple for this device 42 14 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. 15 + Example: 46 16 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"; 17 + can@1c000 { 18 + compatible = "fsl,p1010-flexcan"; 55 19 reg = <0x1c000 0x1000>; 56 20 interrupts = <48 0x2>; 57 21 interrupt-parent = <&mpic>; 58 - fsl,flexcan-clock-source = "platform"; 59 - fsl,flexcan-clock-divider = <2>; 60 - clock-frequency = <fixed by u-boot>; 61 22 };
+2 -8
arch/powerpc/boot/dts/p1010rdb.dts
··· 23 23 ethernet2 = &enet2; 24 24 pci0 = &pci0; 25 25 pci1 = &pci1; 26 + can0 = &can0; 27 + can1 = &can1; 26 28 }; 27 29 28 30 memory { ··· 169 167 label = "SPI Flash JFFS2 RFS"; 170 168 }; 171 169 }; 172 - }; 173 - 174 - can0@1c000 { 175 - fsl,flexcan-clock-source = "platform"; 176 - }; 177 - 178 - can1@1d000 { 179 - fsl,flexcan-clock-source = "platform"; 180 170 }; 181 171 182 172 usb@22000 {
+4 -6
arch/powerpc/boot/dts/p1010si.dtsi
··· 140 140 interrupt-parent = <&mpic>; 141 141 }; 142 142 143 - can0@1c000 { 144 - compatible = "fsl,flexcan-v1.0"; 143 + can0: can@1c000 { 144 + compatible = "fsl,p1010-flexcan"; 145 145 reg = <0x1c000 0x1000>; 146 146 interrupts = <48 0x2>; 147 147 interrupt-parent = <&mpic>; 148 - fsl,flexcan-clock-divider = <2>; 149 148 }; 150 149 151 - can1@1d000 { 152 - compatible = "fsl,flexcan-v1.0"; 150 + can1: can@1d000 { 151 + compatible = "fsl,p1010-flexcan"; 153 152 reg = <0x1d000 0x1000>; 154 153 interrupts = <61 0x2>; 155 154 interrupt-parent = <&mpic>; 156 - fsl,flexcan-clock-divider = <2>; 157 155 }; 158 156 159 157 L2: l2-cache-controller@20000 {