[PATCH] arm: boot/compressed: fix decompressor header layout for v7-M

Russell King - ARM Linux linux at armlinux.org.uk
Fri May 19 10:35:03 PDT 2017


On Fri, May 19, 2017 at 06:29:34PM +0100, Dave Martin wrote:
> On Fri, May 19, 2017 at 05:59:47PM +0100, Ard Biesheuvel wrote:
> > On 19 May 2017 at 17:46, Dave Martin <Dave.Martin at arm.com> wrote:
> 
> [...]
> 
> > > Spelling it out might be more readable:
> > >
> > >    ARM(                 mov     r0, r0          )
> > >    ARM(                 mov     r0, r0          )
> > >
> > >  THUMB( AR_CLASS(       sub     pc, pc, #3      ))
> > >  THUMB( M_CLASS(        nop.w                   ))
> > >  THUMB(                 .thumb                  )
> > >  THUMB(                 b.w     1f              )
> > >
> > > But I guess it works either way.
> > >
> > 
> > Indeed. Apart from the error in the second line, this sequence should
> > be equivalent, but the nested macro invocations don't make it clearer
> > imo.
> 
> Err, yes.  Actually I means to write
> 
> 	b	1f
> 	mov	r0, r0
> 
> (since executing that nop before branching is presumably pointless).

That "nop" is part of the 8 nops at the start of the image, since the
entry point (due to historical reasons) is at 0x20 into the image.

-- 
RMK's Patch system: http://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line: currently at 9.6Mbps down 400kbps up
according to speedtest.net.



More information about the linux-arm-kernel mailing list