On Mon, 14 Feb 2011, Dave Martin wrote: > @@ -289,8 +297,20 @@ clean_l2: > * - should be faster and will change with kernel > * - 'might' have to copy address, load and jump to it > */ > +#ifdef CONFIG_THUMB2_KERNEL > + /* kernel is non-interworking : must do this from Thumb */ > + adr r1, . + 1 > + bx r1 > + .thumb > +#endif > ldr r1, kernel_flush Didn't you mean this instead: /* kernel is non-interworking : must do this from Thumb */ adr r1, 1f + 1 bx r1 .thumb 1: ldr r1, kernel_flush ... ? > blx r1 > +#ifdef CONFIG_THUMB2_KERNEL > + .align > + bx pc > + nop > + .arm Also here, the .align has the potential to introduce a zero halfword in the instruction stream before the bx. What about: adr r3, 1f bx r3 .align .arm 1: ... Nicolas -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html