Re: [PATCH] mci: imx-esdhc-pbl: Fix watermark level value for i.MX

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Sep 30, 2019 at 12:08 PM Sascha Hauer <s.hauer@xxxxxxxxxxxxxx> wrote:
>
> On Mon, Sep 30, 2019 at 01:07:48AM -0700, Andrey Smirnov wrote:
> > Layerscape and i.MX have different semantics of Watermark Level
> > Register. Whereas the former uses "0" to signify maximum allowed
> > value, the latter does not.
> >
> > According to the RM (i.MX8MQ, i.MX6):
> >
> > "...The read burst length must be less than or equal to the read
> > watermark level.."
> >
> > Setting Watermark Level Register to zero violates that limitation. It
> > appears that, on i.MX8MQ, not following that rule causes certain
> > configs + toolchains to result in non-bootable image. Specifically,
> > polling for CICHB, CIDHB and DLA to clear in esdhc_send_cmd() times
> > out. There doesn't appear to be any clear relationship as to what kind
> > of image will have the problem, but the following combinations failed
> > to boot on ZII i.MX8MQ Zest board:
> >
> >   - gcc version 9.2.1 20190827 (Red Hat Cross 9.2.1-1) (GCC) +
> >     imx_v8_defconfig + CONFIG_DEBUG_LL and CONFIG_PBL_CONSOLE
> >
> >   - gcc version 5.5.0 (Timesys 20190405) (custom toolchain) +
> >     imx_v8_defconfig
> >
> > Setting WML's *_BRST_LE to 16 and *_WML to 128 on i.MX resolves the
> > issue (same setting that's selected by writing 0 on Layerscape).
> >
> > Fixes: 48562aeaa8 ("esdhc-xload: check for PRSSTAT_BREN only after each block")
> > Cc: Chris Healy <cphealy@xxxxxxxxx>
> > Cc: Ruslan Sushko <ruslan.sushko@xxxxxxxx>
> > Signed-off-by: Andrey Smirnov <andrew.smirnov@xxxxxxxxx>
> > ---
> >
> > Sascha:
> >
> > I don't have a very good explanation as to why those particuar
> > toolchain + config settings cause problems and it's not clear how the
> > IP block interprets those illegal values since RM is silent on that. I
> > spent a solid chunk of time trying to figure that out without much
> > luck, so I figured that maybe, given that mismatch is pretty clear
> > from comparing two datasheets, this fix can go in without having one.
> >
> > If this patch is a acceptable, I think it should also go to master
> > since it fixes boot break
>
> I checked both reference manuals and it's clear that we do the wrong
> thing on i.MX currently, so I am fine with the patch. It seems that you
> have forgotten to set wrap_wml to 1 for layerscape though.
>

Ugh! Will fix in v2.

Thanks,
Andrey Smirnov

_______________________________________________
barebox mailing list
barebox@xxxxxxxxxxxxxxxxxxx
http://lists.infradead.org/mailman/listinfo/barebox



[Index of Archives]     [Linux Embedded]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux