Message ID | 20200426173024.63069-9-alim.akhtar@samsung.com (mailing list archive) |
---|---|
State | Not Applicable |
Headers | show |
Series | [v7,01/10] scsi: ufs: add quirk to fix mishandling utrlclr/utmrlclr | expand |
On Sun, Apr 26, 2020 at 11:00:22PM +0530, Alim Akhtar wrote: > This patch adds DT binding for samsung ufs hci > > Signed-off-by: Alim Akhtar <alim.akhtar@samsung.com> > --- > .../bindings/ufs/samsung,exynos-ufs.yaml | 93 +++++++++++++++++++ > 1 file changed, 93 insertions(+) > create mode 100644 Documentation/devicetree/bindings/ufs/samsung,exynos-ufs.yaml > > diff --git a/Documentation/devicetree/bindings/ufs/samsung,exynos-ufs.yaml b/Documentation/devicetree/bindings/ufs/samsung,exynos-ufs.yaml > new file mode 100644 > index 000000000000..954338b7f37d > --- /dev/null > +++ b/Documentation/devicetree/bindings/ufs/samsung,exynos-ufs.yaml > @@ -0,0 +1,93 @@ > +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/ufs/samsung,exynos-ufs.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Samsung SoC series UFS host controller Device Tree Bindings > + > +maintainers: > + - Alim Akhtar <alim.akhtar@samsung.com> > + > +description: | > + Each Samsung UFS host controller instance should have its own node. > + This binding define Samsung specific binding other then what is used > + in the common ufshcd bindings > + [1] Documentation/devicetree/bindings/ufs/ufshcd-pltfrm.txt > + > +properties: > + > + compatible: > + enum: > + - samsung,exynos7-ufs > + > + reg: > + items: > + - description: HCI register > + - description: vendor specific register > + - description: unipro register > + - description: UFS protector register > + > + reg-names: > + items: > + - const: hci > + - const: vs_hci > + - const: unipro > + - const: ufsp > + > + clocks: > + maxItems: 2 > + items: > + - description: ufs link core clock > + - description: unipro main clock > + > + clock-names: > + maxItems: 2 > + items: > + - const: core_clk > + - const: sclk_unipro_main > + > + interrupts: > + items: > + - description: interrupt signal for various ufshc status Just 'maxItems: 1' is fine for single item cases. > + > + phys: > + maxItems: 1 > + description: > + phandle of the ufs phy node Can drop description. > + > + phy-names: > + const: ufs-phy Not much point to a name when only 1 entry. > + > +required: > + - compatible > + - reg > + - interrupts > + - phys > + - phy-names > + - clocks > + - clock-names additionalProperties: false > + > +examples: > + - | > + #include <dt-bindings/interrupt-controller/arm-gic.h> > + #include <dt-bindings/clock/exynos7-clk.h> > + > + ufs: ufs@15570000 { > + compatible = "samsung,exynos7-ufs"; > + reg = <0x15570000 0x100>, > + <0x15570100 0x100>, > + <0x15571000 0x200>, > + <0x15572000 0x300>; > + reg-names = "hci", "vs_hci", "unipro", "ufsp"; > + interrupts = <GIC_SPI 200 IRQ_TYPE_LEVEL_HIGH>; > + clocks = <&clock_fsys1 ACLK_UFS20_LINK>, > + <&clock_fsys1 SCLK_UFSUNIPRO20_USER>; > + clock-names = "core_clk", "sclk_unipro_main"; > + pinctrl-names = "default"; > + pinctrl-0 = <&ufs_rst_n &ufs_refclk_out>; > + pclk-freq-avail-range = <70000000 133000000>; > + phys = <&ufs_phy>; > + phy-names = "ufs-phy"; > + }; > +... > -- > 2.17.1 >
Hi Rob, > -----Original Message----- > From: Rob Herring <robh@kernel.org> > Sent: 05 May 2020 21:29 > To: Alim Akhtar <alim.akhtar@samsung.com> > Cc: devicetree@vger.kernel.org; linux-scsi@vger.kernel.org; krzk@kernel.org; > avri.altman@wdc.com; martin.petersen@oracle.com; > kwmad.kim@samsung.com; stanley.chu@mediatek.com; > cang@codeaurora.org; linux-samsung-soc@vger.kernel.org; linux-arm- > kernel@lists.infradead.org; linux-kernel@vger.kernel.org > Subject: Re: [PATCH v7 08/10] dt-bindings: ufs: Add DT binding documentation > for ufs > > On Sun, Apr 26, 2020 at 11:00:22PM +0530, Alim Akhtar wrote: > > This patch adds DT binding for samsung ufs hci > > > > Signed-off-by: Alim Akhtar <alim.akhtar@samsung.com> > > --- > > .../bindings/ufs/samsung,exynos-ufs.yaml | 93 +++++++++++++++++++ > > 1 file changed, 93 insertions(+) > > create mode 100644 > > Documentation/devicetree/bindings/ufs/samsung,exynos-ufs.yaml > > > > diff --git > > a/Documentation/devicetree/bindings/ufs/samsung,exynos-ufs.yaml > > b/Documentation/devicetree/bindings/ufs/samsung,exynos-ufs.yaml > > new file mode 100644 > > index 000000000000..954338b7f37d > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/ufs/samsung,exynos-ufs.yaml > > @@ -0,0 +1,93 @@ > > +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause %YAML 1.2 > > +--- > > +$id: > > +https://protect2.fireeye.com/url?k=0b9d9296-560b2be1-0b9c19d9-0cc47a3 > > +12ab0- > 58b0bd73926e9ff6&q=1&u=http%3A%2F%2Fdevicetree.org%2Fschemas%2F > > +ufs%2Fsamsung%2Cexynos-ufs.yaml%23 > > +$schema: > > +https://protect2.fireeye.com/url?k=1fa0a694-42361fe3-1fa12ddb-0cc47a3 > > +12ab0-6911bcc836debe4d&q=1&u=http%3A%2F%2Fdevicetree.org%2Fmeta- > schem > > +as%2Fcore.yaml%23 > > + > > +title: Samsung SoC series UFS host controller Device Tree Bindings > > + > > +maintainers: > > + - Alim Akhtar <alim.akhtar@samsung.com> > > + > > +description: | > > + Each Samsung UFS host controller instance should have its own node. > > + This binding define Samsung specific binding other then what is > > +used > > + in the common ufshcd bindings > > + [1] Documentation/devicetree/bindings/ufs/ufshcd-pltfrm.txt > > + > > +properties: > > + > > + compatible: > > + enum: > > + - samsung,exynos7-ufs > > + > > + reg: > > + items: > > + - description: HCI register > > + - description: vendor specific register > > + - description: unipro register > > + - description: UFS protector register > > + > > + reg-names: > > + items: > > + - const: hci > > + - const: vs_hci > > + - const: unipro > > + - const: ufsp > > + > > + clocks: > > + maxItems: 2 > > + items: > > + - description: ufs link core clock > > + - description: unipro main clock > > + > > + clock-names: > > + maxItems: 2 > > + items: > > + - const: core_clk > > + - const: sclk_unipro_main > > + > > + interrupts: > > + items: > > + - description: interrupt signal for various ufshc status > > Just 'maxItems: 1' is fine for single item cases. > Sure will update > > + > > + phys: > > + maxItems: 1 > > + description: > > + phandle of the ufs phy node > > Can drop description. > Ack > > + > > + phy-names: > > + const: ufs-phy > > Not much point to a name when only 1 entry. > You mean drop the phy-names property itself or just const: ufs-phy? And add maxItems: 1 > > + > > +required: > > + - compatible > > + - reg > > + - interrupts > > + - phys > > + - phy-names > > + - clocks > > + - clock-names > > additionalProperties: false > Sure will add > > + > > +examples: > > + - | > > + #include <dt-bindings/interrupt-controller/arm-gic.h> > > + #include <dt-bindings/clock/exynos7-clk.h> > > + > > + ufs: ufs@15570000 { > > + compatible = "samsung,exynos7-ufs"; > > + reg = <0x15570000 0x100>, > > + <0x15570100 0x100>, > > + <0x15571000 0x200>, > > + <0x15572000 0x300>; > > + reg-names = "hci", "vs_hci", "unipro", "ufsp"; > > + interrupts = <GIC_SPI 200 IRQ_TYPE_LEVEL_HIGH>; > > + clocks = <&clock_fsys1 ACLK_UFS20_LINK>, > > + <&clock_fsys1 SCLK_UFSUNIPRO20_USER>; > > + clock-names = "core_clk", "sclk_unipro_main"; > > + pinctrl-names = "default"; > > + pinctrl-0 = <&ufs_rst_n &ufs_refclk_out>; > > + pclk-freq-avail-range = <70000000 133000000>; > > + phys = <&ufs_phy>; > > + phy-names = "ufs-phy"; > > + }; > > +... > > -- > > 2.17.1 > >
diff --git a/Documentation/devicetree/bindings/ufs/samsung,exynos-ufs.yaml b/Documentation/devicetree/bindings/ufs/samsung,exynos-ufs.yaml new file mode 100644 index 000000000000..954338b7f37d --- /dev/null +++ b/Documentation/devicetree/bindings/ufs/samsung,exynos-ufs.yaml @@ -0,0 +1,93 @@ +# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/ufs/samsung,exynos-ufs.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Samsung SoC series UFS host controller Device Tree Bindings + +maintainers: + - Alim Akhtar <alim.akhtar@samsung.com> + +description: | + Each Samsung UFS host controller instance should have its own node. + This binding define Samsung specific binding other then what is used + in the common ufshcd bindings + [1] Documentation/devicetree/bindings/ufs/ufshcd-pltfrm.txt + +properties: + + compatible: + enum: + - samsung,exynos7-ufs + + reg: + items: + - description: HCI register + - description: vendor specific register + - description: unipro register + - description: UFS protector register + + reg-names: + items: + - const: hci + - const: vs_hci + - const: unipro + - const: ufsp + + clocks: + maxItems: 2 + items: + - description: ufs link core clock + - description: unipro main clock + + clock-names: + maxItems: 2 + items: + - const: core_clk + - const: sclk_unipro_main + + interrupts: + items: + - description: interrupt signal for various ufshc status + + phys: + maxItems: 1 + description: + phandle of the ufs phy node + + phy-names: + const: ufs-phy + +required: + - compatible + - reg + - interrupts + - phys + - phy-names + - clocks + - clock-names + +examples: + - | + #include <dt-bindings/interrupt-controller/arm-gic.h> + #include <dt-bindings/clock/exynos7-clk.h> + + ufs: ufs@15570000 { + compatible = "samsung,exynos7-ufs"; + reg = <0x15570000 0x100>, + <0x15570100 0x100>, + <0x15571000 0x200>, + <0x15572000 0x300>; + reg-names = "hci", "vs_hci", "unipro", "ufsp"; + interrupts = <GIC_SPI 200 IRQ_TYPE_LEVEL_HIGH>; + clocks = <&clock_fsys1 ACLK_UFS20_LINK>, + <&clock_fsys1 SCLK_UFSUNIPRO20_USER>; + clock-names = "core_clk", "sclk_unipro_main"; + pinctrl-names = "default"; + pinctrl-0 = <&ufs_rst_n &ufs_refclk_out>; + pclk-freq-avail-range = <70000000 133000000>; + phys = <&ufs_phy>; + phy-names = "ufs-phy"; + }; +...
This patch adds DT binding for samsung ufs hci Signed-off-by: Alim Akhtar <alim.akhtar@samsung.com> --- .../bindings/ufs/samsung,exynos-ufs.yaml | 93 +++++++++++++++++++ 1 file changed, 93 insertions(+) create mode 100644 Documentation/devicetree/bindings/ufs/samsung,exynos-ufs.yaml