Re: [PATCH] ARM: Thumb-2: Make CONFIG_THUMB2_KERNEL depend on !CPU_V6

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



--- On Tue, 12/7/10, Dave Martin <dave.martin@xxxxxxxxxx> wrote:

> From: Dave Martin <dave.martin@xxxxxxxxxx>
> Subject: [PATCH] ARM: Thumb-2: Make CONFIG_THUMB2_KERNEL depend on !CPU_V6...

> This makes sense, because Thumb-2
> code can't execute on anything
> prior to ARMv7.

WRONG ... but you may be overlooking the
fact that there are at least three
flavors of Thumb-2 ...

 - Original, as on some ARMv6 chips ARM1156 was
the introductory Thumb2 core).  It's Thumb1
plus a very few 32-bit instructions.  (And
maybe the SIMD instructions too; I forget.  Not
suitable for OS work like IRQ handling, ISTR; or
at least, not as suitable as the ARMv7 flavors.

 -Microcontroller ... ARMv7M chips, and likely
not available on Linux-capable hardware ...   Suitable for RTOS work like IRQ
handling.



- Applications ... ARMv7A chips ... like those V6
chips with THUMB2, but with SIMD "multimedia"
 instructions and maybe a bit more.  Worth tossing
THUMB-EE in this bag too.


> 
>  
>  config THUMB2_KERNEL
>      bool "Compile the kernel in Thumb-2
> mode"
> -    depends on CPU_V7 &&
> EXPERIMENTAL
> +    depends on CPU_V7 && !CPU_V6
> && EXPERIMENTAL
>      select AEABI
>      select ARM_ASM_UNIFIED
>      help
> -- 
> 1.7.1
> 
> --
> 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
>

--
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


[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux