Patchwork Added device tree binding for TDM and TDM phy

login
register
mail settings
Submitter Sandeep Singh
Date Jan. 2, 2013, 1:25 p.m.
Message ID <1357133120-2271-1-git-send-email-Sandeep@freescale.com>
Download mbox | patch
Permalink /patch/209042/
State Superseded
Delegated to: Kumar Gala
Headers show

Comments

Sandeep Singh - Jan. 2, 2013, 1:25 p.m.
This controller is available on many Freescale SOCs like MPC8315, P1020, P1010
and P1022

Signed-off-by: Sandeep Singh <Sandeep@freescale.com>
Signed-off-by: Poonam Aggrwal <poonam.aggrwal@freescale.com>
---
 .../devicetree/bindings/powerpc/fsl/fsl-tdm.txt    |   63 ++++++++++++++++++++
 .../devicetree/bindings/powerpc/fsl/tdm-phy.txt    |   38 ++++++++++++
 2 files changed, 101 insertions(+), 0 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/powerpc/fsl/fsl-tdm.txt
 create mode 100644 Documentation/devicetree/bindings/powerpc/fsl/tdm-phy.txt
Sandeep Singh - Jan. 9, 2013, 7:10 a.m.
A gentle reminder.
Any comments are appreciated.

Regards,
Sandeep

