Hi Robin,

On 08/10/2011 05:06 AM, Robin Holt wrote:
> In working with the socketcan developers, we have come to the conclusion
> the Documentation...fsl-flexcan.txt device tree documentation needs to
> be cleaned up.  The driver does not depend upon any properties other

Your first sentence could be misleading. Please just describe what the
patch does and why, something like:

"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 needed as the frequency of the source clock is
 fixed..." and so on.

> than the required properties so we are removing the file.  Additionally,
> the p1010*dts* files are not following the standard for node naming in
> that they have a trailing -v1.0.

> Signed-off-by: Robin Holt <h...@sgi.com>
> To: Marc Kleine-Budde <m...@pengutronix.de>,
> To: Wolfgang Grandegger <w...@grandegger.com>,
> To: U Bhaskar-B22300 <b22...@freescale.com>
> To: Scott Wood <scottw...@freescale.com>
> Cc: socketcan-c...@lists.berlios.de,
> Cc: net...@vger.kernel.org,
> Cc: PPC list <linuxppc-dev@lists.ozlabs.org>
> Cc: Kumar Gala <ga...@kernel.crashing.org>
> ---
>  .../devicetree/bindings/net/can/fsl-flexcan.txt    |   61 
> --------------------
>  arch/powerpc/boot/dts/p1010rdb.dts                 |    8 ---
>  arch/powerpc/boot/dts/p1010si.dtsi                 |    8 +-
>  3 files changed, 4 insertions(+), 73 deletions(-)
>  delete mode 100644 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
> deleted file mode 100644
> index 1a729f0..0000000
> --- a/Documentation/devicetree/bindings/net/can/fsl-flexcan.txt
> +++ /dev/null
> @@ -1,61 +0,0 @@
> -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-divqider = <2>;
> -             clock-frequency = <fixed by u-boot>;
> -     };

Do we really want to drop the documentation for that binding. I think
something like the following text would be still useful:

------------------------
Flexcan CAN contoller on Freescale's ARM and PowerPC processors

Required properties:

- compatible : Should be "fsl,flexcan" and optionally
               "fsl,flexcan-<processor>"
- reg : Offset and length of the register set for this device
- interrupts : Interrupt tuple for this device

Example:

  can@1c000 {
          compatible = "fsl,p1010-flexcan", "fsl,flexcan";
          reg = <0x1c000 0x1000>;
          interrupts = <48 0x2>;
          interrupt-parent = <&mpic>;
  };
-------------------------

What do you think?

> diff --git a/arch/powerpc/boot/dts/p1010rdb.dts 
> b/arch/powerpc/boot/dts/p1010rdb.dts
> index 6b33b73..d6a0bb2 100644
> --- a/arch/powerpc/boot/dts/p1010rdb.dts
> +++ b/arch/powerpc/boot/dts/p1010rdb.dts
> @@ -169,14 +169,6 @@
>                       };
>               };
>  
> -             can0@1c000 {
> -                     fsl,flexcan-clock-source = "platform";
> -             };
> -
> -             can1@1d000 {
> -                     fsl,flexcan-clock-source = "platform";
> -             };
> -
>               usb@22000 {
>                       phy_type = "utmi";
>               };
> diff --git a/arch/powerpc/boot/dts/p1010si.dtsi 
> b/arch/powerpc/boot/dts/p1010si.dtsi
> index 7f51104..20c396d 100644
> --- a/arch/powerpc/boot/dts/p1010si.dtsi
> +++ b/arch/powerpc/boot/dts/p1010si.dtsi
> @@ -141,19 +141,19 @@
>               };
>  
>               can0@1c000 {
> -                     compatible = "fsl,flexcan-v1.0";
> +                     compatible = "fsl,p1010-flexcan",
> +                                     "fsl,flexcan";

Does fit on one line.

>                       reg = <0x1c000 0x1000>;
>                       interrupts = <48 0x2>;
>                       interrupt-parent = <&mpic>;
> -                     fsl,flexcan-clock-divider = <2>;
>               };
>  
>               can1@1d000 {
> -                     compatible = "fsl,flexcan-v1.0";
> +                     compatible = "fsl,p1010-flexcan",
> +                                     "fsl,flexcan";

Ditto

>                       reg = <0x1d000 0x1000>;
>                       interrupts = <61 0x2>;
>                       interrupt-parent = <&mpic>;
> -                     fsl,flexcan-clock-divider = <2>;
>               };
>  
>               L2: l2-cache-controller@20000 {

Please also correct the node names (not using the number suffix).

Wolfgang.
_______________________________________________
Linuxppc-dev mailing list
Linuxppc-dev@lists.ozlabs.org
https://lists.ozlabs.org/listinfo/linuxppc-dev

Reply via email to