Hello all! On Tuesday 07 April 2009 08:55:25 Mike Frysinger wrote: > On Tuesday 07 April 2009 01:26:33 Sagar Borikar wrote: > > Just wanted to check whether cortex A8 (ARM) is supported in uClibc? > > uClibc doesnt care what ARM variant you're using. it does have optional > support for things like EABI/thumb/interwork, but that's a different question.
So why is there that choice when ARM is selected? (X) Generic Arm ( ) Arm 610 ( ) Arm 710 ( ) Arm 7TDMI ( ) Arm 720T ( ) Arm 920T [--SNIP--] ( ) Arm Cortex-M3 ( ) Arm Cortex-M1 ( ) Intel StrongArm SA-110 ( ) Intel StrongArm SA-1100 ( ) Intel Xscale ( ) Intel Xscale With WMMX PXA27x Cortex-A8 is not the same instruction set as, say, Xscale. So for us using Cortex-A8, we're either stuck with using "Generic Arm", or using an inadequate variant. Note in particular that we have a choice for Cortex-M3 (which kinda makes sense, as it is Thumb2-only, and thus can not use ARM insns). And each of the choices above are turned into a specific selection of compiler options. For example: Prompt : Arm 1176JZ-S Symbol : CONFIG_ARM1176JZ_S CPU_CFLAGS: -mtune=arm1176jz-s -march=armv6 Of course the processor variant we're building uClibc to run on matters! Or I entirely missed something... Yes, you can configure your toolchain to spit out the adequate insn set by default, so either we tell the user to do so, or we add choice entries for all variants that we are _aware_ of, and that we can make work. Please find attached a patch to add basic (and untested!) support for Cortex-A8, just for the sake of having a starting point. Unless I'm mistaken, that's all there is to it... I'll try to test this in the evening (GMT+2) or tomorrow... Also note that most other architectures also have a variant selection: cris, h8300, i386, mips, powerpc, superh, sh64 (which has only one variant available, but the menu is here), sparc. Regards, Yann E. MORIN. -- .-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +0/33 662376056 | Software Designer | \ / CAMPAIGN | ___ | | --==< ^_^ >==-- `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | `------------------------------^-------^------------------^--------------------'
Index: uClibc/extra/Configs/Config.arm =================================================================== --- uClibc/extra/Configs/Config.arm (revision 26012) +++ uClibc/extra/Configs/Config.arm (working copy) @@ -107,6 +107,11 @@ bool "Arm 1176JZF-S" select ARCH_HAS_MMU +config CONFIG_ARM_CORTEX_A8 + bool "Arm Cortex-A8" + select ARCH_HAS_MMU +# select USE_BX + config CONFIG_ARM_CORTEX_M3 bool "Arm Cortex-M3" select ARCH_HAS_NO_MMU Index: uClibc/Rules.mak =================================================================== --- uClibc/Rules.mak (revision 26012) +++ uClibc/Rules.mak (working copy) @@ -330,6 +330,7 @@ CPU_CFLAGS-$(CONFIG_ARM_XSCALE)+=$(call check_gcc,-mtune=xscale,-mtune=strongarm110) CPU_CFLAGS-$(CONFIG_ARM_XSCALE)+=-march=armv5te -Wa,-mcpu=xscale CPU_CFLAGS-$(CONFIG_ARM_IWMMXT)+=-march=iwmmxt -Wa,-mcpu=iwmmxt -mabi=iwmmxt + CPU_CFLAGS-$(CONFIG_ARM_CORTEX_A8)+=-mcpu=cortex-a8 -mtune=cortex-a8 CPU_CFLAGS-$(CONFIG_ARM_CORTEX_M3)+=-mcpu=cortex-m3 -mthumb CPU_CFLAGS-$(CONFIG_ARM_CORTEX_M1)+=-mcpu=cortex-m1 -mthumb endif
_______________________________________________ uClibc mailing list uClibc@uclibc.org http://lists.busybox.net/mailman/listinfo/uclibc