> -----Original Message-----
> From: Singh Sandeep-B37400
> Sent: Wednesday, January 02, 2013 6:55 PM
> To: devicetree-discuss@lists.ozlabs.org; linuxppc-dev@ozlabs.org
> Cc: Singh Sandeep-B37400; Aggrwal Poonam-B10812
> Subject: [PATCH] Added device tree binding for TDM and TDM phy
> 
> This controller is available on many Freescale SOCs like MPC8315, P1020,
> P1010 and P1022
> 
> Signed-off-by: Sandeep Singh <Sandeep@freescale.com>
> Signed-off-by: Poonam Aggrwal <poonam.aggrwal@freescale.com>
> ---
>  .../devicetree/bindings/powerpc/fsl/fsl-tdm.txt    |   63
> ++++++++++++++++++++
>  .../devicetree/bindings/powerpc/fsl/tdm-phy.txt    |   38 ++++++++++++
>  2 files changed, 101 insertions(+), 0 deletions(-)  create mode 100644
> Documentation/devicetree/bindings/powerpc/fsl/fsl-tdm.txt
>  create mode 100644 Documentation/devicetree/bindings/powerpc/fsl/tdm-
> phy.txt
> 
> diff --git a/Documentation/devicetree/bindings/powerpc/fsl/fsl-tdm.txt
> b/Documentation/devicetree/bindings/powerpc/fsl/fsl-tdm.txt
> new file mode 100644
> index 0000000..ceb2ef1
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/powerpc/fsl/fsl-tdm.txt
> @@ -0,0 +1,63 @@
> +TDM Device Tree Binding
> +
> +NOTE: The bindings described in this document are preliminary and
> +subject to change.
> +
> +TDM (Time Division Multiplexing)
> +
> +Description:
> +
> +The TDM is full duplex serial port designed to allow various devices
> +including digital signal processors (DSPs) to communicate with a
> +variety of serial devices including industry standard framers, codecs,
> other DSPs and microprocessors.
> +
> +The below properties describe the device tree bindings for Freescale
> +TDM controller. This TDM controller is available on various Freescale
> +Processors like MPC8315, P1020, P1022 and P1010.
> +
> +Required properties:
> +
> +- compatible
> +    Value type: <string>
> +    Definition: Should contain "fsl,tdm1.0".
> +
> +- reg
> +    Definition: A standard property. The first reg specifier describes
> the TDM
> +    registers, and the second describes the TDM DMAC registers.
> +
> +- tdm_tx_clk
> +    Value type: <u32 or u64>
> +    Definition: This specifies the value of transmit clock. It should
> not
> +    exceed 50Mhz.
> +
> +- tdm_rx_clk
> +    Value type: <u32 or u64>
> +    Definition: This specifies the value of receive clock. Its value
> could be
> +    zero, in which case tdm will operate in shared mode. Its value
> should not
> +    exceed 50Mhz.
> +
> +- interrupts
> +    Definition: Two interrupt specifiers. The first is TDM error, and
> the
> +    second is TDM DMAC.
> +
> +- phy-handle
> +    Value type: <phandle>
> +    Definition: Phandle of the line controller node or framer node eg.
> SLIC,
> +    E1/T1 etc. (Refer
> +Documentation/devicetree/bindings/powerpc/fsl/tdm-phy.txt)
> +
> +- fsl,max-time-slots
> +    Value type: <u32>
> +    Definition: Maximum number of 8-bit time slots in one TDM frame.
> This is
> +    the maximum number which TDM hardware supports.
> +
> +Example:
> +
> +	tdm@16000 {
> +		compatible = "fsl,tdm1.0";
> +		reg = <0x16000 0x200 0x2c000 0x2000>;
> +		tdm_tx_clk = <2048000>;
> +		tdm_rx_clk = <0>;
> +		interrupts = <16 8 62 8>;
> +		phy-handle = <&tdm-phy>;
> +		fsl,max-time-slots = <128>;
> +	};
> diff --git a/Documentation/devicetree/bindings/powerpc/fsl/tdm-phy.txt
> b/Documentation/devicetree/bindings/powerpc/fsl/tdm-phy.txt
> new file mode 100644
> index 0000000..2563934
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/powerpc/fsl/tdm-phy.txt
> @@ -0,0 +1,38 @@
> +TDM PHY Device Tree Binding
> +
> +NOTE: The bindings described in this document are preliminary and
> +subject to change.
> +
> +Description:
> +TDM PHY is the terminal interface of TDM subsystem. It is typically a
> +line control device like E1/T1 framer or SLIC. A TDM device can have
> +multiple TDM PHYs.
> +
> +Required properties:
> +
> +- compatible
> +    Value type: <string>
> +    Definition: Should contain generic compatibility like "tdm-phy-slic"
> or
> +    "tdm-phy-e1" or "tdm-phy-t1".
> +
> +- max-num-ports
> +    Value type: <u32>
> +    Definition: Defines the maximum number of ports supported by the
> SLIC
> +    device. Only required if the device is SLIC. For E1/T1 devices the
> number
> +    of ports are predefined i.e. (24 in case of T1 and 32 in case of
> E1).
> +
> +Apart from the above, there may be other properties required because of
> +the bus/interface this device is connected on. It could be SPI/local
> bus, etc.
> +
> +Example:
> +
> +	tdm-phy@0 {
> +		compatible = "zarlink,le88266","tdm-phy-slic";
> +		reg = <0>;
> +		max-num-ports = <4>;
> +		spi-max-frequency = <8000000>;
> +	};
> +
> +In the above example properties "reg" and "spi-max-frequency" are SPI
> +specific as the SLIC device is connected on SPI interface. These
> +properties might vary depending on the specific interface the device is
> using.
> --
> 1.7.6.GIT
Scott Wood - Jan. 10, 2013, 12:07 a.m.
On 01/09/2013 01:10:24 AM, Singh Sandeep-B37400 wrote:
> A gentle reminder.
> Any comments are appreciated.
> 
> Regards,
> Sandeep
> 
> > -----Original Message-----
> > From: Singh Sandeep-B37400
> > Sent: Wednesday, January 02, 2013 6:55 PM
> > To: devicetree-discuss@lists.ozlabs.org; linuxppc-dev@ozlabs.org
> > Cc: Singh Sandeep-B37400; Aggrwal Poonam-B10812
> > Subject: [PATCH] Added device tree binding for TDM and TDM phy
> >
> > This controller is available on many Freescale SOCs like MPC8315,  
> P1020,
> > P1010 and P1022
> >
> > Signed-off-by: Sandeep Singh <Sandeep@freescale.com>
> > Signed-off-by: Poonam Aggrwal <poonam.aggrwal@freescale.com>
> > ---
> >  .../devicetree/bindings/powerpc/fsl/fsl-tdm.txt    |   63
> > ++++++++++++++++++++
> >  .../devicetree/bindings/powerpc/fsl/tdm-phy.txt    |   38  
> ++++++++++++
> >  2 files changed, 101 insertions(+), 0 deletions(-)  create mode  
> 100644
> > Documentation/devicetree/bindings/powerpc/fsl/fsl-tdm.txt
> >  create mode 100644  
> Documentation/devicetree/bindings/powerpc/fsl/tdm-
> > phy.txt
> >
> > diff --git  
> a/Documentation/devicetree/bindings/powerpc/fsl/fsl-tdm.txt
> > b/Documentation/devicetree/bindings/powerpc/fsl/fsl-tdm.txt
> > new file mode 100644
> > index 0000000..ceb2ef1
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/powerpc/fsl/fsl-tdm.txt
> > @@ -0,0 +1,63 @@
> > +TDM Device Tree Binding
> > +
> > +NOTE: The bindings described in this document are preliminary and
> > +subject to change.
> > +
> > +TDM (Time Division Multiplexing)
> > +
> > +Description:
> > +
> > +The TDM is full duplex serial port designed to allow various  
> devices
> > +including digital signal processors (DSPs) to communicate with a
> > +variety of serial devices including industry standard framers,  
> codecs,
> > other DSPs and microprocessors.
> > +
> > +The below properties describe the device tree bindings for  
> Freescale
> > +TDM controller. This TDM controller is available on various  
> Freescale
> > +Processors like MPC8315, P1020, P1022 and P1010.
> > +
> > +Required properties:
> > +
> > +- compatible
> > +    Value type: <string>
> > +    Definition: Should contain "fsl,tdm1.0".
> > +
> > +- reg
> > +    Definition: A standard property. The first reg specifier  
> describes
> > the TDM
> > +    registers, and the second describes the TDM DMAC registers.
> > +
> > +- tdm_tx_clk
> > +    Value type: <u32 or u64>
> > +    Definition: This specifies the value of transmit clock. It  
> should
> > not
> > +    exceed 50Mhz.
> > +
> > +- tdm_rx_clk
> > +    Value type: <u32 or u64>
> > +    Definition: This specifies the value of receive clock. Its  
> value
> > could be
> > +    zero, in which case tdm will operate in shared mode. Its value
> > should not
> > +    exceed 50Mhz.

