[v2,1/2] dt-bindings: ufs: Add UFS platform driver for Cadence UFS

Message ID B652B768-D5BC-460F-B0A4-64A2A76064CC@cadence.com
State Changes Requested
Headers show
Series
  • scsi: ufs: Add UFS platform driver for Cadence UFS
Related show

Commit Message

Janek Kotas July 12, 2018, 11:58 a.m.
This patch adds a device tree platform
driver description for Cadence UFS Controller.

Signed-off-by: Jan Kotas <jank@cadence.com>
---
 .../devicetree/bindings/ufs/cdns,ufshc.txt         | 31 ++++++++++++++++++++++
 1 file changed, 31 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/ufs/cdns,ufshc.txt

Comments

Rob Herring July 16, 2018, 4:11 p.m. | #1
On Thu, Jul 12, 2018 at 11:58:04AM +0000, Janek Kotas wrote:
> This patch adds a device tree platform
> driver description for Cadence UFS Controller.

Bindings are not platform drivers...

> 
> Signed-off-by: Jan Kotas <jank@cadence.com>
> ---
>  .../devicetree/bindings/ufs/cdns,ufshc.txt         | 31 ++++++++++++++++++++++
>  1 file changed, 31 insertions(+)
>  create mode 100644 Documentation/devicetree/bindings/ufs/cdns,ufshc.txt
> 
> diff --git a/Documentation/devicetree/bindings/ufs/cdns,ufshc.txt b/Documentation/devicetree/bindings/ufs/cdns,ufshc.txt
> new file mode 100644
> index 0000000..cb6d62a
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/ufs/cdns,ufshc.txt
> @@ -0,0 +1,31 @@
> +* Cadence Universal Flash Storage (UFS) Controller
> +
> +UFS nodes are defined to describe on-chip UFS host controllers.
> +Each UFS controller instance should have its own node.
> +
> +Required properties:
> +- compatible	: compatible list, contains the following controller:
> +			"cdns,ufshc"
> +		  complemented with the JEDEC version:
> +			"jedec,ufs-2.0"
> +
> +- reg		: address and length of the UFS register set
> +- interrupts	: one interrupt mapping
> +- clocks	: List of phandle and clock specifier pairs.
> +- clock-names	: List of clock input name strings sorted in the same
> +		  order as the clocks property. "core" is mandatory.

And phy?

> +- freq-table-hz	: Array of <min max> operating frequencies stored in the same
> +		  order as the clocks property. If this property is not
> +		  defined or a value in the array is "0" then it is assumed
> +		  that the frequency is set by the parent clock or a
> +		  fixed rate clock source.

Don't define again here. Just refer to the common definition.

> +
> +Example:
> +	ufs@fd030000 {
> +		compatible = "cdns,ufshc", "jedec,ufs-2.0";
> +		reg = <0xfd030000 0x10000>;
> +		interrupts = <0 1 IRQ_TYPE_LEVEL_HIGH>;
> +		freq-table-hz = <0 0>, <0 0>;
> +		clocks = <&ufs_core_clk>, <&ufs_phy_clk>;
> +		clock-names = "core_clk", "phy_clk";

Doesn't match the doc.

> +	};
> -- 
> 1.9.0
> 
> --
> To unsubscribe from this list: send the line "unsubscribe devicetree" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Janek Kotas July 25, 2018, 1:47 p.m. | #2
Thank you a lot for your comments,
I will fix these in the next version of the patch.

Jan

On 16 Jul 2018, at 18:11, Rob Herring <robh@kernel.org<mailto:robh@kernel.org>> wrote:


On Thu, Jul 12, 2018 at 11:58:04AM +0000, Janek Kotas wrote:
This patch adds a device tree platform
driver description for Cadence UFS Controller.

Bindings are not platform drivers…

OK, I will fix it.


Signed-off-by: Jan Kotas <jank@cadence.com<mailto:jank@cadence.com>>
---
.../devicetree/bindings/ufs/cdns,ufshc.txt         | 31 ++++++++++++++++++++++
1 file changed, 31 insertions(+)
create mode 100644 Documentation/devicetree/bindings/ufs/cdns,ufshc.txt

diff --git a/Documentation/devicetree/bindings/ufs/cdns,ufshc.txt b/Documentation/devicetree/bindings/ufs/cdns,ufshc.txt
new file mode 100644
index 0000000..cb6d62a
--- /dev/null
+++ b/Documentation/devicetree/bindings/ufs/cdns,ufshc.txt
@@ -0,0 +1,31 @@
+* Cadence Universal Flash Storage (UFS) Controller
+
+UFS nodes are defined to describe on-chip UFS host controllers.
+Each UFS controller instance should have its own node.
+
+Required properties:
+- compatible : compatible list, contains the following controller:
+ "cdns,ufshc"
+   complemented with the JEDEC version:
+ "jedec,ufs-2.0"
+
+- reg : address and length of the UFS register set
+- interrupts : one interrupt mapping
+- clocks : List of phandle and clock specifier pairs.
+- clock-names : List of clock input name strings sorted in the same
+   order as the clocks property. "core" is mandatory.

