meta-ibm/genesis3: Assign MAC from board EEPROM

Add phosphor-ipmi-fru and ipmi-fru-properties configurations
to parse the MAC address from board IPMI EEPROM.

Add config for phosphor-network to sync MAC to u-boot env.

Change-Id: I76c294f8822da11da2fedef5fdd842ce6d10efd0
Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com>
diff --git a/meta-ibm/meta-genesis3/recipes-phosphor/configuration/genesis3-yaml-config.bb b/meta-ibm/meta-genesis3/recipes-phosphor/configuration/genesis3-yaml-config.bb
new file mode 100644
index 0000000..aa14e8c
--- /dev/null
+++ b/meta-ibm/meta-genesis3/recipes-phosphor/configuration/genesis3-yaml-config.bb
@@ -0,0 +1,27 @@
+SUMMARY = "YAML configuration for IBM Genesis3"
+PR = "r1"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
+
+inherit allarch
+
+SRC_URI:genesis3 = " \
+    file://genesis3-ipmi-fru.yaml \
+    file://genesis3-ipmi-fru-properties.yaml \
+    "
+
+S = "${WORKDIR}"
+
+do_install:genesis3() {
+    install -m 0644 -D genesis3-ipmi-fru.yaml \
+        ${D}${datadir}/${BPN}/ipmi-fru-read.yaml
+    install -m 0644 -D genesis3-ipmi-fru-properties.yaml \
+        ${D}${datadir}/${BPN}/ipmi-extra-properties.yaml
+}
+
+FILES:${PN}-dev = " \
+    ${datadir}/${BPN}/ipmi-fru-read.yaml \
+    ${datadir}/${BPN}/ipmi-extra-properties.yaml \
+    "
+
+ALLOW_EMPTY:${PN} = "1"
diff --git a/meta-ibm/meta-genesis3/recipes-phosphor/configuration/genesis3-yaml-config/genesis3-ipmi-fru-properties.yaml b/meta-ibm/meta-genesis3/recipes-phosphor/configuration/genesis3-yaml-config/genesis3-ipmi-fru-properties.yaml
new file mode 100644
index 0000000..38ced08
--- /dev/null
+++ b/meta-ibm/meta-genesis3/recipes-phosphor/configuration/genesis3-yaml-config/genesis3-ipmi-fru-properties.yaml
@@ -0,0 +1,15 @@
+/system/chassis/motherboard/bmc/ethernet0:
+    xyz.openbmc_project.Inventory.Decorator.Replaceable:
+        FieldReplaceable: 'false'
+    xyz.openbmc_project.Inventory.Decorator.Cacheable:
+        Cached: 'true'
+    xyz.openbmc_project.Inventory.Item:
+        Present: 'true'
+
+/system/chassis/motherboard/bmc/ethernet1:
+    xyz.openbmc_project.Inventory.Decorator.Replaceable:
+        FieldReplaceable: 'false'
+    xyz.openbmc_project.Inventory.Decorator.Cacheable:
+        Cached: 'true'
+    xyz.openbmc_project.Inventory.Item:
+        Present: 'true'
diff --git a/meta-ibm/meta-genesis3/recipes-phosphor/configuration/genesis3-yaml-config/genesis3-ipmi-fru.yaml b/meta-ibm/meta-genesis3/recipes-phosphor/configuration/genesis3-yaml-config/genesis3-ipmi-fru.yaml
new file mode 100644
index 0000000..a48757c
--- /dev/null
+++ b/meta-ibm/meta-genesis3/recipes-phosphor/configuration/genesis3-yaml-config/genesis3-ipmi-fru.yaml
@@ -0,0 +1,20 @@
+0:
+    /system/chassis/motherboard/bmc/ethernet0:
+        entityID: 6
+        entityInstance: 1
+        interfaces:
+            xyz.openbmc_project.Inventory.Item.NetworkInterface:
+                MACAddress:
+                    IPMIFruProperty: Custom Field 2
+                    IPMIFruSection: Board
+            xyz.openbmc_project.Inventory.Item.Ethernet:
+    /system/chassis/motherboard/bmc/ethernet1:
+        entityID: 6
+        entityInstance: 2
+        interfaces:
+            xyz.openbmc_project.Inventory.Item.NetworkInterface:
+                MACAddress:
+                    IPMIFruProperty: Custom Field 3
+                    IPMIFruSection: Board
+            xyz.openbmc_project.Inventory.Item.Ethernet:
+