Please don't use underscores in property names, and use the vendor  
prefix: "fsl,tdm-tx-clk" and "fsl,tdm-rx-clk".

> > diff --git  
> a/Documentation/devicetree/bindings/powerpc/fsl/tdm-phy.txt
> > b/Documentation/devicetree/bindings/powerpc/fsl/tdm-phy.txt
> > new file mode 100644
> > index 0000000..2563934
> > --- /dev/null
> > +++ b/Documentation/devicetree/bindings/powerpc/fsl/tdm-phy.txt
> > @@ -0,0 +1,38 @@
> > +TDM PHY Device Tree Binding
> > +
> > +NOTE: The bindings described in this document are preliminary and
> > +subject to change.
> > +
> > +Description:
> > +TDM PHY is the terminal interface of TDM subsystem. It is  
> typically a
> > +line control device like E1/T1 framer or SLIC. A TDM device can  
> have
> > +multiple TDM PHYs.
> > +
> > +Required properties:
> > +
> > +- compatible
> > +    Value type: <string>
> > +    Definition: Should contain generic compatibility like  
> "tdm-phy-slic"
> > or
> > +    "tdm-phy-e1" or "tdm-phy-t1".

Does this "generic" string (plus the other properties) tell you all you  
need to know about the device?  If there are other possible "generic"  
compatibles, they should be listed or else different people will make  
up different strings for the same thing.