And phy?

It depends on a type of the PHY. It’s not strictly needed by the driver.
In simulation and emulation, it’s possible to run a system without proper M-PHY.
I will clarify this.

+- freq-table-hz : Array of <min max> operating frequencies stored in the same
+   order as the clocks property. If this property is not
+   defined or a value in the array is "0" then it is assumed
+   that the frequency is set by the parent clock or a
+   fixed rate clock source.

Don't define again here. Just refer to the common definition.

OK, I will change that.

+
+Example:
+ ufs@fd030000 {
+ compatible = "cdns,ufshc", "jedec,ufs-2.0";
+ reg = <0xfd030000 0x10000>;
+ interrupts = <0 1 IRQ_TYPE_LEVEL_HIGH>;
+ freq-table-hz = <0 0>, <0 0>;
+ clocks = <&ufs_core_clk>, <&ufs_phy_clk>;
+ clock-names = "core_clk", "phy_clk";

Doesn’t match the doc.

Thank you for spotting that, I will update the description.

+ };
--
1.9.0

--
To unsubscribe from this list: send the line "unsubscribe devicetree" in
the body of a message to majordomo@vger.kernel.org<mailto:majordomo@vger.kernel.org>
More majordomo info at  https://urldefense.proofpoint.com/v2/url?u=http-3A__vger.kernel.org_majordomo-2Dinfo.html&d=DwIBAg&c=aUq983L2pue2FqKFoP6PGHMJQyoJ7kl3s3GZ-_haXqY&r=g7GAQENVXx_RQdyXHInPMg&m=R_EUv1Z1yM7_QDIZjokueFORr12rFyao5RlUAfCrzLw&s=Yzxo2-ulc1GSkM0hRWzAMsdAh7Ad_3ubuw-gPgeeAhw&e=
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
<div class="">
<div dir="auto" style="color: rgb(0, 0, 0); letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
Thank you a lot for your comments,&nbsp;</div>
<div dir="auto" style="color: rgb(0, 0, 0); letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
I will fix these in the next version of the patch.</div>
<div dir="auto" style="color: rgb(0, 0, 0); letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
<br class="">
</div>
<div dir="auto" style="color: rgb(0, 0, 0); letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">
Jan</div>
</div>
<div><br class="">
<blockquote type="cite" class="">
<div class="">On 16 Jul 2018, at 18:11, Rob Herring &lt;<a href="mailto:robh@kernel.org" class="">robh@kernel.org</a>&gt; wrote:</div>
<div class=""><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class="">
<br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class="">
<span style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;" class="">On
 Thu, Jul 12, 2018 at 11:58:04AM &#43;0000, Janek Kotas wrote:</span><br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class="">
<blockquote type="cite" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none;" class="">
This patch adds a device tree platform<br class="">
driver description for Cadence UFS Controller.<br class="">
</blockquote>
<br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class="">
<span style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;" class="">Bindings
 are not platform drivers…</span></div>
