From mboxrd@z Thu Jan 1 00:00:00 1970 From: Albert ARIBAUD Date: Sat, 17 Jan 2015 07:40:01 +0100 Subject: [U-Boot] [PATCH] arm: fix exception vectors In-Reply-To: <1419865853-2562-1-git-send-email-luca.ellero@brickedbrain.com> References: <1419865853-2562-1-git-send-email-luca.ellero@brickedbrain.com> Message-ID: <20150117074001.5ae2abd4@lilith> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hello Luca, On Mon, 29 Dec 2014 16:10:53 +0100, Luca Ellero wrote: > After relocation, exception vectors still point to the old code (not relocated). > This patch fixes them. > > Signed-off-by: Luca Ellero > --- > arch/arm/lib/relocate.S | 15 +++++++++++++++ > 1 file changed, 15 insertions(+) > > diff --git a/arch/arm/lib/relocate.S b/arch/arm/lib/relocate.S > index 92f5314..4186344 100644 > --- a/arch/arm/lib/relocate.S > +++ b/arch/arm/lib/relocate.S > @@ -76,6 +76,21 @@ copy_loop: > blo copy_loop > > /* > + * fix exception vectors > + */ > + ldr r2, =_undefined_instruction > + ldr r3, =_fiq > + add r2, r2, r4 > + add r3, r3, r4 > +fix_exceptions: > + ldr r0, [r2] > + add r0, r0, r4 > + str r0, [r2] > + cmp r2,r3 > + add r2, #4 > + blo fix_exceptions > + > + /* > * fix .rel.dyn relocations > */ > ldr r2, =__rel_dyn_start /* r2 <- SRC &__rel_dyn_start */ > -- > 1.7.10.4 > There is already a mechanism to relocate vectors (do a git grep for 'relocate_vectors' which takes into account various ISA and SoC cases. Can you describe the use case which you are encountering? Amicalement, -- Albert.