-Scott
Sandeep Singh - Jan. 10, 2013, 9:24 a.m.
> -----Original Message-----
> From: Wood Scott-B07421
> Sent: Thursday, January 10, 2013 5:37 AM
> To: Singh Sandeep-B37400
> Cc: devicetree-discuss@lists.ozlabs.org; linuxppc-dev@ozlabs.org; Aggrwal
> Poonam-B10812
> Subject: Re: [PATCH] Added device tree binding for TDM and TDM phy
> 
> On 01/09/2013 01:10:24 AM, Singh Sandeep-B37400 wrote:
> > A gentle reminder.
> > Any comments are appreciated.
> >
> > Regards,
> > Sandeep
> >
> > > -----Original Message-----
> > > From: Singh Sandeep-B37400
> > > Sent: Wednesday, January 02, 2013 6:55 PM
> > > To: devicetree-discuss@lists.ozlabs.org; linuxppc-dev@ozlabs.org
> > > Cc: Singh Sandeep-B37400; Aggrwal Poonam-B10812
> > > Subject: [PATCH] Added device tree binding for TDM and TDM phy
> > >
> > > This controller is available on many Freescale SOCs like MPC8315,
> > P1020,
> > > P1010 and P1022
> > >
> > > Signed-off-by: Sandeep Singh <Sandeep@freescale.com>
> > > Signed-off-by: Poonam Aggrwal <poonam.aggrwal@freescale.com>
> > > ---
> > >  .../devicetree/bindings/powerpc/fsl/fsl-tdm.txt    |   63
> > > ++++++++++++++++++++
> > >  .../devicetree/bindings/powerpc/fsl/tdm-phy.txt    |   38
> > ++++++++++++
> > >  2 files changed, 101 insertions(+), 0 deletions(-)  create mode
> > 100644
> > > Documentation/devicetree/bindings/powerpc/fsl/fsl-tdm.txt
> > >  create mode 100644
> > Documentation/devicetree/bindings/powerpc/fsl/tdm-
> > > phy.txt
> > >
> > > diff --git
> > a/Documentation/devicetree/bindings/powerpc/fsl/fsl-tdm.txt
> > > b/Documentation/devicetree/bindings/powerpc/fsl/fsl-tdm.txt
> > > new file mode 100644
> > > index 0000000..ceb2ef1
> > > --- /dev/null
> > > +++ b/Documentation/devicetree/bindings/powerpc/fsl/fsl-tdm.txt
> > > @@ -0,0 +1,63 @@
> > > +TDM Device Tree Binding
> > > +
> > > +NOTE: The bindings described in this document are preliminary and
> > > +subject to change.
> > > +
> > > +TDM (Time Division Multiplexing)
> > > +
> > > +Description:
> > > +
> > > +The TDM is full duplex serial port designed to allow various
> > devices
> > > +including digital signal processors (DSPs) to communicate with a
> > > +variety of serial devices including industry standard framers,
> > codecs,
> > > other DSPs and microprocessors.
> > > +
> > > +The below properties describe the device tree bindings for
> > Freescale
> > > +TDM controller. This TDM controller is available on various
> > Freescale
> > > +Processors like MPC8315, P1020, P1022 and P1010.
> > > +
> > > +Required properties:
> > > +
> > > +- compatible
> > > +    Value type: <string>
> > > +    Definition: Should contain "fsl,tdm1.0".
> > > +
> > > +- reg
> > > +    Definition: A standard property. The first reg specifier
> > describes
> > > the TDM
> > > +    registers, and the second describes the TDM DMAC registers.
> > > +
> > > +- tdm_tx_clk
> > > +    Value type: <u32 or u64>
> > > +    Definition: This specifies the value of transmit clock. It
> > should
> > > not
> > > +    exceed 50Mhz.
> > > +
> > > +- tdm_rx_clk
> > > +    Value type: <u32 or u64>
> > > +    Definition: This specifies the value of receive clock. Its
> > value
> > > could be
> > > +    zero, in which case tdm will operate in shared mode. Its value
> > > should not
> > > +    exceed 50Mhz.
> 
> Please don't use underscores in property names, and use the vendor
> prefix: "fsl,tdm-tx-clk" and "fsl,tdm-rx-clk".

Ok.

