[Buildroot] [RFC] Buildroot support for X1000
Arnout Vandecappelle
arnout at mind.be
Fri Oct 16 22:00:58 UTC 2015
On 16-10-15 18:27, Kinsella, Ray wrote:
> Hi Arnout,
>
> X1000 is the Intel microprocessor that ships with Intel Galileo Gen 1/2.
> As discussed previously, here is an RFC that prototypes changes to arch
> and toolchain-wrapper to omit the lock prefix for the X1000.
>
> If you agree, I will send a formal patch with these.
Looks good, some remarks below.
>
> Ray K
>
> Signed-off-by: Ray Kinsella <ray.kinsella at intel.com>
> ---
> arch/Config.in.x86 | 4 ++++
> toolchain/toolchain-wrapper.c | 3 +++
> toolchain/toolchain-wrapper.mk | 4 ++++
> 4 files changed, 11 insertions(+), 11 deletions(-)
> delete mode 100644 board/intel/galileo/patches/binutils/2.25/default-lock-prefix.patch
>
> diff --git a/arch/Config.in.x86 b/arch/Config.in.x86
> index 43f6abc..a284e4f 100644
> --- a/arch/Config.in.x86
> +++ b/arch/Config.in.x86
> @@ -34,6 +34,9 @@ config BR2_x86_i486
> config BR2_x86_i586
> bool "i586"
> depends on !BR2_x86_64
> +config BR2_x86_X1000
We (incorrectly) use lowercase everywhere for the architecture symbols.
> + bool "X1000"
Same here.
> + depends on !BR2_x86_64
Even though there are currently no help texts anywhere for the architecture
options, I really think it's worthwhile to add it. Especially for this one,
since it is really a special case of i586 with an additional workaround.
> config BR2_x86_i686
> bool "i686"
> depends on !BR2_x86_64
> @@ -202,6 +205,7 @@ config BR2_ARCH
> default "i386" if BR2_x86_i386
> default "i486" if BR2_x86_i486
> default "i586" if BR2_x86_i586
> + default "i586" if BR2_x86_X1000
> default "i586" if BR2_x86_pentium_mmx
> default "i586" if BR2_x86_geode
> default "i586" if BR2_x86_c3
You should also add it to BR2_GCC_TARGET_ARCH.
> diff --git a/toolchain/toolchain-wrapper.c b/toolchain/toolchain-wrapper.c
> index 632696c..ef53d36 100644
> --- a/toolchain/toolchain-wrapper.c
> +++ b/toolchain/toolchain-wrapper.c
> @@ -63,6 +63,9 @@ static char *predef_args[] = {
> #ifdef BR_64
> "-m64",
> #endif
> +#ifdef BR_X1000
Here, I would make it more explicit what is really done, like BR_OMIT_LOCK_PREFIX.
Regards,
Arnout
> + "-Wa,-momit-lock-prefix=yes",
> +#endif
> #ifdef BR_BINFMT_FLAT
> "-Wl,-elf2flt",
> #endif
> diff --git a/toolchain/toolchain-wrapper.mk b/toolchain/toolchain-wrapper.mk
> index c78363a..893669c 100644
> --- a/toolchain/toolchain-wrapper.mk
> +++ b/toolchain/toolchain-wrapper.mk
> @@ -20,6 +20,10 @@ ifeq ($(BR2_CCACHE),y)
> TOOLCHAIN_WRAPPER_ARGS += -DBR_CCACHE
> endif
>
> +ifeq ($(BR2_x86_X1000),y)
> +TOOLCHAIN_WRAPPER_ARGS += -DBR_X1000
> +endif
> +
> ifeq ($(BR2_CCACHE_USE_BASEDIR),y)
> TOOLCHAIN_WRAPPER_ARGS += -DBR_CCACHE_BASEDIR='"$(BASE_DIR)"'
> endif
>
--
Arnout Vandecappelle arnout at mind be
Senior Embedded Software Architect +32-16-286500
Essensium/Mind http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint: 7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF
More information about the buildroot
mailing list