Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751847AbbKJIfB (ORCPT ); Tue, 10 Nov 2015 03:35:01 -0500 Received: from mailout1.samsung.com ([203.254.224.24]:52813 "EHLO mailout1.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750899AbbKJIe6 (ORCPT ); Tue, 10 Nov 2015 03:34:58 -0500 X-AuditID: cbfee691-f79d66d000001509-cc-5641ac2fd09b Message-id: <5641AC59.50204@samsung.com> Date: Tue, 10 Nov 2015 14:05:37 +0530 From: Alim Akhtar User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.5.0 MIME-version: 1.0 To: Rob Herring Cc: linux-scsi@vger.kernel.org, linux-kernel@vger.kernel.org, JBottomley@odin.com, vinholikatti@gmail.com, gautam.vivek@samsung.com, essuuj@gmail.com, devicetree@vger.kernel.org, kishon@ti.com Subject: Re: [PATCH v5 10/11] Documentation: devicetree: ufs: Add DT bindings for exynos UFS host controller References: <1447046787-480-1-git-send-email-alim.akhtar@samsung.com> <1447046787-480-11-git-send-email-alim.akhtar@samsung.com> <20151109162312.GA32748@rob-hp-laptop> In-reply-to: <20151109162312.GA32748@rob-hp-laptop> Content-type: text/plain; charset=ISO-8859-1; format=flowed Content-transfer-encoding: 7bit X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrIIsWRmVeSWpSXmKPExsWyRsSkSld/jWOYwZ2lJhbzj5xjtVh+YQmT RduVg+wW/9ffZrG48LSHzeLyrjlsFt3Xd7BZ/N+zg91ix8IqB06PnbPusntsWtXJ5nH4xw9m j74tqxg9jt/YzuTxeZNcAFsUl01Kak5mWWqRvl0CV8bd/39YC7abVzy8PpG5gXGbdhcjJ4eE gInE7HuzWSBsMYkL99azdTFycQgJrGCUOHJ+K2sXIwdY0auXthDxpYwSyz9MZIdwHjBKTLn5 jA2km1dAQ6L7wx5WEJtFQFWi+fUZJhCbTUBb4u70LUwgg0QFIiQeXxCCKBeU+DH5HthiEQFF id9t01hBZjILHGGUeHrhJ1ivsECexI7rOxhBbCGB1YwSc35ZgticAsYS9x6tAtvFLGAtsXLS NkYIW15i85q3zCCDJAQ+sktseXOcDeIgAYlvkw+xQHwjK7HpADPEx5ISB1fcYJnAKDYLyU2z kIydhWTsAkbmVYyiqQXJBcVJ6UWmesWJucWleel6yfm5mxiBMXn637OJOxjvH7A+xCjAwajE wzvhm0OYEGtiWXFl7iFGU6ArJjJLiSbnAyM/ryTe0NjMyMLUxNTYyNzSTEmcV0f6Z7CQQHpi SWp2ampBalF8UWlOavEhRiYOTqkGRhnezv1zVsy0y1b4LqTSaB665L7pmuuVje4X1SIMc1su ev2pPnLO5+CrM1opB9Nei53ZrVgeX2gQvVXtwI5tSQeEeMQ7PxUWHFnKcPnw3Xf8D/QCDZss 32j+//xg/oJde1yWfd6qsKe1YIqB55vlNj4OF1OTZ5Z1OTWq/ZFm7WnQFknYdeF6vRJLcUai oRZzUXEiAC+sNoDEAgAA X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFvrHIsWRmVeSWpSXmKPExsVy+t9jAV39NY5hBqvOaljMP3KO1WL5hSVM Fm1XDrJb/F9/m8XiwtMeNovLu+awWXRf38Fm8X/PDnaLHQurHDg9ds66y+6xaVUnm8fhHz+Y Pfq2rGL0OH5jO5PH501yAWxRDYw2GamJKalFCql5yfkpmXnptkrewfHO8aZmBoa6hpYW5koK eYm5qbZKLj4Bum6ZOUBXKSmUJeaUAoUCEouLlfTtME0IDXHTtYBpjND1DQmC6zEyQAMJaxgz 7v7/w1qw3bzi4fWJzA2M27S7GDk4JARMJF69tO1i5AQyxSQu3FvP1sXIxSEksJRRYvmHiewQ zgNGiSk3n7GBVPEKaEh0f9jDCmKzCKhKNL8+wwRiswloS9ydvoUJZKioQITE4wtCEOWCEj8m 32MBsUUEFCV+t01jBZnJLHCEUeLphZ9gvcICeRI7ru9gBLGFBFYzSsz5ZQlicwoYS9x7tAps F7OAtcTKSdsYIWx5ic1r3jJPYBSYhWTHLCRls5CULWBkXsUokVqQXFCclJ5rlJdarlecmFtc mpeul5yfu4kRHPfPpHcwHt7lfohRgINRiYd3wjeHMCHWxLLiytxDjBIczEoivPYvgEK8KYmV ValF+fFFpTmpxYcYTYGBMJFZSjQ5H5iS8kriDY1NzE2NTS1NLEzMLJXEefU9jcKEBNITS1Kz U1MLUotg+pg4OKUaGHOuWzMvOTplzrQj9q1efhujfZqm//6iXvvm/uxTvpe/XZlpUn1GZZH3 pIY3z98XcGW0HHnlmbXW+1/w8+mRfCx3DNc8vrLgbEOEt93W6ar+hxwnXGb6uVWpctnXwzs8 Z5TP6drxx8HVJ7a+0S/2vLeEp9TP2jnzRH0y9A48fzBj/ZcYIZeidWeVWIozEg21mIuKEwG3 PBn7EQMAAA== DLP-Filter: Pass X-MTR: 20000000000000000@CPGS X-CFilter-Loop: Reflected Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 7181 Lines: 164 Hi Rob, On 11/09/2015 09:53 PM, Rob Herring wrote: > On Mon, Nov 09, 2015 at 10:56:26AM +0530, Alim Akhtar wrote: >> From: Seungwon Jeon >> >> This adds Exynos Universal Flash Storage (UFS) Host Controller DT bindings. >> >> Signed-off-by: Seungwon Jeon >> Signed-off-by: Alim Akhtar >> --- >> .../devicetree/bindings/ufs/ufs-exynos.txt | 104 ++++++++++++++++++++ >> 1 file changed, 104 insertions(+) >> create mode 100644 Documentation/devicetree/bindings/ufs/ufs-exynos.txt >> >> diff --git a/Documentation/devicetree/bindings/ufs/ufs-exynos.txt b/Documentation/devicetree/bindings/ufs/ufs-exynos.txt >> new file mode 100644 >> index 000000000000..08e2d1497b1b >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/ufs/ufs-exynos.txt >> @@ -0,0 +1,104 @@ >> +* Exynos Universal Flash Storage (UFS) Host Controller >> + >> +UFSHC nodes are defined to describe on-chip UFS host controllers. >> +Each UFS controller instance should have its own node. >> + >> +Required properties: >> +- compatible : compatible name, contains "samsung,exynos7-ufs" >> +- interrupts : >> +- reg : Should contain HCI, vendor specific, UNIPRO and >> + UFS protector address space >> +- reg-names : "hci", "vs_hci", "unipro", "ufsp"; > > No phy for MPHY? > ufs-phy is documented, see 01/11 of this series. >> + >> +Optional properties: >> +- vdd-hba-supply : phandle to UFS host controller supply regulator node >> +- vcc-supply : phandle to VCC supply regulator node >> +- vccq-supply : phandle to VCCQ supply regulator node >> +- vccq2-supply : phandle to VCCQ2 supply regulator node >> +- vcc-supply-1p8 : For embedded UFS devices, valid VCC range is 1.7-1.95V >> + or 2.7-3.6V. This boolean property when set, specifies >> + to use low voltage range of 1.7-1.95V. Note for external >> + UFS cards this property is invalid and valid VCC range is >> + always 2.7-3.6V. >> +- vcc-max-microamp : specifies max. load that can be drawn from vcc supply >> +- vccq-max-microamp : specifies max. load that can be drawn from vccq supply >> +- vccq2-max-microamp : specifies max. load that can be drawn from vccq2 supply > > Some of these are supplies to the flash chip, so you should make > these common properties (in a common doc). > Ah, yes these are duplicated, already documented in common ufshcd file Documentation/devicetree/bindings/ufs/ufshcd-pltfrm.txt What is the recommended way, do I need to include it here as well? or just mentioning that "same as documented in ufshcd-pltfrm.txt"? >> +- -fixed-regulator : boolean property specifying that -supply is a fixed regulator > > This should be determined from the regulator. > Same as above already documented as part of ufshcd-pltfrm binding. >> + >> +- 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", "sclk_unipro_main", "ref" and ref_parent >> + >> +- freq-table-hz : Array of 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. >> +- pclk-freq-avail-range : specifies available frequency range(min/max) for APB clock >> +- ufs,pwr-attr-mode : specifies mode value for power mode change, possible values are >> + "FAST", "SLOW", "FAST_auto" and "SLOW_auto" > > ufs is not a vendor. Use a '-' rather than ','. > Ok will change. >> +- ufs,pwr-attr-lane : specifies lane count value for power mode change >> + allowed values are 1 or 2 >> +- ufs,pwr-attr-gear : specifies gear count value for power mode change >> + allowed values are 1 or 2 >> +- ufs,pwr-attr-hs-series : specifies HS rate series for power mode change >> + can be one of "HS_rate_b" or "HS_rate_a" >> +- ufs,pwr-local-l2-timer : specifies array of local UNIPRO L2 timer values >> + 3 timers supported >> + >> +- ufs,pwr-remote-l2-timer : specifies array of remote UNIPRO L2 timer values >> + 3 timers supported >> + >> +- ufs-rx-adv-fine-gran-sup_en : specifies support of fine granularity of MPHY, >> + this is a boolean property. >> +- ufs-rx-adv-fine-gran-step : specifies granularity steps of MPHY, >> + allowed step size is 0 to 3 >> +- ufs-rx-adv-min-activate-time-cap : specifies rx advanced minimum activate time of MPHY >> + range is 1 to 9 >> +- ufs-pa-granularity : specifies Granularity for PA_TActivate and PA_Hibern8Time >> +- ufs-pa-tacctivate : specifies time to wake-up remote M-RX >> +- ufs-pa-hibern8time : specifies minimum time to wait in HIBERN8 state > > These are all M-PHY properties? > These are UIC (ufs interconnect) attributes related to M-PHY and Unipro blocks. >> + >> +Note: If above properties are not defined it can be assumed that the supply >> +regulators or clocks are always on. >> + >> +Example: >> + ufshc@0x15570000 { >> + compatible = "samsung,exynos7-ufs"; >> + reg = <0x15570000 0x100>, >> + <0x15570100 0x100>, >> + <0x15571000 0x200>, >> + <0x15572000 0x300>; >> + reg-names = "hci", "vs_hci", "unipro", "ufsp"; >> + interrupts = <0 200 0>; >> + >> + vdd-hba-supply = <&xxx_reg0>; >> + vdd-hba-fixed-regulator; >> + vcc-supply = <&xxx_reg1>; >> + vcc-supply-1p8; >> + vccq-supply = <&xxx_reg2>; >> + vccq2-supply = <&xxx_reg3>; >> + vcc-max-microamp = 500000; >> + vccq-max-microamp = 200000; >> + vccq2-max-microamp = 200000; >> + >> + clocks = <&core 0>, <&ref 0>, <&iface 0>; >> + clock-names = "core", "sclk_unipro_main", "ref", "ref_parent"; >> + freq-table-hz = <100000000 200000000>, <0 0>, <0 0>, <0 0>; >> + >> + pclk-freq-avail-range = <70000000 133000000>; >> + >> + ufs,pwr-attr-mode = "FAST"; >> + ufs,pwr-attr-lane = <2>; >> + ufs,pwr-attr-gear = <2>; >> + ufs,pwr-attr-hs-series = "HS_rate_b"; >> + ufs,pwr-local-l2-timer = <8000 28000 20000>; >> + ufs,pwr-remote-l2-timer = <12000 32000 16000>; >> + ufs-rx-adv-fine-gran-sup_en = <1>; >> + ufs-rx-adv-fine-gran-step = <3>; >> + ufs-rx-adv-min-activate-time-cap = <9>; >> + ufs-pa-granularity = <6>; >> + ufs-pa-tacctivate = <6>; >> + ufs-pa-hibern8time = <20>; >> + }; >> -- >> 1.7.10.4 >> >> -- >> 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 linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/