[U-Boot] fw_setenv broken?
Steve Sakoman
steve at sakoman.com
Fri Nov 19 01:33:43 CET 2010
On Thu, 2010-11-18 at 18:20 -0600, Scott Wood wrote:
> On Thu, 18 Nov 2010 16:13:52 -0800
> Steve Sakoman <steve at sakoman.com> wrote:
>
> > The code generating both errors is in the nand_do_read_ops function in nand_base.c:
> >
> > if (mtd->ecc_stats.failed - stats.failed)
> > return -EBADMSG;
> >
> > return mtd->ecc_stats.corrected - stats.corrected ? -EUCLEAN : 0;
> > }
> >
> > I understand that the -EUCLEAN error indicates a correctable ECC error. What does the -EBADMSG error indicate?
>
> An uncorrectable ECC error (or other failure).
>
> > This condition doesn't seem to bother the linux driver, but u-boot doesn't like it at all!
>
> Check whether the ECC layout and code is the same for this driver in
> both U-Boot and Linux.
Since fw_printenv in Linux always can successfully read an environment
written by U-boot (aqs well as those written by fw_setenv), wouldn't
this indicate that they are using the same ECC layout? If they were
different I would expect that compatibility in both directions would be
broken.
This is not my area of expertise, so perhaps I am just ignorant of how
things work.
Steve
More information about the U-Boot
mailing list