diff mbox

[upstream] powerpc: Adding bindings for flexcan controller

Message ID 1303221511-12903-1-git-send-email-Bhaskar.Upadhaya@freescale.com (mailing list archive)
State Accepted, archived
Delegated to: Kumar Gala
Headers show

Commit Message

Bhaskar Upadhaya April 19, 2011, 1:58 p.m. UTC
From: Bhaskar Upadhaya <bhaskar.upadhaya@freescale.com>

Signed-off-by: Bhaskar Upadhaya <bhaskar.upadhaya@freescale.com>
Acked-By: Scott Wood <scottwood@freescale.com>
---
Based upon git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git (branch -> master)

 .../devicetree/bindings/net/can/fsl-flexcan.txt    |   61 ++++++++++++++++++++
 1 files changed, 61 insertions(+), 0 deletions(-)
 create mode 100755 Documentation/devicetree/bindings/net/can/fsl-flexcan.txt

Comments

Kumar Gala May 19, 2011, 6:06 a.m. UTC | #1
On Apr 19, 2011, at 8:58 AM, Bhaskar Upadhaya wrote:

> From: Bhaskar Upadhaya <bhaskar.upadhaya@freescale.com>
> 
> Signed-off-by: Bhaskar Upadhaya <bhaskar.upadhaya@freescale.com>
> Acked-By: Scott Wood <scottwood@freescale.com>
> ---
> Based upon git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git (branch -> master)
> 
> .../devicetree/bindings/net/can/fsl-flexcan.txt    |   61 ++++++++++++++++++++
> 1 files changed, 61 insertions(+), 0 deletions(-)
> create mode 100755 Documentation/devicetree/bindings/net/can/fsl-flexcan.txt

applied to next

- k
Wolfgang Grandegger June 26, 2011, 7:10 p.m. UTC | #2
On 04/19/2011 03:58 PM, Bhaskar Upadhaya wrote:
> From: Bhaskar Upadhaya <bhaskar.upadhaya@freescale.com>
> 
> Signed-off-by: Bhaskar Upadhaya <bhaskar.upadhaya@freescale.com>
> Acked-By: Scott Wood <scottwood@freescale.com>
> ---
> Based upon git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git (branch -> master)
> 
>  .../devicetree/bindings/net/can/fsl-flexcan.txt    |   61 ++++++++++++++++++++
>  1 files changed, 61 insertions(+), 0 deletions(-)
>  create mode 100755 Documentation/devicetree/bindings/net/can/fsl-flexcan.txt
> 
> diff --git a/Documentation/devicetree/bindings/net/can/fsl-flexcan.txt b/Documentation/devicetree/bindings/net/can/fsl-flexcan.txt
> new file mode 100755
> index 0000000..1a729f0
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/net/can/fsl-flexcan.txt
> @@ -0,0 +1,61 @@
> +CAN Device Tree Bindings
> +------------------------
> +2011 Freescale Semiconductor, Inc.
> +
> +fsl,flexcan-v1.0 nodes
> +-----------------------
> +In addition to the required compatible-, reg- and interrupt-properties, you can
> +also specify which clock source shall be used for the controller.
> +
> +CPI Clock- Can Protocol Interface Clock
> +	This CLK_SRC bit of CTRL(control register) selects the clock source to
> +	the CAN Protocol Interface(CPI) to be either the peripheral clock
> +	(driven by the PLL) or the crystal oscillator clock. The selected clock
> +	is the one fed to the prescaler to generate the Serial Clock (Sclock).
> +	The PRESDIV field of CTRL(control register) controls a prescaler that
> +	generates the Serial Clock (Sclock), whose period defines the
> +	time quantum used to compose the CAN waveform.
> +
> +Can Engine Clock Source
> +	There are two sources for CAN clock
> +	- Platform Clock  It represents the bus clock
> +	- Oscillator Clock
> +
> +	Peripheral Clock (PLL)
> +	--------------
> +		     |
> +		    ---------		      -------------
> +		    |       |CPI Clock	      | Prescaler |       Sclock
> +		    |       |---------------->| (1.. 256) |------------>
> +		    ---------		      -------------
> +                     |  |
> +	--------------  ---------------------CLK_SRC
> +	Oscillator Clock
> +
> +- fsl,flexcan-clock-source : CAN Engine Clock Source.This property selects
> +			     the peripheral clock. PLL clock is fed to the
> +			     prescaler to generate the Serial Clock (Sclock).
> +			     Valid values are "oscillator" and "platform"
> +			     "oscillator": CAN engine clock source is oscillator clock.
> +			     "platform" The CAN engine clock source is the bus clock
> +		             (platform clock).
> +
> +- fsl,flexcan-clock-divider : for the reference and system clock, an additional
> +			      clock divider can be specified.
> +- clock-frequency: frequency required to calculate the bitrate for FlexCAN.
> +
> +Note:
> +	- v1.0 of flexcan-v1.0 represent the IP block version for P1010 SOC.
> +	- P1010 does not have oscillator as the Clock Source.So the default
> +	  Clock Source is platform clock.
> +Examples:
> +
> +	can0@1c000 {
> +		compatible = "fsl,flexcan-v1.0";
> +		reg = <0x1c000 0x1000>;
> +		interrupts = <48 0x2>;
> +		interrupt-parent = <&mpic>;
> +		fsl,flexcan-clock-source = "platform";
> +		fsl,flexcan-clock-divider = <2>;
> +		clock-frequency = <fixed by u-boot>;
> +	};

