diff options
author | Joseph Fu <joseph.fu@quantatw.com> | 2022-01-26 09:37:42 +0300 |
---|---|---|
committer | Joseph Fu <joseph.fu@quantatw.com> | 2022-01-28 05:03:23 +0300 |
commit | 0de4856d037ff2525b3dd74ce2cbafdd4dcff443 (patch) | |
tree | 83d131a3a63d02ff367b8e775d23f827f8366b91 | |
parent | a8d40479ad9672fe33036cf52296a709d953a73e (diff) | |
download | openbmc-0de4856d037ff2525b3dd74ce2cbafdd4dcff443.tar.xz |
meta-quanta: s6q: add fru yaml config files
Add fru setting config and device json file.
Tested:
~# ipmitool mc info
Device ID : 32
Device Revision : 1
Firmware Revision : 0.00
IPMI Version : 2.0
Manufacturer ID : 7244
Manufacturer Name : Quanta Computer Inc.
Product ID : 13905 (0x3651)
Product Name : Unknown (0x3651)
Device Available : yes
Provides Device SDRs : no
Additional Device Support :
Sensor Device
SEL Device
FRU Inventory Device
Chassis Device
Aux Firmware Rev Info :
0x00
0x00
0x00
0x00
~# ipmitool fru
FRU Device Description : Builtin FRU Device (ID 0)
Board Mfg Date : Mon Jan 17 07:40:00 2022 UTC
Board Mfg : Quanta
Board Product : S6Q_Openbmc
Board Serial : QCTQTW213400001
Board Part Number : 1100827-01
FRU Device Description : mainboard (ID 1)
Board Mfg Date : Sat Sep 4 17:44:00 2021 UTC
Board Mfg : Quanta Cloud Technology Inc.
Board Product : S6Q-MB-RTT
Board Serial : RTTQTW12500077
Board Part Number : 31S6QMB0000
Signed-off-by: Joseph Fu <joseph.fu@quantatw.com>
Change-Id: Id7d8d6a330eb4b698b2933189eec35e0b48fc700
8 files changed, 161 insertions, 0 deletions
diff --git a/meta-quanta/meta-s6q/recipes-phosphor/configuration/s6q-yaml-config.bb b/meta-quanta/meta-s6q/recipes-phosphor/configuration/s6q-yaml-config.bb new file mode 100644 index 0000000000..e437b7f691 --- /dev/null +++ b/meta-quanta/meta-s6q/recipes-phosphor/configuration/s6q-yaml-config.bb @@ -0,0 +1,25 @@ +SUMMARY = "YAML configuration for s6q" +PR = "r1" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" + +inherit allarch + +SRC_URI = " \ + file://ipmi-fru.yaml \ + file://ipmi-fru-properties.yaml \ + " + +S = "${WORKDIR}" + +do_install() { + install -m 0644 -D ipmi-fru.yaml ${D}${datadir}/${BPN}/ipmi-fru-read.yaml + install -m 0644 -D 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-quanta/meta-s6q/recipes-phosphor/configuration/s6q-yaml-config/ipmi-fru-properties.yaml b/meta-quanta/meta-s6q/recipes-phosphor/configuration/s6q-yaml-config/ipmi-fru-properties.yaml new file mode 100644 index 0000000000..6ce5de14af --- /dev/null +++ b/meta-quanta/meta-s6q/recipes-phosphor/configuration/s6q-yaml-config/ipmi-fru-properties.yaml @@ -0,0 +1,31 @@ +/system: + xyz.openbmc_project.Inventory.Decorator.Cacheable: + Cached: 'true' + xyz.openbmc_project.Inventory.Decorator.Replaceable: + FieldReplaceable: 'true' + xyz.openbmc_project.Inventory.Item: + Present: 'true' + +/system/chassis: + xyz.openbmc_project.Inventory.Decorator.Cacheable: + Cached: 'true' + xyz.openbmc_project.Inventory.Decorator.Replaceable: + FieldReplaceable: 'true' + xyz.openbmc_project.Inventory.Item: + Present: 'true' + +/system/chassis/bmc: + xyz.openbmc_project.Inventory.Decorator.Replaceable: + FieldReplaceable: 'true' + xyz.openbmc_project.Inventory.Decorator.Cacheable: + Cached: 'true' + xyz.openbmc_project.Inventory.Item: + Present: 'true' + +/system/chassis/mainboard: + xyz.openbmc_project.Inventory.Decorator.Replaceable: + FieldReplaceable: 'true' + xyz.openbmc_project.Inventory.Decorator.Cacheable: + Cached: 'true' + xyz.openbmc_project.Inventory.Item: + Present: 'true' diff --git a/meta-quanta/meta-s6q/recipes-phosphor/configuration/s6q-yaml-config/ipmi-fru.yaml b/meta-quanta/meta-s6q/recipes-phosphor/configuration/s6q-yaml-config/ipmi-fru.yaml new file mode 100755 index 0000000000..519af3f7c9 --- /dev/null +++ b/meta-quanta/meta-s6q/recipes-phosphor/configuration/s6q-yaml-config/ipmi-fru.yaml @@ -0,0 +1,60 @@ +0x00: + /system/chassis/bmc: + entityID: 6 + entityInstance: 1 + interfaces: + xyz.openbmc_project.Inventory.Decorator.Asset: + BuildDate: + IPMIFruProperty: Mfg Date + IPMIFruSection: Board + SerialNumber: + IPMIFruProperty: Serial Number + IPMIFruSection: Board + PartNumber: + IPMIFruProperty: Part Number + IPMIFruSection: Board + Manufacturer: + IPMIFruProperty: Manufacturer + IPMIFruSection: Board + CustomField: + IPMIFruProperty: CustomField + IPMIFruSection: Board + xyz.openbmc_project.Inventory.Item: + PrettyName: + IPMIFruProperty: Name + IPMIFruSection: Board + xyz.openbmc_project.Inventory.Decorator.Revision: + Version: + IPMIFruProperty: FRU File ID + IPMIFruSection: Board + xyz.openbmc_project.Inventory.Item.NetworkInterface: + MACAddress: + IPMIFruProperty: Custom Field 1 + IPMIFruSection: Board + +0x01: + /system/chassis/mainboard: + entityID: 16 + entityInstance: 1 + interfaces: + xyz.openbmc_project.Inventory.Decorator.Asset: + BuildDate: + IPMIFruProperty: Mfg Date + IPMIFruSection: Board + SerialNumber: + IPMIFruProperty: Serial Number + IPMIFruSection: Board + PartNumber: + IPMIFruProperty: Part Number + IPMIFruSection: Board + Manufacturer: + IPMIFruProperty: Manufacturer + IPMIFruSection: Board + xyz.openbmc_project.Inventory.Item: + PrettyName: + IPMIFruProperty: Name + IPMIFruSection: Board + xyz.openbmc_project.Inventory.Decorator.Revision: + Version: + IPMIFruProperty: FRU File ID + IPMIFruSection: Board diff --git a/meta-quanta/meta-s6q/recipes-phosphor/ipmi/phosphor-ipmi-config/dev_id.json b/meta-quanta/meta-s6q/recipes-phosphor/ipmi/phosphor-ipmi-config/dev_id.json new file mode 100644 index 0000000000..0a1e4ba6ea --- /dev/null +++ b/meta-quanta/meta-s6q/recipes-phosphor/ipmi/phosphor-ipmi-config/dev_id.json @@ -0,0 +1,8 @@ +{ + "id": 32, + "revision": 1, + "addn_dev_support": 141, + "manuf_id": 7244, + "prod_id": 13905, + "aux": 0 +} diff --git a/meta-quanta/meta-s6q/recipes-phosphor/ipmi/phosphor-ipmi-fru/obmc/eeproms/system/chassis/bmc b/meta-quanta/meta-s6q/recipes-phosphor/ipmi/phosphor-ipmi-fru/obmc/eeproms/system/chassis/bmc new file mode 100644 index 0000000000..799a22da5f --- /dev/null +++ b/meta-quanta/meta-s6q/recipes-phosphor/ipmi/phosphor-ipmi-fru/obmc/eeproms/system/chassis/bmc @@ -0,0 +1,3 @@ +OF_NAME=scm_fru +SYSFS_PATH=/sys/bus/i2c/devices/14-0051/eeprom +FRUID=0 diff --git a/meta-quanta/meta-s6q/recipes-phosphor/ipmi/phosphor-ipmi-fru/obmc/eeproms/system/chassis/motherboard b/meta-quanta/meta-s6q/recipes-phosphor/ipmi/phosphor-ipmi-fru/obmc/eeproms/system/chassis/motherboard new file mode 100644 index 0000000000..2dd41d6142 --- /dev/null +++ b/meta-quanta/meta-s6q/recipes-phosphor/ipmi/phosphor-ipmi-fru/obmc/eeproms/system/chassis/motherboard @@ -0,0 +1,3 @@ +OF_NAME=mb_fru +SYSFS_PATH=/sys/bus/i2c/devices/3-0051/eeprom +FRUID=1 diff --git a/meta-quanta/meta-s6q/recipes-phosphor/ipmi/phosphor-ipmi-fru_%.bbappend b/meta-quanta/meta-s6q/recipes-phosphor/ipmi/phosphor-ipmi-fru_%.bbappend new file mode 100644 index 0000000000..6caa6a5e4f --- /dev/null +++ b/meta-quanta/meta-s6q/recipes-phosphor/ipmi/phosphor-ipmi-fru_%.bbappend @@ -0,0 +1,26 @@ +FILESEXTRAPATHS:prepend:s6q := "${THISDIR}/${PN}:" + +inherit obmc-phosphor-systemd +DEPENDS:append:s6q = " s6q-yaml-config" + +EEPROMS_NAME_LIST = "bmc motherboard" + +EEPROMFMT = "system/chassis/{0}" +EEPROM_ESCAPEDFMT = "system-chassis-{0}" +EEPROMS = "${@compose_list(d, 'EEPROMFMT', 'EEPROMS_NAME_LIST')}" +EEPROMS_ESCAPED = "${@compose_list(d, 'EEPROM_ESCAPEDFMT', 'EEPROMS_NAME_LIST')}" + +ENVFMT = "obmc/eeproms/{0}" +SYSTEMD_ENVIRONMENT_FILE:${PN}:append:s6q := " ${@compose_list(d, 'ENVFMT', 'EEPROMS')}" + +TMPL = "obmc-read-eeprom@.service" +TGT = "multi-user.target" +INSTFMT = "obmc-read-eeprom@{0}.service" +FMT = "../${TMPL}:${TGT}.wants/${INSTFMT}" + +SYSTEMD_LINK:${PN}:append:s6q := " ${@compose_list(d, 'FMT', 'EEPROMS_ESCAPED')}" + +EXTRA_OECONF:append:s6q = " \ + YAML_GEN=${STAGING_DIR_HOST}${datadir}/s6q-yaml-config/ipmi-fru-read.yaml \ + PROP_YAML=${STAGING_DIR_HOST}${datadir}/s6q-yaml-config/ipmi-extra-properties.yaml \ + " diff --git a/meta-quanta/meta-s6q/recipes-phosphor/ipmi/phosphor-ipmi-host_%.bbappend b/meta-quanta/meta-s6q/recipes-phosphor/ipmi/phosphor-ipmi-host_%.bbappend new file mode 100644 index 0000000000..5e35c59f6a --- /dev/null +++ b/meta-quanta/meta-s6q/recipes-phosphor/ipmi/phosphor-ipmi-host_%.bbappend @@ -0,0 +1,5 @@ +FILESEXTRAPATHS:prepend:s6q := "${THISDIR}/${PN}:" + +DEPENDS:append:s6q = " s6q-yaml-config" + +EXTRA_OECONF:append:s6q = " FRU_YAML_GEN=${STAGING_DIR_HOST}${datadir}/s6q-yaml-config/ipmi-fru-read.yaml" |