[PATCH] ARM: zImage: add support for ARMv7-M
Catalin Marinas
catalin.marinas at arm.com
Fri Sep 19 03:33:34 PDT 2014
On Thu, Sep 18, 2014 at 07:34:47PM +0100, Joachim Eastwood wrote:
> On 18 September 2014 19:38, Arnd Bergmann <arnd at arndb.de> wrote:
> > On Thursday 18 September 2014, Joachim Eastwood wrote:
> >> ARM( mov pc, r4 ) @ call kernel
> >> - THUMB( bx r4 ) @ entry point is always ARM
> >> +#ifdef CONFIG_CPU_V7M
> >> + add r4, r4, #1 @ enter in Thumb mode for ARMv7M
> >> +#endif
> >> + THUMB( bx r4 ) @ entry point is always ARM for non ARMv7M CPUs
> >>
> >
> > I think it would be much nicer to avoid sprinkling #ifdefs here. We already
> > have the ARM() and THUMB() macros to deal with the two cases we support, which
> > are booting in ARM mode vs ARMv7-A with THUMB2 mode. We can probably add
> > another macro like this to deal with the ARMv7-M case that does not have
> > ARM mode.
>
> Well, I guess I could make a THUMBONLY macro or something like that.
> But I think that the macro would only be useful in the case you quoted
> above. The other ifdefs in the patch are either for large blocks or
> removing code. So I don't think it would improve the patch a great
> deal.
>
> btw, do you have better name suggestion than THUMBONLY?
It looks like you would need the reverse as well, !THUMBONLY. What about
M_CLASS and A_CLASS (with or without underscore and maybe AR_CLASS if we
ever need to differentiate between A and R)?
--
Catalin
More information about the linux-arm-kernel
mailing list