e3c246d4i: add initial board support

The e3c246d4i is an ASRock Rack Xeon E-2100/E-2200 series board with an
ASpeed AST2500 BMC.  It's a relatively low-cost system with a SPI flash
header available for easy programming.

Signed-off-by: Zev Weiss <zweiss@equinix.com>
Change-Id: I67ee57183215f3dd46b38f81994faeac8a1935c0
diff --git a/meta-asrock/meta-e3c246d4i/conf/bblayers.conf.sample b/meta-asrock/meta-e3c246d4i/conf/bblayers.conf.sample
new file mode 100644
index 0000000..2f2b5f3
--- /dev/null
+++ b/meta-asrock/meta-e3c246d4i/conf/bblayers.conf.sample
@@ -0,0 +1,29 @@
+# LAYER_CONF_VERSION is increased each time build/conf/bblayers.conf
+# changes incompatibly
+LCONF_VERSION = "8"
+
+BBPATH = "${TOPDIR}"
+BBFILES ?= ""
+
+BBLAYERS ?= " \
+  ##OEROOT##/meta \
+  ##OEROOT##/meta-poky \
+  ##OEROOT##/meta-openembedded/meta-oe \
+  ##OEROOT##/meta-openembedded/meta-networking \
+  ##OEROOT##/meta-openembedded/meta-python \
+  ##OEROOT##/meta-phosphor \
+  ##OEROOT##/meta-aspeed \
+  ##OEROOT##/meta-asrock \
+  ##OEROOT##/meta-asrock/meta-e3c246d4i \
+  "
+BBLAYERS_NON_REMOVABLE ?= " \
+  ##OEROOT##/meta \
+  ##OEROOT##/meta-poky \
+  ##OEROOT##/meta-openembedded/meta-oe \
+  ##OEROOT##/meta-openembedded/meta-networking \
+  ##OEROOT##/meta-openembedded/meta-python \
+  ##OEROOT##/meta-phosphor \
+  ##OEROOT##/meta-aspeed \
+  ##OEROOT##/meta-asrock \
+  ##OEROOT##/meta-asrock/meta-e3c246d4i \
+  "
diff --git a/meta-asrock/meta-e3c246d4i/conf/layer.conf b/meta-asrock/meta-e3c246d4i/conf/layer.conf
new file mode 100644
index 0000000..aff53c4
--- /dev/null
+++ b/meta-asrock/meta-e3c246d4i/conf/layer.conf
@@ -0,0 +1,10 @@
+# We have a conf and classes directory, add to BBPATH
+BBPATH .= ":${LAYERDIR}"
+
+# We have recipes-* directories, add to BBFILES
+BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
+            ${LAYERDIR}/recipes-*/*/*.bbappend"
+
+BBFILE_COLLECTIONS += "e3c246d4i-layer"
+BBFILE_PATTERN_e3c246d4i-layer = "^${LAYERDIR}/"
+LAYERSERIES_COMPAT_e3c246d4i-layer = "gatesgarth hardknott"
diff --git a/meta-asrock/meta-e3c246d4i/conf/local.conf.sample b/meta-asrock/meta-e3c246d4i/conf/local.conf.sample
new file mode 100644
index 0000000..f4d6cb6
--- /dev/null
+++ b/meta-asrock/meta-e3c246d4i/conf/local.conf.sample
@@ -0,0 +1,21 @@
+MACHINE ??= "e3c246d4i"
+DISTRO ?= "openbmc-phosphor"
+PACKAGE_CLASSES ?= "package_rpm"
+SANITY_TESTED_DISTROS_append ?= " *"
+EXTRA_IMAGE_FEATURES = "debug-tweaks"
+USER_CLASSES ?= "buildstats image-mklibs image-prelink"
+PATCHRESOLVE = "noop"
+BB_DISKMON_DIRS = "\
+    STOPTASKS,${TMPDIR},1G,100K \
+    STOPTASKS,${DL_DIR},1G,100K \
+    STOPTASKS,${SSTATE_DIR},1G,100K \
+    STOPTASKS,/tmp,100M,100K \
+    ABORT,${TMPDIR},100M,1K \
+    ABORT,${DL_DIR},100M,1K \
+    ABORT,${SSTATE_DIR},100M,1K \
+    ABORT,/tmp,10M,1K"
+CONF_VERSION = "1"
+INHERIT += "extrausers"
+EXTRA_USERS_PARAMS = " \
+  usermod -p '\$1\$UGMqyqdG\$FZiylVFmRRfl9Z0Ue8G7e/' root; \
+  "
diff --git a/meta-asrock/meta-e3c246d4i/conf/machine/e3c246d4i.conf b/meta-asrock/meta-e3c246d4i/conf/machine/e3c246d4i.conf
new file mode 100644
index 0000000..ad67ece
--- /dev/null
+++ b/meta-asrock/meta-e3c246d4i/conf/machine/e3c246d4i.conf
@@ -0,0 +1,12 @@
+KMACHINE = "aspeed"
+KERNEL_DEVICETREE = "${KMACHINE}-bmc-asrock-${MACHINE}.dtb"
+
+UBOOT_MACHINE = "ast_g5_phy_config"
+
+FLASH_SIZE = "32768"
+
+require conf/machine/include/ast2500.inc
+require conf/machine/include/obmc-bsp-common.inc
+
+PREFERRED_PROVIDER_virtual/obmc-flash-mgmt = "packagegroup-asrock-apps"
+PREFERRED_PROVIDER_virtual/obmc-system-mgmt = "packagegroup-asrock-apps"