meta-phosphor: ipmi-config: add default entity map
Add an empty entity map json file. The file is expected to be an array,
if it is present at all. The file provided by default has no real
meaning to your system, therefore you are expected if you use the entity
records, to provide one for your system.
See: https://github.com/openbmc/phosphor-host-ipmid/blob/master/scripts/entity-example.md
for details on how it should be formatted.
Currently formatted:
[{
"id": 1,
# Container entity contains other entities
# Entity Id and entity Instance for the container entity
"containerEntityId": 13,
"containerEntityInstance": 81,
# A record can have contained entities as a four entry list or as upto
# two ranges of entity instances; this record has contained entities
# as a four entry list
"isList": true,
# Records can be linked if necessary to extend the number of contained
# entities within a container entity; this record is not linked
"isLinked": false,
"entities": [
{"entityId1": 10, "entityInstance1": 1},
{"entityId2": 10, "entityInstance2": 3},
{"entityId3": 10, "entityInstance3": 5},
{"entityId4": 10, "entityInstance4": 7}
]
}]
Signed-off-by: Patrick Venture <venture@google.com>
Change-Id: I112e700c95202e0e9a599fbc9317cf34a1158a2c
diff --git a/recipes-phosphor/ipmi/phosphor-ipmi-config.bb b/recipes-phosphor/ipmi/phosphor-ipmi-config.bb
index 02a7c64..8de43d2 100644
--- a/recipes-phosphor/ipmi/phosphor-ipmi-config.bb
+++ b/recipes-phosphor/ipmi/phosphor-ipmi-config.bb
@@ -13,6 +13,7 @@
file://power_reading.json \
file://channel_access.json \
file://channel_config.json \
+ file://entity-map.json \
"
FILES_${PN} = " \
@@ -23,6 +24,7 @@
${datadir}/ipmi-providers/power_reading.json \
${datadir}/ipmi-providers/channel_access.json \
${datadir}/ipmi-providers/channel_config.json \
+ ${datadir}/ipmi-providers/entity-map.json \
"
do_fetch[noexec] = "1"
@@ -46,5 +48,6 @@
${D}${datadir}/ipmi-providers/channel_access.json
install -m 0644 -D ${WORKDIR}/channel_config.json \
${D}${datadir}/ipmi-providers/channel_config.json
-
+ install -m 0644 -D ${WORKDIR}/entity-map.json \
+ ${D}${datadir}/ipmi-providers/entity-map.json
}
diff --git a/recipes-phosphor/ipmi/phosphor-ipmi-config/entity-map.json b/recipes-phosphor/ipmi/phosphor-ipmi-config/entity-map.json
new file mode 100644
index 0000000..cdb1ea8
--- /dev/null
+++ b/recipes-phosphor/ipmi/phosphor-ipmi-config/entity-map.json
@@ -0,0 +1,15 @@
+[
+ {
+ "id" : 1,
+ "containerEntityId" : 30,
+ "containerEntityInstance" : 1,
+ "isList" : true,
+ "isLinked" : false,
+ "entities" : [
+ {"id" : 3, "instance" : 1},
+ {"id" : 4, "instance" : 1},
+ {"id" : 0, "instance" : 0},
+ {"id" : 0, "instance" : 0}
+ ]
+ }
+]
diff --git a/recipes-phosphor/ipmi/phosphor-ipmi-host/entity.yaml b/recipes-phosphor/ipmi/phosphor-ipmi-host/entity.yaml
deleted file mode 100644
index f41c2fd..0000000
--- a/recipes-phosphor/ipmi/phosphor-ipmi-host/entity.yaml
+++ /dev/null
@@ -1,13 +0,0 @@
-0x01:
- containerEntityId: 0x1E
- containerEntityInstance: 0x1
- isList: "true"
- isLinked: "false"
- entityId1: 0x03
- entityInstance1: 0x1
- entityId2: 0x04
- entityInstance2: 0x1
- entityId3: 0x00
- entityInstance3: 0x00
- entityId4: 0x00
- entityInstance4: 0x00
diff --git a/recipes-phosphor/ipmi/phosphor-ipmi-host_git.bb b/recipes-phosphor/ipmi/phosphor-ipmi-host_git.bb
index 1df091f..f654d0c 100644
--- a/recipes-phosphor/ipmi/phosphor-ipmi-host_git.bb
+++ b/recipes-phosphor/ipmi/phosphor-ipmi-host_git.bb
@@ -14,8 +14,6 @@
inherit phosphor-ipmi-host
inherit pythonnative
-SRC_URI += "file://entity.yaml"
-
def ipmi_whitelists(d):
whitelists = d.getVar(
'VIRTUAL-RUNTIME_phosphor-ipmi-providers', True) or ''
@@ -103,16 +101,6 @@
SOFT_FMT = "../${SOFT_SVC}:${SOFT_TGTFMT}.requires/${SOFT_SVC}"
SYSTEMD_LINK_${PN} += "${@compose_list_zip(d, 'SOFT_FMT', 'OBMC_HOST_INSTANCES')}"
-do_replace_entity_default() {
- # The in-repo provided default is tailored to testing the ipmid code.
- # Replace it with a reasonable default for users.
- cp ${THISDIR}/${PN}/entity.yaml ${S}/scripts/entity-example.yaml
-}
-
-do_patch_append() {
- bb.build.exec_func('do_replace_entity_default', d)
-}
-
#Collect all hardcoded sensor yamls from different recipes and
#merge all of them with sensor.yaml.
python do_merge_sensors () {