</blockquote>
<div><br class="">
</div>
<div>OK, I will fix it.</div>
<br class="">
<blockquote type="cite" class="">
<div class="">
<blockquote type="cite" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none;" class="">
<br class="">
Signed-off-by: Jan Kotas &lt;<a href="mailto:jank@cadence.com" class="">jank@cadence.com</a>&gt;<br class="">
---<br class="">
.../devicetree/bindings/ufs/cdns,ufshc.txt &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| 31 &#43;&#43;&#43;&#43;&#43;&#43;&#43;&#43;&#43;&#43;&#43;&#43;&#43;&#43;&#43;&#43;&#43;&#43;&#43;&#43;&#43;&#43;<br class="">
1 file changed, 31 insertions(&#43;)<br class="">
create mode 100644 Documentation/devicetree/bindings/ufs/cdns,ufshc.txt<br class="">
<br class="">
diff --git a/Documentation/devicetree/bindings/ufs/cdns,ufshc.txt b/Documentation/devicetree/bindings/ufs/cdns,ufshc.txt<br class="">
new file mode 100644<br class="">
index 0000000..cb6d62a<br class="">
--- /dev/null<br class="">
&#43;&#43;&#43; b/Documentation/devicetree/bindings/ufs/cdns,ufshc.txt<br class="">
@@ -0,0 &#43;1,31 @@<br class="">
&#43;* Cadence Universal Flash Storage (UFS) Controller<br class="">
&#43;<br class="">
&#43;UFS nodes are defined to describe on-chip UFS host controllers.<br class="">
&#43;Each UFS controller instance should have its own node.<br class="">
&#43;<br class="">
&#43;Required properties:<br class="">
&#43;- compatible<span class="Apple-tab-span" style="white-space: pre;"> </span>: compatible list, contains the following controller:<br class="">
&#43;<span class="Apple-tab-span" style="white-space: pre;"> </span><span class="Apple-tab-span" style="white-space: pre;"></span><span class="Apple-tab-span" style="white-space: pre;"></span>&quot;cdns,ufshc&quot;<br class="">
&#43;<span class="Apple-tab-span" style="white-space: pre;"> </span><span class="Apple-tab-span" style="white-space: pre;"></span><span class="Apple-converted-space">&nbsp;</span>&nbsp;complemented with the JEDEC version:<br class="">
&#43;<span class="Apple-tab-span" style="white-space: pre;"> </span><span class="Apple-tab-span" style="white-space: pre;"></span><span class="Apple-tab-span" style="white-space: pre;"></span>&quot;jedec,ufs-2.0&quot;<br class="">
&#43;<br class="">
&#43;- reg<span class="Apple-tab-span" style="white-space: pre;"> </span><span class="Apple-tab-span" style="white-space: pre;"></span>: address and length of the UFS register set<br class="">
&#43;- interrupts<span class="Apple-tab-span" style="white-space: pre;"> </span>: one interrupt mapping<br class="">
&#43;- clocks<span class="Apple-tab-span" style="white-space: pre;"> </span>: List of phandle and clock specifier pairs.<br class="">
&#43;- clock-names<span class="Apple-tab-span" style="white-space: pre;"> </span>: List of clock input name strings sorted in the same<br class="">
&#43;<span class="Apple-tab-span" style="white-space: pre;"> </span><span class="Apple-tab-span" style="white-space: pre;"></span><span class="Apple-converted-space">&nbsp;</span>&nbsp;order as the clocks property. &quot;core&quot; is mandatory.<br class="">
</blockquote>
<br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class="">
<span style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;" class="">And
 phy?</span></div>
</blockquote>
<div><br class="">
</div>
<div>It depends on a type of the PHY. It’s not strictly needed by the driver.</div>
<div>In simulation and emulation, it’s possible to run a system without proper M-PHY.</div>
<div>I will clarify this.</div>
<br class="">
<blockquote type="cite" class="">
<div class="">
<blockquote type="cite" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none;" class="">
&#43;- freq-table-hz<span class="Apple-tab-span" style="white-space: pre;"> </span>: Array of &lt;min max&gt; operating frequencies stored in the same<br class="">
&#43;<span class="Apple-tab-span" style="white-space: pre;"> </span><span class="Apple-tab-span" style="white-space: pre;"></span><span class="Apple-converted-space">&nbsp;</span>&nbsp;order as the clocks property. If this property is not<br class="">
&#43;<span class="Apple-tab-span" style="white-space: pre;"> </span><span class="Apple-tab-span" style="white-space: pre;"></span><span class="Apple-converted-space">&nbsp;</span>&nbsp;defined or a value in the array is &quot;0&quot; then it is assumed<br class="">
&#43;<span class="Apple-tab-span" style="white-space: pre;"> </span><span class="Apple-tab-span" style="white-space: pre;"></span><span class="Apple-converted-space">&nbsp;</span>&nbsp;that the frequency is set by the parent clock or a<br class="">
&#43;<span class="Apple-tab-span" style="white-space: pre;"> </span><span class="Apple-tab-span" style="white-space: pre;"></span><span class="Apple-converted-space">&nbsp;</span>&nbsp;fixed rate clock source.<br class="">
</blockquote>
<br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class="">
<span style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;" class="">Don't
 define again here. Just refer to the common definition.</span></div>
</blockquote>
<div><br class="">
</div>
<div>OK, I will change that.</div>
<br class="">
<blockquote type="cite" class="">
<div class="">
<blockquote type="cite" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none;" class="">
&#43;<br class="">
&#43;Example:<br class="">
&#43;<span class="Apple-tab-span" style="white-space: pre;"> </span>ufs@fd030000 {<br class="">
&#43;<span class="Apple-tab-span" style="white-space: pre;"> </span><span class="Apple-tab-span" style="white-space: pre;"></span>compatible = &quot;cdns,ufshc&quot;, &quot;jedec,ufs-2.0&quot;;<br class="">
&#43;<span class="Apple-tab-span" style="white-space: pre;"> </span><span class="Apple-tab-span" style="white-space: pre;"></span>reg = &lt;0xfd030000 0x10000&gt;;<br class="">
&#43;<span class="Apple-tab-span" style="white-space: pre;"> </span><span class="Apple-tab-span" style="white-space: pre;"></span>interrupts = &lt;0 1 IRQ_TYPE_LEVEL_HIGH&gt;;<br class="">
&#43;<span class="Apple-tab-span" style="white-space: pre;"> </span><span class="Apple-tab-span" style="white-space: pre;"></span>freq-table-hz = &lt;0 0&gt;, &lt;0 0&gt;;<br class="">
&#43;<span class="Apple-tab-span" style="white-space: pre;"> </span><span class="Apple-tab-span" style="white-space: pre;"></span>clocks = &lt;&amp;ufs_core_clk&gt;, &lt;&amp;ufs_phy_clk&gt;;<br class="">
&#43;<span class="Apple-tab-span" style="white-space: pre;"> </span><span class="Apple-tab-span" style="white-space: pre;"></span>clock-names = &quot;core_clk&quot;, &quot;phy_clk&quot;;<br class="">
</blockquote>
<br style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class="">
<span style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; float: none; display: inline !important;" class="">Doesn’t
 match the doc.</span></div>
</blockquote>
<div><br class="">
</div>
<div>Thank you for spotting that, I will update the description.</div>
<br class="">
<blockquote type="cite" class="">
<div class="">
<blockquote type="cite" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none;" class="">
&#43;<span class="Apple-tab-span" style="white-space: pre;"> </span>};<br class="">
--<span class="Apple-converted-space">&nbsp;</span><br class="">
1.9.0<br class="">
<br class="">
--<br class="">
To unsubscribe from this list: send the line &quot;unsubscribe devicetree&quot; in<br class="">
the body of a message to<span class="Apple-converted-space">&nbsp;</span><a href="mailto:majordomo@vger.kernel.org" class="">majordomo@vger.kernel.org</a><br class="">
More majordomo info at &nbsp;<a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__vger.kernel.org_majordomo-2Dinfo.html&amp;d=DwIBAg&amp;c=aUq983L2pue2FqKFoP6PGHMJQyoJ7kl3s3GZ-_haXqY&amp;r=g7GAQENVXx_RQdyXHInPMg&amp;m=R_EUv1Z1yM7_QDIZjokueFORr12rFyao5RlUAfCrzLw&amp;s=Yzxo2-ulc1GSkM0hRWzAMsdAh7Ad_3ubuw-gPgeeAhw&amp;e=" class="">https://urldefense.proofpoint.com/v2/url?u=http-3A__vger.kernel.org_majordomo-2Dinfo.html&amp;d=DwIBAg&amp;c=aUq983L2pue2FqKFoP6PGHMJQyoJ7kl3s3GZ-_haXqY&amp;r=g7GAQENVXx_RQdyXHInPMg&amp;m=R_EUv1Z1yM7_QDIZjokueFORr12rFyao5RlUAfCrzLw&amp;s=Yzxo2-ulc1GSkM0hRWzAMsdAh7Ad_3ubuw-gPgeeAhw&amp;e=</a></blockquote>
</div>
</blockquote>
</div>
<br class="">
</body>
</html>

Patch

diff --git a/Documentation/devicetree/bindings/ufs/cdns,ufshc.txt b/Documentation/devicetree/bindings/ufs/cdns,ufshc.txt
new file mode 100644
index 0000000..cb6d62a
--- /dev/null
+++ b/Documentation/devicetree/bindings/ufs/cdns,ufshc.txt
@@ -0,0 +1,31 @@ 
+* Cadence Universal Flash Storage (UFS) Controller
+
+UFS nodes are defined to describe on-chip UFS host controllers.
+Each UFS controller instance should have its own node.
+
+Required properties:
+- compatible	: compatible list, contains the following controller:
+			"cdns,ufshc"
+		  complemented with the JEDEC version:
+			"jedec,ufs-2.0"
+
+- reg		: address and length of the UFS register set
+- interrupts	: one interrupt mapping
+- clocks	: List of phandle and clock specifier pairs.
+- clock-names	: List of clock input name strings sorted in the same
+		  order as the clocks property. "core" is mandatory.
+- freq-table-hz	: Array of <min max> operating frequencies stored in the same
+		  order as the clocks property. If this property is not
+		  defined or a value in the array is "0" then it is assumed
+		  that the frequency is set by the parent clock or a
+		  fixed rate clock source.
+
+Example:
+	ufs@fd030000 {
+		compatible = "cdns,ufshc", "jedec,ufs-2.0";
+		reg = <0xfd030000 0x10000>;
+		interrupts = <0 1 IRQ_TYPE_LEVEL_HIGH>;
+		freq-table-hz = <0 0>, <0 0>;
+		clocks = <&ufs_core_clk>, <&ufs_phy_clk>;
+		clock-names = "core_clk", "phy_clk";
+	};