On 3/14/13 12:41 PM, Marcin Juszkiewicz wrote:
Signed-off-by: Marcin Juszkiewicz <marcin.juszkiew...@linaro.org>
---
meta/conf/machine/include/aarch64/README | 9 +++++++++
meta/conf/machine/include/aarch64/arch-aarch64.inc | 16 ++++++++++++++++
2 files changed, 25 insertions(+)
create mode 100644 meta/conf/machine/include/aarch64/README
create mode 100644 meta/conf/machine/include/aarch64/arch-aarch64.inc
diff --git a/meta/conf/machine/include/aarch64/README
b/meta/conf/machine/include/aarch64/README
new file mode 100644
index 0000000..59c8710
--- /dev/null
+++ b/meta/conf/machine/include/aarch64/README
@@ -0,0 +1,9 @@
+2013-03-14 - Marcin Juszkiewicz <marcin.juszkiew...@linaro.org>
+ - Initial Revision
+
+Currently only little endian is defined for AArch64.
+
+AArch64 is 64-bit ARM architecture.
+
+Also known as ARMv8 (instruction set) or ARM64 (name in Linux kernel and
+architecture name in Debian and derived).
diff --git a/meta/conf/machine/include/aarch64/arch-aarch64.inc
b/meta/conf/machine/include/aarch64/arch-aarch64.inc
new file mode 100644
index 0000000..5177d7f
--- /dev/null
+++ b/meta/conf/machine/include/aarch64/arch-aarch64.inc
@@ -0,0 +1,16 @@
+DEFAULTTUNE ?= "aarch64"
+
+ARMPKGARCH ?= "aarch64"
+
+TUNEVALID[aarch64] = "Enable instructions for aarch64"
+TUNECONFLICTS[aarch64] = ""
+MACHINEOVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "aarch64", ":aarch64",
"" ,d)}"
+
+# Little Endian base configs
+AVAILTUNES += "aarch64"
+TUNE_FEATURES_tune-aarch64 ?= "aarch64"
+
+TUNE_ARCH = "aarch64"
+TUNE_PKGARCH = "aarch64"
+
+PACKAGE_EXTRA_ARCHS += "aarch64"
I'm not completely familiar with aarch64. So a couple of questions. The first
is is it supposed to allow a multilib configuration? I.e. being able to run
both 32-bit "arm/thumb" code & aarch64 code on the same machine? If so, a
"BASE_LIB_tune-aarch64" should be defined with the right value.
Second are there expected to be tuned variants for the aarch64, i.e.
processor/core tunings that need to get embedded into the package arch. if so
the definition of the TUNE_ARCH and TUNE_PKGARCH should probably be based on the
tune_feature... (This may simply not be necessary though as this is a new
architecture that will expand and grow...)
My suggestion then, to help with future growth is:
DEFAULTTUNE ?= "aarch64"
ARMPKGARCH ?= "aarch64"
TUNEVALID[aarch64] = "Enable instructions for aarch64"
TUNECONFLICTS[aarch64] = ""
MACHINEOVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "aarch64",
":aarch64", "" ,d)}"
# Little Endian base configs
AVAILTUNES += "aarch64"
TUNE_FEATURES_tune-aarch64 ?= "aarch64"
BASE_LIB_tune-aarch64 = "lib64" <-- guess on my part
TUNE_ARCH_tune-aarch64 = "aarch64"
TUNE_PKGARCH_tune-aarch64 = "aarch64"
PACKAGE_EXTRA_ARCHS_tune-aarch64 += "aarch64"
_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core