[ECOS] [Fwd: How to enable redboots CRC checking]

Gary Thomas gary@mlbassoc.com
Wed May 26 12:52:00 GMT 2004


On Wed, 2004-05-26 at 06:15, Winkler Andreas wrote:
> > The 'fis load' with CRC checking function in RedBoot had suffered some
> > bitrot (the CDL option changed names, but the code did not).  This has
> > now been repaired, as seen below:
> > 
> > RedBoot> fi lo JFFS2                               
> > ** Warning - checksum failure.  stored: 0x78d127ea, computed: 
> > 0xf08ba2c8
> > 
> > -- 
> > Gary Thomas <gary@chez-thomas.org>
> 
> Hi,
> 
> I just built a new redboot for my IXDP425 evaluation board from Intel
> with an ecos snapshot from 19. May 2004.
> (Is it OK, that i get a lot of warnings, e. g. signed/unsigned mismatch
> while building?)
> The CRC check doesn't work yet.

Do you have the CRC package included & enabled in your build?
Look in your build directory, you should see something like this:
  [gthomas@hermes rt]$ grep CRC install/include/pkgconf/*
  install/include/pkgconf/crc.h:#ifndef CYGONCE_PKGCONF_CRC_H
  install/include/pkgconf/crc.h:#define CYGONCE_PKGCONF_CRC_H
  install/include/pkgconf/hal.h:#define CYGDBG_HAL_CRCTABLE_LOCATION RAM
  install/include/pkgconf/hal.h:#define CYGDBG_HAL_CRCTABLE_LOCATION_RAM
  install/include/pkgconf/redboot.h:#define CYGSEM_REDBOOT_FIS_CRC_CHECK 1
  install/include/pkgconf/system.h:#define CYGPKG_CRC current
  install/include/pkgconf/system.h:#define CYGPKG_CRC_current
  install/include/pkgconf/system.h:#define CYGNUM_CRC_VERSION_MAJOR CYGNUM_VERSION_CURRENT
  install/include/pkgconf/system.h:#define CYGNUM_CRC_VERSION_MINOR -1
  install/include/pkgconf/system.h:#define CYGNUM_CRC_VERSION_RELEASE -1

Also, make sure that your sources are new enough.  In .../redboot/current/ChangeLog:

2004-05-05  Gary Thomas  <gary@mlbassoc.com>

        * src/flash.c (fis_load): CRC check on load was broken (the CDL
        option changed names)


> What i get is
> 
> RedBoot> loa -r -b 0x01008000 jffs2k
> Using default protocol (TFTP)
> Raw file loaded 0x01008000-0x010c27c7, assumed entry at 0x01008000
> RedBoot> fi cr kernel
> ... Erase from 0x50040000-0x50100000: ......
> ... Program from 0x01008000-0x010c27c8 at 0x50040000: ......
> ... Unlock from 0x50fe0000-0x51000000: .
> ... Erase from 0x50fe0000-0x51000000: .
> ... Program from 0x0ffe0000-0x10000000 at 0x50fe0000: .
> ... Lock from 0x50fe0000-0x51000000: .
> RedBoot> fi wr -f 0x50060000 -b 0x1008000 -l 100
> * CAUTION * about to program FLASH
>             at 0x50060000..0x5007ffff from 0x01008000 - continue (y/n)? y
> ... Erase from 0x50060000-0x50080000: .
> ... Program from 0x01008000-0x01028000 at 0x50060000: .
> RedBoot> fi loa kernel
> RedBoot> e
> Using base address 0x01008000 and length 0x000ba7c8
> Uncompressing Linux...........
> 
> invalid compressed format (err=2)
> 
>  -- System halted
> 
> Any idea, what could be my fault?
> Which source has been changed to repair the bitrot bug?
> 
> Regards
> Andreas
-- 
Gary Thomas <gary@mlbassoc.com>
MLB Associates


-- 
Before posting, please read the FAQ: http://ecos.sourceware.org/fom/ecos
and search the list archive: http://ecos.sourceware.org/ml/ecos-discuss



More information about the Ecos-discuss mailing list