[coldfire-gnu-discuss] RAMBAR0 incorrectly set by __cs3_reset
Nathan Sidwell
nathan at codesourcery.com
Sat Nov 8 10:10:52 UTC 2008
Corrin Meyer wrote:
> I have started to experience a boot failure issue and I think I have
> tracked it down to __cs3_reset. The boot failure is resulting in an
> access error and it appears that it is because that RAMBAR0 (FLASHBAR)
> is being incorrectly set by the CS3 reset function __cs3_reset. Below
> are two versions of __cs3_reset as results from a compile that works and
> a compile that doesn’t. The processor I am working with is a MCF52235.
Which 52235 board are you targeting?
How are you linking your program?
Are you using a modified linker script?
> It appears that in the working case 0x00000021 is being loaded in
> RAMBAR0 and in the non-working case it is being loaded with 0x00003021.
> How is the value that is being loaded into RAMBAR0 being determined?
It is the value of the __cs3_region_start_rom plus 0x21.
__cs3_region_start_rom should be zero. Can you determine if that is the case,
and if not why not?
> Is
> there anyway that I can control what that value is without having to
> replace the __cs3_reset (or maybe there is an easy way to override just
> the __cs3_reset code without having to replace all of CS3)?
Yes, provide your own implementation of the routine in a .cs3.reset section.
Provide a global symbol __cs3_reset_cobra52235 (adjust if you're not using the
cobra52235 board), and make sure it ends with a jump to _start. This is
documented in the getting started guide.
nathan
--
Nathan Sidwell :: http://www.codesourcery.com :: CodeSourcery
More information about the coldfire-gnu-discuss
mailing list