> 
> > > diff --git
> > a/Documentation/devicetree/bindings/powerpc/fsl/tdm-phy.txt
> > > b/Documentation/devicetree/bindings/powerpc/fsl/tdm-phy.txt
> > > new file mode 100644
> > > index 0000000..2563934
> > > --- /dev/null
> > > +++ b/Documentation/devicetree/bindings/powerpc/fsl/tdm-phy.txt
> > > @@ -0,0 +1,38 @@
> > > +TDM PHY Device Tree Binding
> > > +
> > > +NOTE: The bindings described in this document are preliminary and
> > > +subject to change.
> > > +
> > > +Description:
> > > +TDM PHY is the terminal interface of TDM subsystem. It is
> > typically a
> > > +line control device like E1/T1 framer or SLIC. A TDM device can
> > have
> > > +multiple TDM PHYs.
> > > +
> > > +Required properties:
> > > +
> > > +- compatible
> > > +    Value type: <string>
> > > +    Definition: Should contain generic compatibility like
> > "tdm-phy-slic"
> > > or
> > > +    "tdm-phy-e1" or "tdm-phy-t1".
> 
> Does this "generic" string (plus the other properties) tell you all you
> need to know about the device?  If there are other possible "generic"
> compatibles, they should be listed or else different people will make up
> different strings for the same thing.

This property will describe the type of device, and will help TDM framework
to know if it is E1/T1/SLIC device. Further details can be extracted from other
compatible strings.
There are only three generic compatibles field types, which are already mentioned
in definition. Do I need to make this thing more clear.
> 
> -Scott
Scott Wood - Jan. 10, 2013, 7:48 p.m.
On 01/10/2013 03:24:21 AM, Singh Sandeep-B37400 wrote:
> > > > +- compatible
> > > > +    Value type: <string>
> > > > +    Definition: Should contain generic compatibility like
> > > "tdm-phy-slic"
> > > > or
> > > > +    "tdm-phy-e1" or "tdm-phy-t1".
> >
> > Does this "generic" string (plus the other properties) tell you all  
> you
> > need to know about the device?  If there are other possible  
> "generic"
> > compatibles, they should be listed or else different people will  
> make up
> > different strings for the same thing.
> 
> This property will describe the type of device, and will help TDM  
> framework
> to know if it is E1/T1/SLIC device. Further details can be extracted  
> from other
> compatible strings.
> There are only three generic compatibles field types, which are  
> already mentioned
> in definition. Do I need to make this thing more clear.

The word "like" suggests that there are other possibilites.  It would  
be clearer as:

Definition: One of "tdm-phy-slic", "tdm-phy-e1", or "tdm-phy-t1".

-Scott
Sandeep Singh - Jan. 11, 2013, 6:01 a.m.
> -----Original Message-----
> From: Wood Scott-B07421
> Sent: Friday, January 11, 2013 1:19 AM
> To: Singh Sandeep-B37400
> Cc: Wood Scott-B07421; devicetree-discuss@lists.ozlabs.org; linuxppc-
> dev@ozlabs.org; Aggrwal Poonam-B10812
> Subject: Re: [PATCH] Added device tree binding for TDM and TDM phy
> 
> On 01/10/2013 03:24:21 AM, Singh Sandeep-B37400 wrote:
> > > > > +- compatible
> > > > > +    Value type: <string>
> > > > > +    Definition: Should contain generic compatibility like
> > > > "tdm-phy-slic"
> > > > > or
> > > > > +    "tdm-phy-e1" or "tdm-phy-t1".
> > >
> > > Does this "generic" string (plus the other properties) tell you all
> > you
> > > need to know about the device?  If there are other possible
> > "generic"
> > > compatibles, they should be listed or else different people will
> > make up
> > > different strings for the same thing.
> >
> > This property will describe the type of device, and will help TDM
> > framework to know if it is E1/T1/SLIC device. Further details can be
> > extracted from other compatible strings.
> > There are only three generic compatibles field types, which are
> > already mentioned in definition. Do I need to make this thing more
> > clear.
> 
> The word "like" suggests that there are other possibilites.  It would be
> clearer as:
> 
> Definition: One of "tdm-phy-slic", "tdm-phy-e1", or "tdm-phy-t1".
> 
> -Scott
Ok, thanks for your comments.

Patch

