summaryrefslogtreecommitdiffstats
path: root/meta-openbmc-machines/meta-openpower
diff options
context:
space:
mode:
Diffstat (limited to 'meta-openbmc-machines/meta-openpower')
-rw-r--r--meta-openbmc-machines/meta-openpower/classes/openpower-fru-vpd.bbclass1
-rw-r--r--meta-openbmc-machines/meta-openpower/common/recipes-phosphor/vpd/openpower-fru-properties-example-native.bb22
-rw-r--r--meta-openbmc-machines/meta-openpower/common/recipes-phosphor/vpd/openpower-fru-properties-example/example.yaml6
-rw-r--r--meta-openbmc-machines/meta-openpower/common/recipes-phosphor/vpd/openpower-fru-properties-mrw-native.bb28
-rw-r--r--meta-openbmc-machines/meta-openpower/common/recipes-phosphor/vpd/openpower-fru-properties-mrw/config.yaml11
-rw-r--r--meta-openbmc-machines/meta-openpower/common/recipes-phosphor/vpd/openpower-fru-vpd.bb6
-rw-r--r--meta-openbmc-machines/meta-openpower/conf/machine/include/openpower.inc2
7 files changed, 75 insertions, 1 deletions
diff --git a/meta-openbmc-machines/meta-openpower/classes/openpower-fru-vpd.bbclass b/meta-openbmc-machines/meta-openpower/classes/openpower-fru-vpd.bbclass
index e86a2196f..a97774e35 100644
--- a/meta-openbmc-machines/meta-openpower/classes/openpower-fru-vpd.bbclass
+++ b/meta-openbmc-machines/meta-openpower/classes/openpower-fru-vpd.bbclass
@@ -2,3 +2,4 @@ vpdlayout_datadir="${datadir}/openpower-fru-vpd/vpdlayout"
inventory_datadir_name="/openpower-fru-inventory/inventory"
inventory_datadir_native="${datadir}${inventory_datadir_name}"
inventory_envdir="${envfiledir}/obmc"
+properties_datadir="${datadir}/openpower-fru-vpd/properties"
diff --git a/meta-openbmc-machines/meta-openpower/common/recipes-phosphor/vpd/openpower-fru-properties-example-native.bb b/meta-openbmc-machines/meta-openpower/common/recipes-phosphor/vpd/openpower-fru-properties-example-native.bb
new file mode 100644
index 000000000..aa79432d1
--- /dev/null
+++ b/meta-openbmc-machines/meta-openpower/common/recipes-phosphor/vpd/openpower-fru-properties-example-native.bb
@@ -0,0 +1,22 @@
+SUMMARY = "FRU properties config for openpower-vpd-parser"
+PR = "r1"
+
+inherit native
+inherit obmc-phosphor-license
+inherit openpower-fru-vpd
+
+SRC_URI += "file://example.yaml"
+
+PROVIDES += "virtual/openpower-fru-properties"
+
+S = "${WORKDIR}"
+
+do_install() {
+ # This recipe is supposed to create an output yaml file with
+ # FRU property values extracted from the MRW. This example recipe
+ # provides a sample output file.
+
+ DEST=${D}${properties_datadir}
+ install -d ${DEST}
+ install example.yaml ${DEST}
+}
diff --git a/meta-openbmc-machines/meta-openpower/common/recipes-phosphor/vpd/openpower-fru-properties-example/example.yaml b/meta-openbmc-machines/meta-openpower/common/recipes-phosphor/vpd/openpower-fru-properties-example/example.yaml
new file mode 100644
index 000000000..6ec9b0c35
--- /dev/null
+++ b/meta-openbmc-machines/meta-openpower/common/recipes-phosphor/vpd/openpower-fru-properties-example/example.yaml
@@ -0,0 +1,6 @@
+/system/chassis/motherboard/boxelder/bmc:
+ xyz.openbmc_project.Inventory.Decorator.Replaceable:
+ FieldReplaceable: 'false'
+/system/chassis/motherboard/boxelder/bmc/ethernet:
+ xyz.openbmc_project.Inventory.Decorator.Replaceable:
+ FieldReplaceable: 'false'
diff --git a/meta-openbmc-machines/meta-openpower/common/recipes-phosphor/vpd/openpower-fru-properties-mrw-native.bb b/meta-openbmc-machines/meta-openpower/common/recipes-phosphor/vpd/openpower-fru-properties-mrw-native.bb
new file mode 100644
index 000000000..71194848d
--- /dev/null
+++ b/meta-openbmc-machines/meta-openpower/common/recipes-phosphor/vpd/openpower-fru-properties-mrw-native.bb
@@ -0,0 +1,28 @@
+SUMMARY = "FRU properties config for openpower-vpd-parser"
+PR = "r1"
+
+inherit native
+inherit obmc-phosphor-license
+inherit openpower-fru-vpd
+
+SRC_URI += "file://config.yaml"
+
+DEPENDS += " \
+ mrw-native \
+ mrw-perl-tools-native \
+ "
+
+PROVIDES += "virtual/openpower-fru-properties"
+
+S = "${WORKDIR}"
+
+do_install() {
+ DEST=${D}${properties_datadir}
+ install -d ${DEST}
+
+ ${bindir}/perl-native/perl \
+ ${bindir}/gen_fru_properties.pl \
+ -m ${datadir}/obmc-mrw/${MACHINE}.xml \
+ -c config.yaml \
+ -o ${DEST}/out.yaml
+}
diff --git a/meta-openbmc-machines/meta-openpower/common/recipes-phosphor/vpd/openpower-fru-properties-mrw/config.yaml b/meta-openbmc-machines/meta-openpower/common/recipes-phosphor/vpd/openpower-fru-properties-mrw/config.yaml
new file mode 100644
index 000000000..7a9f34ec5
--- /dev/null
+++ b/meta-openbmc-machines/meta-openpower/common/recipes-phosphor/vpd/openpower-fru-properties-mrw/config.yaml
@@ -0,0 +1,11 @@
+BMC:
+ xyz.openbmc_project.Inventory.Decorator.Replaceable:
+ FieldReplaceable: 'false'
+ xyz.openbmc_project.Inventory.Item:
+ Present: 'true'
+
+ETHERNET:
+ xyz.openbmc_project.Inventory.Decorator.Replaceable:
+ FieldReplaceable: 'false'
+ xyz.openbmc_project.Inventory.Item:
+ Present: 'true'
diff --git a/meta-openbmc-machines/meta-openpower/common/recipes-phosphor/vpd/openpower-fru-vpd.bb b/meta-openbmc-machines/meta-openpower/common/recipes-phosphor/vpd/openpower-fru-vpd.bb
index 1efe2ea21..4d7114a73 100644
--- a/meta-openbmc-machines/meta-openpower/common/recipes-phosphor/vpd/openpower-fru-vpd.bb
+++ b/meta-openbmc-machines/meta-openpower/common/recipes-phosphor/vpd/openpower-fru-vpd.bb
@@ -14,6 +14,7 @@ SRC_URI += "file://70-op-vpd.rules"
DEPENDS += " \
virtual/openpower-fru-vpd-layout \
virtual/openpower-fru-inventory \
+ virtual/openpower-fru-properties \
sdbusplus \
phosphor-logging \
python-mako-native \
@@ -30,7 +31,10 @@ SYSTEMD_SERVICE_${PN} += "op-vpd-parser.service"
S = "${WORKDIR}/git"
-EXTRA_OECONF = "FRU_YAML=${STAGING_DIR_NATIVE}${vpdlayout_datadir}/layout.yaml"
+EXTRA_OECONF = " \
+ FRU_YAML=${STAGING_DIR_NATIVE}${vpdlayout_datadir}/layout.yaml \
+ PROP_YAML=${STAGING_DIR_NATIVE}${properties_datadir}/out.yaml \
+ "
do_install_append() {
SRC=${STAGING_DATADIR_NATIVE}${inventory_datadir_name}
diff --git a/meta-openbmc-machines/meta-openpower/conf/machine/include/openpower.inc b/meta-openbmc-machines/meta-openpower/conf/machine/include/openpower.inc
index ed87ec807..74b3268cd 100644
--- a/meta-openbmc-machines/meta-openpower/conf/machine/include/openpower.inc
+++ b/meta-openbmc-machines/meta-openpower/conf/machine/include/openpower.inc
@@ -23,3 +23,5 @@ PREFERRED_PROVIDER_virtual/phosphor-ipmi-fru-hostfw-config ?= "hostboot-inventor
PREFERRED_PROVIDER_virtual/openpower-fru-vpd-layout ?= "openpower-fru-vpd-layout-native"
PREFERRED_PROVIDER_virtual/openpower-fru-inventory ?= \
"${@cf_enabled(d, 'obmc-mrw', 'openpower-fru-inventory-mrw-native', 'openpower-fru-inventory-example-native')}"
+PREFERRED_PROVIDER_virtual/openpower-fru-properties ?= \
+ "${@cf_enabled(d, 'obmc-mrw', 'openpower-fru-properties-mrw-native', 'openpower-fru-properties-example-native')}"
OpenPOWER on IntegriCloud