public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: Chin Liang See <clsee@altera.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 1/2] arm: socfpga: mmc: Enable calibration for drvsel and smpsel
Date: Mon, 7 Sep 2015 20:32:33 -0500	[thread overview]
Message-ID: <1441675953.1908.14.camel@clsee-VirtualBox> (raw)
In-Reply-To: <55ED4BCB.6020802@samsung.com>

Hi,

On Mon, 2015-09-07 at 03:33 +0000, Jaehoon Chung wrote:
> Hi,
> 
> On 09/04/2015 07:41 PM, Pavel Machek wrote:
> > Hi!
> > 
> >>>>>>> How is this SMPLSEL and DRVSEL implemented on Exynos ?
> >>>>>
> >>>>> Exynos is using CLKSEL register in dw-mmc controller.
> >>>>> It's exynos specific register in dwmmc controller. It's also
> >>>>> represented 45 degree increment. SELCK_DRV is bit[18:16] or more.
> >>>>> SELCLK_SAMPLE is bit[2:0] or more. There are other bits relevant to
> >>>>> tuning clock. '_more_' means that it can be changed bandwidth.
> >>>>>
> >>>>> Anyway, I think there is no right method about finding the best smplclk
> >>>>> and drvsel. If this is generic method, i will pick this. But i don't
> >>>>> think so, and there is no benefit for exynos.
> >>>>>
> >>>>> smplclk and drvsel value need to process the tuning sequence.
> >>>>> There is no tuning case at bootloader, since it's not implemented about
> >>>>> HS200 or upper mode.
> >>>>>
> >>>>> Clksel an drvsel value are passed by device tree.
> >>>>
> >>>> In that case, maybe SoCFPGA should also pick those values from DT ? It
> >>>> would keep the code simple and in case there is a problematic board, it
> >>>> could use u-boot application to perform the tuning.
> >>>
> >>> I prefer not to do that as it narrows the supported use case for the
> >>> driver.
> >>
> >> How so? It keeps the driver code clean and this code you're adding seems
> >> like a special-purpose stuff which needs to be done once for particular
> >> board, no ?
> > 
> > Well... stuff that can be automatically detected is not supposed to be
> > in the device tree.
> > 
> > clksel and drvsel can be calibrated, so I see some arguments why we
> > should calibrate them, and not hardcode them in the device tree.
> 
> My opinions are 
> 
> 1. This code is not generic dwmmc code. So i don't want to locate into dwmmc core.
> If need to apply, i agree that it applies this in socfpga-dw_mmc.c.
> 

Yup, let move that to socfpga-dw_mmc.c as majority believe that is
correct way to move forward. I shall send in v3 which integrate Pavel's
comment in v2

> 2. In exynos, value of devcie-tree is the tested value.
> After has tested with every values, it defined the best value into device-tree.
> (Working fine with values.)
> At every time, it doesn't need to detect the best value with same SoC.
> (Especially, at bootloader)
> 
> 3. In my experiment, there should be side-effect during finding best sample/drv value.
> 
> 4. If HS200 or upper mode is supported at bootloader, it needs the tuning sequence.
> Then it needs to find the best sampl/drv values. but it doesn't support HS200 or other at bootloader.
> 

Yah, normally it will not need that.
As we are catering for various customer board design, this calibration
will help even they routed the SDMMC slot few inches away.

> 5. Affect at booting time??

We measured this before and it took around ~5.2ms for worst case.

Thanks
Chin Liang

> 
> 
> Best Regards,
> Jaehoon Chung
> 
> > 									Pavel
> > 
> 

  reply	other threads:[~2015-09-08  1:32 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-08-19  5:54 [U-Boot] [PATCH 1/2] arm: socfpga: mmc: Enable calibration for drvsel and smpsel Chin Liang See
2015-08-19  7:26 ` Pavel Machek
2015-08-19  7:34   ` Marek Vasut
2015-08-19  8:30     ` Chin Liang See
2015-08-19 23:23       ` Marek Vasut
2015-08-19  8:33   ` Chin Liang See
2015-08-19  7:40 ` Marek Vasut
2015-08-19  8:21   ` Chin Liang See
2015-08-19 19:36     ` Marek Vasut
2015-08-20  5:28       ` Chin Liang See
2015-08-20  5:32         ` Marek Vasut
2015-08-20 21:55           ` Dinh Nguyen
2015-08-20 21:59             ` Marek Vasut
2015-08-21  0:33               ` Dinh Nguyen
2015-08-21  0:42                 ` Marek Vasut
2015-08-21 20:52             ` Simon Glass
2015-08-24 15:04               ` Chin Liang See
2015-08-25  2:36                 ` Jaehoon Chung
2015-08-25  3:08                   ` Chin Liang See
2015-08-26  5:29                     ` Jaehoon Chung
2015-08-26  5:47                       ` Chin Liang See
2015-08-26  6:14                         ` Jaehoon Chung
2015-08-26  6:54                           ` Chin Liang See
2015-09-01  8:54                             ` Chin Liang See
2015-09-01  9:01                               ` Marek Vasut
2015-09-01  9:10                                 ` Chin Liang See
2015-09-01 10:12                                   ` Jaehoon Chung
2015-09-01 14:53                                     ` Dinh Nguyen
2015-09-02 10:32                                       ` Marek Vasut
2015-09-03  0:27                                         ` Chin Liang See
2015-09-03  5:30                                           ` Jaehoon Chung
2015-09-03  9:37                                             ` Marek Vasut
2015-09-03 14:06                                               ` Chin Liang See
2015-09-03 14:25                                                 ` Marek Vasut
2015-09-04 10:41                                                   ` Pavel Machek
2015-09-07  8:33                                                     ` Jaehoon Chung
2015-09-08  1:32                                                       ` Chin Liang See [this message]
2015-09-08 10:56                                                         ` Marek Vasut
     [not found]                                                           ` <0016CF5815A1B142902817051AF62EB305FDF5BA@PG-ITEXCH01.altera.priv.altera.com>
2015-10-07  2:54                                                             ` Chin Liang See
2015-10-12 14:44                                                               ` Marek Vasut

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1441675953.1908.14.camel@clsee-VirtualBox \
    --to=clsee@altera.com \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox