[yocto] [meta-zephyr][PATCH 6/7] arduino-101-sss: New MACHINE

Juro Bystricky juro.bystricky at intel.com
Sat Jan 14 11:01:52 PST 2017


Added support for Zephyr arduino_101_sss board (ARC core).
The support requires ARC toolchain.

Signed-off-by: Juro Bystricky <juro.bystricky at intel.com>
---
 conf/machine/arduino-101-sss.conf | 18 ++++++++++++++++++
 conf/machine/include/tune-arc.inc | 34 ++++++++++++++++++++++++++++++++++
 2 files changed, 52 insertions(+)
 create mode 100644 conf/machine/arduino-101-sss.conf
 create mode 100644 conf/machine/include/tune-arc.inc

diff --git a/conf/machine/arduino-101-sss.conf b/conf/machine/arduino-101-sss.conf
new file mode 100644
index 0000000..cab5a3f
--- /dev/null
+++ b/conf/machine/arduino-101-sss.conf
@@ -0,0 +1,18 @@
+#@TYPE: Machine
+#@NAME: arduino-101-sss
+
+#@DESCRIPTION: Machine configuration for Arduino 101 Board (ARC Core).
+
+TUNE_FEATURES ="arc quark-se no-sdata no-delete-null-pointer-checks"
+
+require conf/machine/include/tune-arc.inc
+PACKAGE_EXTRA_ARCHS_tune-arc = "arc"
+
+PREFERRED_VERSION_gcc-cross-${TARGET_ARCH} = "6.x.arc"
+PREFERRED_VERSION_gcc-cross-canadian-${TRANSLATED_TARGET_ARCH} = "6.x.arc"
+PREFERRED_VERSION_libgcc = "6.x.arc"
+
+PREFERRED_VERSION_binutils-cross-${TARGET_ARCH} = "2.26+gitarc"
+PREFERRED_VERSION_binutils-cross-canadian-${TRANSLATED_TARGET_ARCH} = "2.26+gitarc"
+
+TARGET_LINK_HASH_STYLE = ""
diff --git a/conf/machine/include/tune-arc.inc b/conf/machine/include/tune-arc.inc
new file mode 100644
index 0000000..56ddd3b
--- /dev/null
+++ b/conf/machine/include/tune-arc.inc
@@ -0,0 +1,34 @@
+DEFAULTTUNE ?= "arc"
+
+TUNE_ARCH = "arc"
+TUNE_PKGARCH = "arc"
+TUNE_FEATURES_tune-arc = "littleendian"
+TUNE_CCARGS = ""
+
+TUNEVALID[littleendian] = "Little endian mode"
+
+TUNEVALID[quark-se] = "Intel Quark SE support (ARC core)"
+TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'quark-se', ' -mcpu=quarkse_em', '', d)}"
+AVAILTUNES += "quark-se"
+
+TUNEVALID[nodata] = "ARC mo-sdata"
+TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'no-sdata', ' -mno-sdata', '', d)}"
+AVAILTUNES += "no-sdata"
+
+TUNEVALID[nodata] = "ARC no-delete-null-pointer-checks"
+TUNE_CCARGS .= "${@bb.utils.contains('TUNE_FEATURES', 'no-delete-null-pointer-checks', ' -fno-delete-null-pointer-checks', '', d)}"
+AVAILTUNES += "no-delete-null-pointer-checks"
+
+def arc_siteinfo_setfunc(archinfo, osinfo, targetinfo, d):
+	archinfo['arc'] = "endian-little bit-32 "
+	osinfo['linux'] = "common-linux common-glibc"
+	targetinfo['arc-linux'] = "arc-linux"
+	return archinfo, osinfo, targetinfo
+
+SITEINFO_EXTRA_DATAFUNCS = "arc_siteinfo_setfunc"
+
+def arc_machdata_setfunc(machdata, d):
+    machdata["elf"] = { "arc" : (195,    0,    0,  True,  32), }
+    return machdata
+
+PACKAGEQA_EXTRA_MACHDEFFUNCS = "arc_machdata_setfunc"
-- 
2.7.4




More information about the yocto mailing list