diff --git a/Documentation/devicetree/bindings/powerpc/fsl/fsl-tdm.txt b/Documentation/devicetree/bindings/powerpc/fsl/fsl-tdm.txt
new file mode 100644
index 0000000..ceb2ef1
--- /dev/null
+++ b/Documentation/devicetree/bindings/powerpc/fsl/fsl-tdm.txt
@@ -0,0 +1,63 @@ 
+TDM Device Tree Binding
+
+NOTE: The bindings described in this document are preliminary
+and subject to change.
+
+TDM (Time Division Multiplexing)
+
+Description:
+
+The TDM is full duplex serial port designed to allow various devices including
+digital signal processors (DSPs) to communicate with a variety of serial devices
+including industry standard framers, codecs, other DSPs and microprocessors.
+
+The below properties describe the device tree bindings for Freescale TDM
+controller. This TDM controller is available on various Freescale Processors
+like MPC8315, P1020, P1022 and P1010.
+
+Required properties:
+
+- compatible
+    Value type: <string>
+    Definition: Should contain "fsl,tdm1.0".
+
+- reg
+    Definition: A standard property. The first reg specifier describes the TDM
+    registers, and the second describes the TDM DMAC registers.
+
+- tdm_tx_clk
+    Value type: <u32 or u64>
+    Definition: This specifies the value of transmit clock. It should not
+    exceed 50Mhz.
+
+- tdm_rx_clk
+    Value type: <u32 or u64>
+    Definition: This specifies the value of receive clock. Its value could be
+    zero, in which case tdm will operate in shared mode. Its value should not
+    exceed 50Mhz.
+
+- interrupts
+    Definition: Two interrupt specifiers. The first is TDM error, and the
+    second is TDM DMAC.
+
+- phy-handle
+    Value type: <phandle>
+    Definition: Phandle of the line controller node or framer node eg. SLIC,
+    E1/T1 etc. (Refer Documentation/devicetree/bindings/powerpc/fsl/tdm-phy.txt)
+
+- fsl,max-time-slots
+    Value type: <u32>
+    Definition: Maximum number of 8-bit time slots in one TDM frame. This is
+    the maximum number which TDM hardware supports.
+
+Example:
+
+	tdm@16000 {
+		compatible = "fsl,tdm1.0";
+		reg = <0x16000 0x200 0x2c000 0x2000>;
+		tdm_tx_clk = <2048000>;
+		tdm_rx_clk = <0>;
+		interrupts = <16 8 62 8>;
+		phy-handle = <&tdm-phy>;
+		fsl,max-time-slots = <128>;
+	};
diff --git a/Documentation/devicetree/bindings/powerpc/fsl/tdm-phy.txt b/Documentation/devicetree/bindings/powerpc/fsl/tdm-phy.txt
new file mode 100644
index 0000000..2563934
--- /dev/null
+++ b/Documentation/devicetree/bindings/powerpc/fsl/tdm-phy.txt
@@ -0,0 +1,38 @@ 
+TDM PHY Device Tree Binding
+
+NOTE: The bindings described in this document are preliminary
+and subject to change.
+
+Description:
+TDM PHY is the terminal interface of TDM subsystem. It is typically a line
+control device like E1/T1 framer or SLIC. A TDM device can have multiple TDM
+PHYs.
+
+Required properties:
+
+- compatible
+    Value type: <string>
+    Definition: Should contain generic compatibility like "tdm-phy-slic" or
+    "tdm-phy-e1" or "tdm-phy-t1".
+
+- max-num-ports
+    Value type: <u32>
+    Definition: Defines the maximum number of ports supported by the SLIC
+    device. Only required if the device is SLIC. For E1/T1 devices the number
+    of ports are predefined i.e. (24 in case of T1 and 32 in case of E1).
+
+Apart from the above, there may be other properties required because of the
+bus/interface this device is connected on. It could be SPI/local bus, etc.
+
+Example:
+
+	tdm-phy@0 {
+		compatible = "zarlink,le88266","tdm-phy-slic";
+		reg = <0>;
+		max-num-ports = <4>;
+		spi-max-frequency = <8000000>;
+	};
+
+In the above example properties "reg" and "spi-max-frequency" are SPI specific
+as the SLIC device is connected on SPI interface. These properties might vary
+depending on the specific interface the device is using.