I just realized that this patch has hit the mainline kernel but I do not
find the implementation for that new binding. Have I missed something?

Wolfgang.
diff mbox

Patch

diff --git a/Documentation/devicetree/bindings/net/can/fsl-flexcan.txt b/Documentation/devicetree/bindings/net/can/fsl-flexcan.txt
new file mode 100755
index 0000000..1a729f0
--- /dev/null
+++ b/Documentation/devicetree/bindings/net/can/fsl-flexcan.txt
@@ -0,0 +1,61 @@ 
+CAN Device Tree Bindings
+------------------------
+2011 Freescale Semiconductor, Inc.
+
+fsl,flexcan-v1.0 nodes
+-----------------------
+In addition to the required compatible-, reg- and interrupt-properties, you can
+also specify which clock source shall be used for the controller.
+
+CPI Clock- Can Protocol Interface Clock
+	This CLK_SRC bit of CTRL(control register) selects the clock source to
+	the CAN Protocol Interface(CPI) to be either the peripheral clock
+	(driven by the PLL) or the crystal oscillator clock. The selected clock
+	is the one fed to the prescaler to generate the Serial Clock (Sclock).
+	The PRESDIV field of CTRL(control register) controls a prescaler that
+	generates the Serial Clock (Sclock), whose period defines the
+	time quantum used to compose the CAN waveform.
+
+Can Engine Clock Source
+	There are two sources for CAN clock
+	- Platform Clock  It represents the bus clock
+	- Oscillator Clock
+
+	Peripheral Clock (PLL)
+	--------------
+		     |
+		    ---------		      -------------
+		    |       |CPI Clock	      | Prescaler |       Sclock
+		    |       |---------------->| (1.. 256) |------------>
+		    ---------		      -------------
+                     |  |
+	--------------  ---------------------CLK_SRC
+	Oscillator Clock
+
+- fsl,flexcan-clock-source : CAN Engine Clock Source.This property selects
+			     the peripheral clock. PLL clock is fed to the
+			     prescaler to generate the Serial Clock (Sclock).
+			     Valid values are "oscillator" and "platform"
+			     "oscillator": CAN engine clock source is oscillator clock.
+			     "platform" The CAN engine clock source is the bus clock
+		             (platform clock).
+
+- fsl,flexcan-clock-divider : for the reference and system clock, an additional
+			      clock divider can be specified.
+- clock-frequency: frequency required to calculate the bitrate for FlexCAN.
+
+Note:
+	- v1.0 of flexcan-v1.0 represent the IP block version for P1010 SOC.
+	- P1010 does not have oscillator as the Clock Source.So the default
+	  Clock Source is platform clock.
+Examples:
+
+	can0@1c000 {
+		compatible = "fsl,flexcan-v1.0";
+		reg = <0x1c000 0x1000>;
+		interrupts = <48 0x2>;
+		interrupt-parent = <&mpic>;
+		fsl,flexcan-clock-source = "platform";
+		fsl,flexcan-clock-divider = <2>;
+		clock-frequency = <fixed by u-boot>;
+	};