diff --git a/arch/arm/mach-omap/omap3_core.S b/arch/arm/mach-omap/omap3_core.S index dffbe99d1..ceb3c76ee 100644 --- a/arch/arm/mach-omap/omap3_core.S +++ b/arch/arm/mach-omap/omap3_core.S @@ -71,8 +71,12 @@ inval_loop1: inval_loop2: mov r9, r4 /* create working copy of max way size */ inval_loop3: - orr r11, r10, r9, lsl r5 /* factor way and cache number into r11*/ - orr r11, r11, r7, lsl r2 /* factor index number into r11 */ +ARM( orr r11, r10, r9, lsl r5 ) /* factor way and cache number into r11 */ +ARM( orr r11, r11, r7, lsl r2 ) /* factor index number into r11 */ +THUMB( lsl r6, r9, r5 ) +THUMB( orr r11, r10, r6 ) /* factor way and cache number into r11 */ +THUMB( lsl r6, r7, r2 ) +THUMB( orr r11, r11, r6 ) /* factor index number into r11 */ mcr p15, 0, r11, c7, c6, 2 /* invalidate by set/way */ subs r9, r9, #1 /* decrement the way */ bge inval_loop3