[U-Boot-Users] ARM exception vectors -- relocating
Marius Groeger
mgroeger at sysgo.com
Wed Jul 7 10:19:36 CEST 2004
On Wed, 7 Jul 2004, Wolfgang Denk wrote:
> In message <Pine.LNX.4.56.0407070943450.1753 at mag.sysgo.com> you wrote:
> >
> > > This is one of the areas where the old ARMBoot code hits us hard.
> > > They never implemented the relocation correctly.
> >
> > Interrupts worked fine in ARMboot. Maybe you broke CONFIG_USE_IRQ when
> > you ripped the code.
>
> Maybe, but I don't think so. At least I see no code in ARMBoot to
> relocate the exception vectors.
Because they can't be. The vectors always sit at address 0000'0000,
and thus in the flash. You can only change that by turning on the MMU.
So the relocated entry points are loaded to the pc via ldr, the only
exception being the RESET vector, obviosly. In other words, interrupts
in ARMboot can only be used _after_ relocation.
> Do interrupts continue to work when you are running from RAM and
> erase the flash?
For the reasons given above, this cannot work if the flash to be
programmed sits at 0000'0000.
Regards,
Marius
--
Marius Groeger <mgroeger at sysgo.com> Project Manager
SYSGO AG Embedded and Real-Time Software
Voice: +49 6136 9948 0 FAX: +49 6136 9948 10
www.sysgo.com | www.elinos.com | www.osek.de | www.imerva.com
More information about the U-Boot
mailing list