Create Palmetto inventory recipe.

Create a recipe that will install Palmetto's inventory
file into the flash image.  This is mostly a proof of
concept to show how the inventory could be data driven.
A future commit will update inventory_manager.py to use it.
Eventually, this file will be auto generated from the machine
readable workbook.

Change-Id: I2723ff0dbc25807561ca3f9355ccfb64353119e5
Signed-off-by: Matt Spinler <spinler@us.ibm.com>
diff --git a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-palmetto/recipes-phosphor/workbook/palmetto-inventory.bb b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-palmetto/recipes-phosphor/workbook/palmetto-inventory.bb
new file mode 100644
index 0000000..0133c87
--- /dev/null
+++ b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-palmetto/recipes-phosphor/workbook/palmetto-inventory.bb
@@ -0,0 +1,19 @@
+SUMMARY = "Palmetto System Inventory"
+DESCRIPTION = "Provides the inventory file for Palmetto"
+PR = "r1"
+
+inherit obmc-phosphor-license
+inherit allarch
+
+RPROVIDES_${PN} = "virtual-system-inventory-data"
+
+SRC_URI += "file://palmetto_inventory.json"
+
+FILES_${PN} += "${datadir}/inventory"
+
+do_install() {
+    install -d ${D}${datadir}/inventory
+    install -m 0644 palmetto_inventory.json ${D}${datadir}/inventory/inventory.json
+}
+
+S = "${WORKDIR}"
diff --git a/meta-openbmc-machines/meta-openpower/meta-ibm/meta-palmetto/recipes-phosphor/workbook/palmetto-inventory/palmetto_inventory.json b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-palmetto/recipes-phosphor/workbook/palmetto-inventory/palmetto_inventory.json
new file mode 100644
index 0000000..bcc4fcc
--- /dev/null
+++ b/meta-openbmc-machines/meta-openpower/meta-ibm/meta-palmetto/recipes-phosphor/workbook/palmetto-inventory/palmetto_inventory.json
@@ -0,0 +1,138 @@
+{
+   "<inventory_root>/system" : {
+      "is_fru" : 1,
+      "fru_type" : "SYSTEM"
+   },
+   "<inventory_root>/system/chassis" : {
+      "is_fru" : 1,
+      "fru_type" : "SYSTEM"
+   },
+   "<inventory_root>/system/chassis/motherboard" : {
+      "is_fru" : 1,
+      "fru_type" : "MAIN_PLANAR"
+   },
+   "<inventory_root>/system/chassis/motherboard/bmc" : {
+      "is_fru" : 0,
+      "fru_type" : "BMC"
+   },
+   "<inventory_root>/system/chassis/motherboard/cpu" : {
+      "is_fru" : 1,
+      "fru_type" : "CPU"
+   },
+   "<inventory_root>/system/chassis/motherboard/cpu/core0" : {
+      "is_fru" : 0,
+      "fru_type" : "CORE"
+   },
+   "<inventory_root>/system/chassis/motherboard/cpu/core1" : {
+      "is_fru" : 0,
+      "fru_type" : "CORE"
+   },
+   "<inventory_root>/system/chassis/motherboard/cpu/core10" : {
+      "is_fru" : 0,
+      "fru_type" : "CORE"
+   },
+   "<inventory_root>/system/chassis/motherboard/cpu/core11" : {
+      "is_fru" : 0,
+      "fru_type" : "CORE"
+   },
+   "<inventory_root>/system/chassis/motherboard/cpu/core2" : {
+      "is_fru" : 0,
+      "fru_type" : "CORE"
+   },
+   "<inventory_root>/system/chassis/motherboard/cpu/core3" : {
+      "is_fru" : 0,
+      "fru_type" : "CORE"
+   },
+   "<inventory_root>/system/chassis/motherboard/cpu/core4" : {
+      "is_fru" : 0,
+      "fru_type" : "CORE"
+   },
+   "<inventory_root>/system/chassis/motherboard/cpu/core5" : {
+      "is_fru" : 0,
+      "fru_type" : "CORE"
+   },
+   "<inventory_root>/system/chassis/motherboard/cpu/core6" : {
+      "is_fru" : 0,
+      "fru_type" : "CORE"
+   },
+   "<inventory_root>/system/chassis/motherboard/cpu/core7" : {
+      "is_fru" : 0,
+      "fru_type" : "CORE"
+   },
+   "<inventory_root>/system/chassis/motherboard/cpu/core8" : {
+      "is_fru" : 0,
+      "fru_type" : "CORE"
+   },
+   "<inventory_root>/system/chassis/motherboard/cpu/core9" : {
+      "is_fru" : 0,
+      "fru_type" : "CORE"
+   },
+   "<inventory_root>/system/chassis/motherboard/dimm0" : {
+      "is_fru" : 1,
+      "fru_type" : "DIMM"
+   },
+   "<inventory_root>/system/chassis/motherboard/dimm1" : {
+      "is_fru" : 1,
+      "fru_type" : "DIMM"
+   },
+   "<inventory_root>/system/chassis/motherboard/dimm2" : {
+      "is_fru" : 1,
+      "fru_type" : "DIMM"
+   },
+   "<inventory_root>/system/chassis/motherboard/dimm3" : {
+      "is_fru" : 1,
+      "fru_type" : "DIMM"
+   },
+   "<inventory_root>/system/chassis/motherboard/fan0" : {
+      "is_fru" : 0,
+      "fru_type" : "FAN"
+   },
+   "<inventory_root>/system/chassis/motherboard/fan1" : {
+      "is_fru" : 0,
+      "fru_type" : "FAN"
+   },
+   "<inventory_root>/system/chassis/motherboard/fan2" : {
+      "is_fru" : 0,
+      "fru_type" : "FAN"
+   },
+   "<inventory_root>/system/chassis/motherboard/fan3" : {
+      "is_fru" : 0,
+      "fru_type" : "FAN"
+   },
+   "<inventory_root>/system/chassis/motherboard/fan4" : {
+      "is_fru" : 0,
+      "fru_type" : "FAN"
+   },
+   "<inventory_root>/system/chassis/motherboard/membuf" : {
+      "is_fru" : 0,
+      "fru_type" : "MEMBUF"
+   },
+   "<inventory_root>/system/chassis/io_board/pcie_slot0" : {
+      "is_fru" : 1,
+      "fru_type" : "PCIE_CARD"
+   },
+   "<inventory_root>/system/chassis/io_board/pcie_slot1" : {
+      "is_fru" : 1,
+      "fru_type" : "PCIE_CARD"
+   },
+   "<inventory_root>/system/chassis/motherboard/pcieclock" : {
+      "is_fru" : 0,
+      "fru_type" : "CLOCK"
+   },
+   "<inventory_root>/system/chassis/motherboard/refclock" : {
+      "is_fru" : 0,
+      "fru_type" : "CLOCK"
+   },
+   "<inventory_root>/system/chassis/motherboard/todclock" : {
+      "is_fru" : 0,
+      "fru_type" : "CLOCK"
+   },
+   "<inventory_root>/system/chassis/motherboard/apss" : {
+      "is_fru" : 0,
+      "fru_type" : "APSS"
+   },
+   "<inventory_root>/system/systemevent" : {
+      "is_fru" : 0,
+      "fru_type" : "SYSTEM_EVENT"
+   }
+}