On Thu, Jun 21, 2018 at 2:52 AM sayali <sayalil@xxxxxxxxxxxxxx> wrote:I have started using Thunderbird now. Hope you can see my replies correctly this time.
Hi Rob,As mentioned in the back and forth comments previously in this thread,
Please check my comment inline.
please fix your email client (hint: you can't use Outlook) and
properly quote your replies (i.e. the leading ">")
Yes, we need to set it to a specific frequency. I will use "assigned-clock-rates" for passing ref_clk frequency in next patch set.
Thanks,That is not what your patch does. It just tells the device what the
From: Rob Herring [mailto:robh@xxxxxxxxxx]
Sent: Thursday, June 14, 2018 7:59 PM
To: sayali <sayalil@xxxxxxxxxxxxxx>
Cc: Subhash Jadavani <subhashj@xxxxxxxxxxxxxx>; Can Guo <cang@xxxxxxxxxxxxxx>; Vivek Gautam <vivek.gautam@xxxxxxxxxxxxxx>; Rajendra Nayak <rnayak@xxxxxxxxxxxxxx>; Vinayak Holikatti <vinholikatti@xxxxxxxxx>; James E.J. Bottomley <jejb@xxxxxxxxxxxxxxxxxx>; Martin K. Petersen <martin.petersen@xxxxxxxxxx>; asutoshd@xxxxxxxxxxxxxx; Evan Green <evgreen@xxxxxxxxxxxx>; linux-scsi@xxxxxxxxxxxxxxx; Mark Rutland <mark.rutland@xxxxxxx>; Mathieu Malaterre <malat@xxxxxxxxxx>; open list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS <devicetree@xxxxxxxxxxxxxxx>; open list <linux-kernel@xxxxxxxxxxxxxxx>
Subject: Re: [PATCH V2 1/3] scsi: ufs: set the device reference clock setting
On Thu, Jun 14, 2018 at 5:33 AM, sayali <sayalil@xxxxxxxxxxxxxx> wrote:
Comment inline.The clocks property contains "ref_clk". Is that not the same clock?
From: Rob Herring [mailto:robh@xxxxxxxxxx]
Sent: Wednesday, June 13, 2018 12:57 AM
To: Sayali Lokhande <sayalil@xxxxxxxxxxxxxx>
Cc: subhashj@xxxxxxxxxxxxxx; cang@xxxxxxxxxxxxxx;
evgreen@xxxxxxxxxxxx; linux-scsi@xxxxxxxxxxxxxxx; Mark Rutland
<mark.rutland@xxxxxxx>; Mathieu Malaterre <malat@xxxxxxxxxx>; open
list:OPEN FIRMWARE AND FLATTENED DEVICE TREE BINDINGS
<devicetree@xxxxxxxxxxxxxxx>; open list <linux-kernel@xxxxxxxxxxxxxxx>
Subject: Re: [PATCH V2 1/3] scsi: ufs: set the device reference clock
On Fri, Jun 08, 2018 at 04:36:28PM +0530, Sayali Lokhande wrote:
From: Subhash Jadavani <subhashj@xxxxxxxxxxxxxx>++++++++++++++++++++++
UFS host supplies the reference clock to UFS device and UFS device
specification allows host to provide one of the 4 frequencies (19.2
26 MHz, 38.4 MHz, 52 MHz) for reference clock. Host should set the
device reference clock frequency setting in the device based on what
frequency it is supplying to UFS device.
Signed-off-by: Subhash Jadavani <subhashj@xxxxxxxxxxxxxx>
Signed-off-by: Can Guo <cang@xxxxxxxxxxxxxx>
Signed-off-by: Sayali Lokhande <sayalil@xxxxxxxxxxxxxx>
.../devicetree/bindings/ufs/ufshcd-pltfrm.txt | 7 +++
drivers/scsi/ufs/ufs.h | 9 ++++
drivers/scsi/ufs/ufshcd-pltfrm.c | 24 ++++++++++
drivers/scsi/ufs/ufshcd.c | 52
drivers/scsi/ufs/ufshcd.h | 1 +or 2.
5 files changed, 93 insertions(+)
diff --git a/Documentation/devicetree/bindings/ufs/ufshcd-pltfrm.txt
index c39dfef..4522434 100644
@@ -41,6 +41,12 @@ Optional properties:
-lanes-per-direction : number of lanes available per direction -
Note that it is assume same number of lanesused both
directions at once. If not specified, defaultlanes per direction.
+- dev-ref-clk-freq : Specify the device reference clock frequency, mustbe one of the following:
+ 0: 19.2 MHzI must have misunderstood your last response. I thought you could
+ 1: 26 MHz
+ 2: 38.4 MHz
+ 3: 52 MHz
+ Defaults to 26 MHz if not specified.
handle things without DT. If not, my question remains.
[Sayali]: Ref clk frequency setting could vary from
platfrom-to-platform(vendor specific). Hence we need to pass it via DT.
Currently in DT we do not set/mention any ref clk frequency
parameter. Hence I have added one new DT entry to configure
required ref clk freq.
Why can't you read what that frequency is? Or you need to be able to change it to a specific frequency? These all look like typical oscillator frequencies, so I wouldn't expect you could change them (other than divide by 2 maybe).
[Sayali] : It is the same "ref_clk", but we need to be able to change it to a specific frequency as per requirement. Thus, we need new DT entry to specify/override reference clock frequency as per need.
frequency is. If you need to get the rate, use "clk_get_rate" on
"ref_clk". If you need to actually set it to a specific frequency,
then we have properties for that already (assigned-clock-rates).
Yes, ref_clk freq will be already set in device via bootloader. In Kernel, before updating ref_clk freq (if required and passed via DT), we are reading the current ref_clk set in device and only if it is different than what has been passed via DT, we will be updating ref_clk freq, otherwise we just return.
Seems to me that by the time you get to Linux, the bootloader would
have already set this. Otherwise, how do you boot? Seems like you
would want to read the attr and ensure "ref_clk" freq matches.