Buildroot support for Intel X1000
Kinsella
PATCH 1/1 Buildroot support for Intel X1000
The Intel X1000 is the Pentium class microprocessor that ships with Galileo Gen 1/2. This patch adds changes to arch and toolchain-wrapper to omit the lock prefix for the X1000.
--- arch/Config.in.x86 | 10 ++++++++++ toolchain/toolchain-wrapper.c | 3 +++ toolchain/toolchain-wrapper.mk | 4 ++++ 3 files changed, 17 insertions(+)
arch/Config.in.x86 +10 -0
@@ -34,6 +34,14 @@ config BR2_x86_i486 config BR2_x86_i586 bool "i586" depends on !BR2_x86_64 +config BR2_x86_x1000 + bool "x1000" + depends on !BR2_x86_64 + help + The Intel X1000 is a Pentium class microprocessor in the Quark + (sub-Atom) Product Line. The X1000 has a bug on the lock prefix + requiring that prefix must be stripped at build time. See + https://en.wikipedia.org/wiki/Intel_Quark config BR2_x86_i686 bool "i686" depends on !BR2_x86_64
@@ -202,6 +210,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
@@ -240,6 +249,7 @@ config BR2_GCC_TARGET_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 "pentium-mmx" if BR2_x86_pentium_mmx default "i686" if BR2_x86_i686 default "pentiumpro" if BR2_x86_pentiumpro
toolchain/toolchain-wrapper.c +3 -0
@@ -63,6 +63,9 @@ static char *predef_args[] = {#ifdef BR_64 "-m64",#endif +#ifdef BR_OMIT_LOCK_PREFIX + "-Wa,-momit-lock-prefix=yes", +#endif #ifdef BR_BINFMT_FLAT "-Wl,-elf2flt",#endif
toolchain/toolchain-wrapper.mk +4 -0
@@ -20,6 +20,10 @@ ifeq ($(BR2_CCACHE),y) TOOLCHAIN_WRAPPER_ARGS += -DBR_CCACHE endif +ifeq ($(BR2_x86_x1000),y) +TOOLCHAIN_WRAPPER_ARGS += -DBR_OMIT_LOCK_PREFIX +endif + ifeq ($(BR2_CCACHE_USE_BASEDIR),y) TOOLCHAIN_WRAPPER_ARGS += -DBR_CCACHE_BASEDIR='"$(BASE_DIR)"' endif
Signature · 1 line
2.1.0
PATCH 1/1 Buildroot support for Intel X1000
Quoted 5 lines · Ray
The Intel X1000 is the Pentium class microprocessor that ships with Galileo Gen 1/2. This patch adds changes to arch and toolchain-wrapper to omit the lock prefix for the X1000.
Signed-off-by Ray Kinsella <[email protected]>
Stylistic comments below.
Quoted 12 lines
--- arch/Config.in.x86 | 10 ++++++++++ toolchain/toolchain-wrapper.c | 3 +++ toolchain/toolchain-wrapper.mk | 4 ++++ 3 files changed, 17 insertions(+)arch/Config.in.x86 +0
-0@@ -34,6 +34,14 @@ config BR2_x86_i486 config BR2_x86_i586
arch/Config.in.x86 config BR2_x86_i486 · line 44
Quoted 10 lines
arch/Config.in.x86 +8
-0bool "i586" depends on !BR2_x86_64 +config BR2_x86_x1000 + bool "x1000" + depends on !BR2_x86_64 + help + The Intel X1000 is a Pentium class microprocessor in the Quark + (sub-Atom) Product Line. The X1000 has a bug on the lock prefix + requiring that prefix must be stripped at build time. See + https://en.wikipedia.org/wiki/Intel_Quark
Now that it has become a full config option including help text, perhaps we
should empty lines around it like we do elsewhere. OTOH that breaks the current flow of the file...
Also, perhaps the URL should be on a separate line like we do for packages.
Regards,
Arnout
Quoted 3 lines
arch/Config.in.x86 +0
-0config BR2_x86_i686 bool "i686" depends on !BR2_x86_64
[snip]
Signature · 6 lines
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
PATCH 1/1 Buildroot support for Intel X1000
In reply to KinsellaRay,
Quoted 5 lines · Ray
The Intel X1000 is the Pentium class microprocessor that ships with Galileo Gen 1/2. This patch adds changes to arch and toolchain-wrapper to omit the lock prefix for the X1000.
Signed-off-by Ray Kinsella <[email protected]>
I've applied your patch, after doing some small tweaks (see below).
Quoted 11 lines
--- arch/Config.in.x86 | 10 ++++++++++ toolchain/toolchain-wrapper.c | 3 +++ toolchain/toolchain-wrapper.mk | 4 ++++ 3 files changed, 17 insertions(+)arch/Config.in.x86 +0
-0
arch/Config.in.x86 config BR2_x86_i486 · line 41
Quoted 8 lines
arch/Config.in.x86 +5
-0@@ -34,6 +34,14 @@ config BR2_x86_i486 config BR2_x86_i586 bool "i586" depends on !BR2_x86_64 +config BR2_x86_x1000 + bool "x1000" + depends on !BR2_x86_64 + help + The Intel X1000 is a Pentium class microprocessor in the Quark
Indentation for help text is one tab + two spaces. Also, there was a trailing space on this line.
arch/Config.in.x86 config BR2_x86_i486 · line 44
Quoted 3 lines
arch/Config.in.x86 +3
-0+ (sub-Atom) Product Line. The X1000 has a bug on the lock prefix + requiring that prefix must be stripped at build time. See + https://en.wikipedia.org/wiki/Intel_Quark
And the lines were a bit too long, so I rewrapped them.
arch/Config.in.x86 config BR2_x86_i486 · line 46
Quoted 2 lines
arch/Config.in.x86 +2
-0+#ifdef BR_OMIT_LOCK_PREFIX + "-Wa,-momit-lock-prefix=yes",
There was also a trailing space here.
And finally, I've changed the commit title to:
arch/x86: add support for Intel x1000
We indeed like to have some sort of "category" prefix for all patches. Generally it's just the package name (when the patch is touching a package), but we also try to do the same for patches touching other things as well.
Thanks!
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
Kinsella
PATCH 1/1 Buildroot support for Intel X1000
Hi Thomas,
Thanks for that.
I took a quick check of my board/galileo patchset.
It is free for errant trailing spaces and has the required "category" prefix.
However, I had a question on tabbing, for files like grub.cfg or genimage.cfg.
Is there a convention? are tabs _or_ spaces fine?
Thanks,
Ray K
Quoted 57 lines · Thomas Petazzoni
Ray,
Quoted 5 lines · Ray
The Intel X1000 is the Pentium class microprocessor that ships with Galileo Gen 1/2. This patch adds changes to arch and toolchain-wrapper to omit the lock prefix for the X1000.
Signed-off-by Ray Kinsella <[email protected]>I've applied your patch, after doing some small tweaks (see below).
Quoted 11 lines
--- arch/Config.in.x86 | 10 ++++++++++ toolchain/toolchain-wrapper.c | 3 +++ toolchain/toolchain-wrapper.mk | 4 ++++ 3 files changed, 17 insertions(+)arch/Config.in.x86 +0
-0arch/Config.in.x86 config BR2_x86_i486 · line 41
Quoted 8 lines
arch/Config.in.x86 +5
-0@@ -34,6 +34,14 @@ config BR2_x86_i486 config BR2_x86_i586 bool "i586" depends on !BR2_x86_64 +config BR2_x86_x1000 + bool "x1000" + depends on !BR2_x86_64 + help + The Intel X1000 is a Pentium class microprocessor in the QuarkIndentation for help text is one tab + two spaces. Also, there was a trailing space on this line.
arch/Config.in.x86 config BR2_x86_i486 · line 44
Quoted 3 lines
arch/Config.in.x86 +3
-0+ (sub-Atom) Product Line. The X1000 has a bug on the lock prefix + requiring that prefix must be stripped at build time. See + https://en.wikipedia.org/wiki/Intel_QuarkAnd the lines were a bit too long, so I rewrapped them.
arch/Config.in.x86 config BR2_x86_i486 · line 46
Quoted 2 lines
arch/Config.in.x86 +2
-0+#ifdef BR_OMIT_LOCK_PREFIX + "-Wa,-momit-lock-prefix=yes",There was also a trailing space here.
And finally, I've changed the commit title to:
arch/x86: add support for Intel x1000We indeed like to have some sort of "category" prefix for all patches. Generally it's just the package name (when the patch is touching a package), but we also try to do the same for patches touching other things as well.
Thanks!
Thomas
PATCH 1/1 Buildroot support for Intel X1000
Dear Kinsella, Ray,
Quoted 3 lines · Ray
I took a quick check of my board/galileo patchset.
It is free for errant trailing spaces and has the required "category" prefix.
Thanks for checking.
Quoted 3 lines
However, I had a question on tabbing, for files like grub.cfg or genimage.cfg.
Is there a convention? are tabs _or_ spaces fine?
I think we more commonly use tabs.
Thanks,
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com