Initial commit

This commit is contained in:
Your Name
2026-04-23 17:07:55 +08:00
commit b7e39e063b
16725 changed files with 1625565 additions and 0 deletions
@@ -0,0 +1,35 @@
SUMMARY = "YAML configuration for gbs"
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://gbs-ipmi-fru.yaml \
file://gbs-ipmi-sensors.yaml \
file://gbs-ipmi-fru-properties.yaml \
file://gbs-ipmi-inventory-sensors.yaml \
"
S = "${WORKDIR}"
do_install() {
install -m 0644 -D gbs-ipmi-fru.yaml \
${D}${datadir}/${BPN}/ipmi-fru-read.yaml
install -m 0644 -D gbs-ipmi-sensors.yaml \
${D}${datadir}/${BPN}/ipmi-sensors.yaml
install -m 0644 -D gbs-ipmi-fru-properties.yaml \
${D}${datadir}/${BPN}/ipmi-extra-properties.yaml
install -m 0644 -D gbs-ipmi-inventory-sensors.yaml \
${D}${datadir}/${BPN}/ipmi-inventory-sensors.yaml
}
FILES:${PN}-dev = " \
${datadir}/${BPN}/ipmi-fru-read.yaml \
${datadir}/${BPN}/ipmi-sensors.yaml \
${datadir}/${BPN}/ipmi-extra-properties.yaml \
${datadir}/${BPN}/ipmi-inventory-sensors.yaml \
"
ALLOW_EMPTY:${PN} = "1"
@@ -0,0 +1,183 @@
/system/chassis/motherboard:
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/hsbp:
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/fan:
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/PE0:
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/PE0/PE0:
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/PE1:
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/PE1/PE1:
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/motherboard/nvme0:
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/motherboard/nvme1:
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/motherboard/nvme2:
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/motherboard/nvme3:
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/motherboard/nvme4:
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/motherboard/nvme5:
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/motherboard/nvme6:
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/motherboard/nvme7:
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/motherboard/nvme8:
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/motherboard/nvme9:
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/motherboard/nvme10:
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/motherboard/nvme11:
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/motherboard/nvme12:
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/motherboard/nvme13:
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/motherboard/nvme14:
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/motherboard/nvme15:
xyz.openbmc_project.Inventory.Decorator.Replaceable:
FieldReplaceable: 'true'
xyz.openbmc_project.Inventory.Decorator.Cacheable:
Cached: 'true'
xyz.openbmc_project.Inventory.Item:
Present: 'true'
@@ -0,0 +1,228 @@
0x00:
/system/chassis/motherboard:
entityID: 7
entityInstance: 0x00
interfaces:
xyz.openbmc_project.Inventory.Decorator.Asset:
BuildDate:
IPMIFruProperty: Mfg Date
IPMIFruSection: Board
Manufacturer:
IPMIFruProperty: Manufacturer
IPMIFruSection: Board
SerialNumber:
IPMIFruProperty: Serial Number
IPMIFruSection: Board
PartNumber:
IPMIFruProperty: Part Number
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.System:
0x01:
/system/chassis/hsbp:
entityID: 7
entityInstance: 0x01
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
0x02:
/system/chassis/fan:
entityID: 7
entityInstance: 0x02
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
0x03:
/system/chassis/PE0: &ADD_IN_CARD_BOARD_DEFAULTS
entityID: 11
entityInstance: 0x00
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
/system/chassis/PE0/PE0: &ADD_IN_CARD_PRODUCT_DEFAULTS
entityID: 11
entityInstance: 0x00
interfaces:
xyz.openbmc_project.Inventory.Decorator.Asset:
BuildDate:
IPMIFruProperty: Mfg Date
IPMIFruSection: Product
SerialNumber:
IPMIFruProperty: Serial Number
IPMIFruSection: Product
Model:
IPMIFruProperty: Model Number
IPMIFruSection: Product
Manufacturer:
IPMIFruProperty: Manufacturer
IPMIFruSection: Product
xyz.openbmc_project.Inventory.Item:
PrettyName:
IPMIFruProperty: Name
IPMIFruSection: Product
0x04:
/system/chassis/PE1:
entityInstance: 0x01
<<: *ADD_IN_CARD_BOARD_DEFAULTS
/system/chassis/PE1/PE1:
entityInstance: 0x01
<<: *ADD_IN_CARD_PRODUCT_DEFAULTS
0x05:
/system/chassis/motherboard/nvme0: &NVME_BOARD_DEFAULTS
entityID: 4
entityInstance: 0x60
interfaces:
xyz.openbmc_project.Inventory.Decorator.Asset:
Manufacturer:
IPMIFruProperty: Manufacturer
IPMIFruSection: Product
SerialNumber:
IPMIFruProperty: Serial Number
IPMIFruSection: Product
Model:
IPMIFruProperty: Model Number
IPMIFruSection: Product
0x06:
/system/chassis/motherboard/nvme1:
entityInstance: 0x61
<<: *NVME_BOARD_DEFAULTS
0x07:
/system/chassis/motherboard/nvme2:
entityInstance: 0x62
<<: *NVME_BOARD_DEFAULTS
0x08:
/system/chassis/motherboard/nvme3:
entityInstance: 0x63
<<: *NVME_BOARD_DEFAULTS
0x09:
/system/chassis/motherboard/nvme4:
entityInstance: 0x64
<<: *NVME_BOARD_DEFAULTS
0x0A:
/system/chassis/motherboard/nvme5:
entityInstance: 0x65
<<: *NVME_BOARD_DEFAULTS
0x0B:
/system/chassis/motherboard/nvme6:
entityInstance: 0x66
<<: *NVME_BOARD_DEFAULTS
0x0C:
/system/chassis/motherboard/nvme7:
entityInstance: 0x67
<<: *NVME_BOARD_DEFAULTS
0x0D:
/system/chassis/motherboard/nvme8:
entityInstance: 0x68
<<: *NVME_BOARD_DEFAULTS
0x0E:
/system/chassis/motherboard/nvme9:
entityInstance: 0x69
<<: *NVME_BOARD_DEFAULTS
0x0F:
/system/chassis/motherboard/nvme10:
entityInstance: 0x6A
<<: *NVME_BOARD_DEFAULTS
0x10:
/system/chassis/motherboard/nvme11:
entityInstance: 0x6B
<<: *NVME_BOARD_DEFAULTS
0x11:
/system/chassis/motherboard/nvme12:
entityInstance: 0x6C
<<: *NVME_BOARD_DEFAULTS
0x12:
/system/chassis/motherboard/nvme13:
entityInstance: 0x6D
<<: *NVME_BOARD_DEFAULTS
0x13:
/system/chassis/motherboard/nvme14:
entityInstance: 0x6E
<<: *NVME_BOARD_DEFAULTS
0x14:
/system/chassis/motherboard/nvme15:
entityInstance: 0x6F
<<: *NVME_BOARD_DEFAULTS
@@ -0,0 +1,446 @@
/xyz/openbmc_project/sensors/temperature/i2cool_0:
eventReadingType: 1
sensorID: 0x10
sensorType: 1
offset: 0xff
/xyz/openbmc_project/sensors/temperature/i2cool_1:
eventReadingType: 1
sensorID: 0x11
sensorType: 1
offset: 0xff
/xyz/openbmc_project/sensors/temperature/i2cool_2:
eventReadingType: 1
sensorID: 0x12
sensorType: 1
offset: 0xff
/xyz/openbmc_project/sensors/temperature/powerseq_temp:
eventReadingType: 1
sensorID: 0x13
sensorType: 1
offset: 0xff
/xyz/openbmc_project/sensors/temperature/cputemp:
eventReadingType: 1
sensorID: 0x14
sensorType: 1
offset: 0xff
/xyz/openbmc_project/sensors/temperature/nvme0:
eventReadingType: 1
sensorID: 0x15
sensorType: 1
offset: 0xff
/xyz/openbmc_project/sensors/temperature/nvme1:
eventReadingType: 1
sensorID: 0x16
sensorType: 1
offset: 0xff
/xyz/openbmc_project/sensors/temperature/nvme2:
eventReadingType: 1
sensorID: 0x17
sensorType: 1
offset: 0xff
/xyz/openbmc_project/sensors/temperature/nvme3:
eventReadingType: 1
sensorID: 0x18
sensorType: 1
offset: 0xff
/xyz/openbmc_project/sensors/temperature/nvme4:
eventReadingType: 1
sensorID: 0x19
sensorType: 1
offset: 0xff
/xyz/openbmc_project/sensors/temperature/nvme5:
eventReadingType: 1
sensorID: 0x1A
sensorType: 1
offset: 0xff
/xyz/openbmc_project/sensors/temperature/nvme6:
eventReadingType: 1
sensorID: 0x1B
sensorType: 1
offset: 0xff
/xyz/openbmc_project/sensors/temperature/nvme7:
eventReadingType: 1
sensorID: 0x1C
sensorType: 1
offset: 0xff
/xyz/openbmc_project/sensors/temperature/nvme8:
eventReadingType: 1
sensorID: 0x1D
sensorType: 1
offset: 0xff
/xyz/openbmc_project/sensors/temperature/nvme9:
eventReadingType: 1
sensorID: 0x1E
sensorType: 1
offset: 0xff
/xyz/openbmc_project/sensors/temperature/nvme10:
eventReadingType: 1
sensorID: 0x1F
sensorType: 1
offset: 0xff
/xyz/openbmc_project/sensors/temperature/nvme11:
eventReadingType: 1
sensorID: 0x20
sensorType: 1
offset: 0xff
/xyz/openbmc_project/sensors/temperature/nvme12:
eventReadingType: 1
sensorID: 0x21
sensorType: 1
offset: 0xff
/xyz/openbmc_project/sensors/temperature/nvme13:
eventReadingType: 1
sensorID: 0x22
sensorType: 1
offset: 0xff
/xyz/openbmc_project/sensors/temperature/nvme14:
eventReadingType: 1
sensorID: 0x23
sensorType: 1
offset: 0xff
/xyz/openbmc_project/sensors/temperature/nvme15:
eventReadingType: 1
sensorID: 0x24
sensorType: 1
offset: 0xff
/xyz/openbmc_project/sensors/temperature/vddcr_cpu:
eventReadingType: 1
sensorID: 0x27
sensorType: 1
offset: 0xff
/xyz/openbmc_project/sensors/temperature/vddcr_soc:
eventReadingType: 1
sensorID: 0x28
sensorType: 1
offset: 0xff
/xyz/openbmc_project/sensors/temperature/vddio_abcd:
eventReadingType: 1
sensorID: 0x29
sensorType: 1
offset: 0xff
/xyz/openbmc_project/sensors/temperature/vddio_efgh:
eventReadingType: 1
sensorID: 0x2A
sensorType: 1
offset: 0xff
/xyz/openbmc_project/sensors/temperature/p12v_mobo:
eventReadingType: 1
sensorID: 0x2B
sensorType: 1
offset: 0xff
/xyz/openbmc_project/sensors/temperature/p12v_fan:
eventReadingType: 1
sensorID: 0x2C
sensorType: 1
offset: 0xff
/xyz/openbmc_project/sensors/temperature/hotswap:
eventReadingType: 1
sensorID: 0x2D
sensorType: 1
offset: 0xff
/xyz/openbmc_project/sensors/voltage/p1v8_stby:
eventReadingType: 1
sensorID: 0x30
sensorType: 2
offset: 0xff
/xyz/openbmc_project/sensors/voltage/vddcr_soc_stby:
eventReadingType: 1
sensorID: 0x31
sensorType: 2
offset: 0xff
/xyz/openbmc_project/sensors/voltage/p2v5_stby:
eventReadingType: 1
sensorID: 0x32
sensorType: 2
offset: 0xff
/xyz/openbmc_project/sensors/voltage/p1v2_stby:
eventReadingType: 1
sensorID: 0x33
sensorType: 2
offset: 0xff
/xyz/openbmc_project/sensors/voltage/p1v175_stby:
eventReadingType: 1
sensorID: 0x34
sensorType: 2
offset: 0xff
/xyz/openbmc_project/sensors/voltage/p1v8:
eventReadingType: 1
sensorID: 0x35
sensorType: 2
offset: 0xff
/xyz/openbmc_project/sensors/voltage/p3v3:
eventReadingType: 1
sensorID: 0x36
sensorType: 2
offset: 0xff
/xyz/openbmc_project/sensors/voltage/pwrgd_pvpp:
eventReadingType: 1
sensorID: 0x37
sensorType: 2
offset: 0xff
/xyz/openbmc_project/sensors/voltage/pwrgd_pvddio:
eventReadingType: 1
sensorID: 0x38
sensorType: 2
offset: 0xff
/xyz/openbmc_project/sensors/voltage/pwrgd_cpuvr:
eventReadingType: 1
sensorID: 0x39
sensorType: 2
offset: 0xff
/xyz/openbmc_project/sensors/voltage/p3v3_stby:
eventReadingType: 1
sensorID: 0x3A
sensorType: 2
offset: 0xff
/xyz/openbmc_project/sensors/voltage/p5v_stby:
eventReadingType: 1
sensorID: 0x3B
sensorType: 2
offset: 0xff
/xyz/openbmc_project/sensors/voltage/vddcr_cpu_in:
eventReadingType: 1
sensorID: 0x3C
sensorType: 2
offset: 0xff
/xyz/openbmc_project/sensors/voltage/vddcr_cpu_out:
eventReadingType: 1
sensorID: 0x3D
sensorType: 2
offset: 0xff
/xyz/openbmc_project/sensors/voltage/vddcr_soc_in:
eventReadingType: 1
sensorID: 0x3E
sensorType: 2
offset: 0xff
/xyz/openbmc_project/sensors/voltage/vddcr_soc_out:
eventReadingType: 1
sensorID: 0x3F
sensorType: 2
offset: 0xff
/xyz/openbmc_project/sensors/voltage/vddio_abcd_out:
eventReadingType: 1
sensorID: 0x40
sensorType: 2
offset: 0xff
/xyz/openbmc_project/sensors/voltage/vddio_abcd_in:
eventReadingType: 1
sensorID: 0x41
sensorType: 2
offset: 0xff
/xyz/openbmc_project/sensors/voltage/vddio_efgh_out:
eventReadingType: 1
sensorID: 0x42
sensorType: 2
offset: 0xff
/xyz/openbmc_project/sensors/voltage/vddio_efgh_in:
eventReadingType: 1
sensorID: 0x43
sensorType: 2
offset: 0xff
/xyz/openbmc_project/sensors/voltage/hotswap_vin:
eventReadingType: 1
sensorID: 0x44
sensorType: 2
offset: 0xff
/xyz/openbmc_project/sensors/voltage/hotswap_vout:
eventReadingType: 1
sensorID: 0x45
sensorType: 2
offset: 0xff
/xyz/openbmc_project/sensors/voltage/p3v_bat_adc:
eventReadingType: 1
sensorID: 0x46
sensorType: 2
offset: 0xff
/xyz/openbmc_project/sensors/voltage/p12v_mobo_out:
eventReadingType: 1
sensorID: 0x47
sensorType: 2
offset: 0xff
/xyz/openbmc_project/sensors/voltage/p12v_mobo_in:
eventReadingType: 1
sensorID: 0x48
sensorType: 2
offset: 0xff
/xyz/openbmc_project/sensors/voltage/p12v_fan_out:
eventReadingType: 1
sensorID: 0x49
sensorType: 2
offset: 0xff
/xyz/openbmc_project/sensors/voltage/p12v_fan_in:
eventReadingType: 1
sensorID: 0x4A
sensorType: 2
offset: 0xff
/xyz/openbmc_project/sensors/current/vddcr_cpu_in:
eventReadingType: 1
sensorID: 0x50
sensorType: 3
offset: 0xff
/xyz/openbmc_project/sensors/current/vddcr_cpu_out:
eventReadingType: 1
sensorID: 0x51
sensorType: 3
offset: 0xff
/xyz/openbmc_project/sensors/current/vddcr_soc_in:
eventReadingType: 1
sensorID: 0x52
sensorType: 3
offset: 0xff
/xyz/openbmc_project/sensors/current/vddcr_soc_out:
eventReadingType: 1
sensorID: 0x53
sensorType: 3
offset: 0xff
/xyz/openbmc_project/sensors/current/vddio_abcd_in:
eventReadingType: 1
sensorID: 0x55
sensorType: 3
offset: 0xff
/xyz/openbmc_project/sensors/current/vddio_abcd_out:
eventReadingType: 1
sensorID: 0x54
sensorType: 3
offset: 0xff
/xyz/openbmc_project/sensors/current/vddio_efgh_in:
eventReadingType: 1
sensorID: 0x57
sensorType: 3
offset: 0xff
/xyz/openbmc_project/sensors/current/vddio_efgh_out:
eventReadingType: 1
sensorID: 0x56
sensorType: 3
offset: 0xff
/xyz/openbmc_project/sensors/current/p12v_mobo_in:
eventReadingType: 1
sensorID: 0x5A
sensorType: 3
offset: 0xff
/xyz/openbmc_project/sensors/current/p12v_mobo_out:
eventReadingType: 1
sensorID: 0x59
sensorType: 3
offset: 0xff
/xyz/openbmc_project/sensors/current/p12v_fan_in:
eventReadingType: 1
sensorID: 0x5C
sensorType: 3
offset: 0xff
/xyz/openbmc_project/sensors/current/p12v_fan_out:
eventReadingType: 1
sensorID: 0x5B
sensorType: 3
offset: 0xff
/xyz/openbmc_project/sensors/current/hotswap_iout:
eventReadingType: 1
sensorID: 0x58
sensorType: 3
offset: 0xff
/xyz/openbmc_project/sensors/power/hotswap_pout:
eventReadingType: 1
sensorID: 0x70
sensorType: 0x0B
offset: 0xff
/xyz/openbmc_project/sensors/fan_tach/fan0:
eventReadingType: 1
sensorID: 0x60
sensorType: 4
offset: 0xff
/xyz/openbmc_project/sensors/fan_tach/fan1:
eventReadingType: 1
sensorID: 0x61
sensorType: 4
offset: 0xff
/xyz/openbmc_project/sensors/fan_tach/fb_fan0:
eventReadingType: 1
sensorID: 0x62
sensorType: 4
offset: 0xff
/xyz/openbmc_project/sensors/fan_tach/fb_fan1:
eventReadingType: 1
sensorID: 0x63
sensorType: 4
offset: 0xff
/xyz/openbmc_project/sensors/fan_tach/fb_fan2:
eventReadingType: 1
sensorID: 0x64
sensorType: 4
offset: 0xff
/xyz/openbmc_project/metrics/memory/BmcECC:
eventReadingType: 0x6f
sensorID: 0xF0
sensorType: 0x0C
offset: 0x00
/xyz/openbmc_project/inventory/system/chassis/cable/ss_cab0_prsnt:
eventReadingType: 0x6f
sensorID: 0xF1
sensorType: 0x1B
offset: 0x01
/xyz/openbmc_project/inventory/system/chassis/cable/ss_cab1_prsnt:
eventReadingType: 0x6f
sensorID: 0xF2
sensorType: 0x1B
offset: 0x01
/xyz/openbmc_project/inventory/system/chassis/cable/ss_cab2_prsnt:
eventReadingType: 0x6f
sensorID: 0xF3
sensorType: 0x1B
offset: 0x01
/xyz/openbmc_project/inventory/system/chassis/cable/ss_cab3_prsnt:
eventReadingType: 0x6f
sensorID: 0xF4
sensorType: 0x1B
offset: 0x01
/xyz/openbmc_project/inventory/system/chassis/entity/sata0_prsnt:
eventReadingType: 0x6f
sensorID: 0xF5
sensorType: 0x25
offset: 0x01
/xyz/openbmc_project/inventory/system/chassis/cable/hsbp_cab_prsnt:
eventReadingType: 0x6f
sensorID: 0xF6
sensorType: 0x1B
offset: 0x01
/xyz/openbmc_project/inventory/system/chassis/cable/fanbd_cab_prsnt:
eventReadingType: 0x6f
sensorID: 0xF7
sensorType: 0x1B
offset: 0x01
/xyz/openbmc_project/inventory/system/chassis/cable/bp12v_cab_prsnt:
eventReadingType: 0x6f
sensorID: 0xF8
sensorType: 0x1B
offset: 0x01
/xyz/openbmc_project/inventory/system/chassis/entity/pe_slot0_prsnt:
eventReadingType: 0x6f
sensorID: 0xF9
sensorType: 0x25
offset: 0x01
/xyz/openbmc_project/inventory/system/chassis/entity/pe_slot1_prsnt:
eventReadingType: 0x6f
sensorID: 0xFA
sensorType: 0x25
offset: 0x01
/xyz/openbmc_project/watchdog/host0:
eventReadingType: 0x6f
sensorID: 0xFB
sensorType: 0x23
offset: 0x01
/xyz/openbmc_project/inventory/system/chassis/entity/fans_efuse_pg:
eventReadingType: 0x6f
sensorID: 0xFC
sensorType: 0x25
offset: 0x01
/xyz/openbmc_project/inventory/system/chassis/entity/pwrgd_p12v_slots:
eventReadingType: 0x6f
sensorID: 0xFD
sensorType: 0x25
offset: 0x01
# map non-IPMI-SEL to the system event sensor as "Undetermined system hardware failure."
/xyz/openbmc_project/inventory/system:
eventReadingType: 0x6f
sensorID: 0xFE
sensorType: 0x12
offset: 0x02
@@ -0,0 +1 @@
baud = 115200
@@ -0,0 +1,4 @@
FILESEXTRAPATHS:prepend:gbs := "${THISDIR}/files:"
OBMC_CONSOLE_FRONT_TTY:gbs = "ttyS3"
OBMC_CONSOLE_HOST_TTY:gbs = "ttyS1"
@@ -0,0 +1,947 @@
{
"version": "R05",
"sensors": [
{
"name": "fan0",
"type": "fan",
"readPath": "/xyz/openbmc_project/sensors/fan_tach/fan0",
"writePath": "/sys/devices/platform/ahb/ahb:apb/f0103000.pwm-fan-controller/hwmon/@Fan_0_To_4_Hwmon@/pwm1",
"min": 0,
"max": 255
},
{
"name": "fan1",
"type": "fan",
"readPath": "/xyz/openbmc_project/sensors/fan_tach/fan1",
"writePath": "/sys/devices/platform/ahb/ahb:apb/f0103000.pwm-fan-controller/hwmon/@Fan_0_To_4_Hwmon@/pwm2",
"min": 0,
"max": 255
},
{
"name": "fb_fan0",
"type": "fan",
"readPath": "/xyz/openbmc_project/sensors/fan_tach/fb_fan0",
"writePath": "/sys/devices/platform/ahb/ahb:apb/f0103000.pwm-fan-controller/hwmon/@Fan_0_To_4_Hwmon@/pwm3",
"min": 0,
"max": 255
},
{
"name": "fb_fan1",
"type": "fan",
"readPath": "/xyz/openbmc_project/sensors/fan_tach/fb_fan1",
"writePath": "/sys/devices/platform/ahb/ahb:apb/f0103000.pwm-fan-controller/hwmon/@Fan_0_To_4_Hwmon@/pwm4",
"min": 0,
"max": 255
},
{
"name": "fb_fan2",
"type": "fan",
"readPath": "/xyz/openbmc_project/sensors/fan_tach/fb_fan2",
"writePath": "/sys/devices/platform/ahb/ahb:apb/f0103000.pwm-fan-controller/hwmon/@Fan_0_To_4_Hwmon@/pwm5",
"min": 0,
"max": 255
},
{
"name": "fleeting0",
"type": "margin",
"readPath": "/xyz/openbmc_project/extsensors/margin/fleeting0",
"writePath": "",
"min": 0,
"max": 0,
"ignoreDbusMinMax": true,
"timeout": 0
},
{
"name": "fleeting1",
"type": "margin",
"readPath": "/xyz/openbmc_project/extsensors/margin/fleeting1",
"writePath": "",
"min": 0,
"max": 0,
"ignoreDbusMinMax": true,
"timeout": 0
},
{
"name": "fleeting2",
"type": "margin",
"readPath": "/xyz/openbmc_project/extsensors/margin/fleeting2",
"writePath": "",
"min": 0,
"max": 0,
"ignoreDbusMinMax": true,
"timeout": 0
},
{
"name": "cputemp",
"type": "temp",
"readPath": "/xyz/openbmc_project/sensors/temperature/cputemp",
"writePath": "",
"min": 0,
"max": 0,
"ignoreDbusMinMax": true,
"timeout": 0
},
{
"name": "vddcr_cpu",
"type": "temp",
"readPath": "/xyz/openbmc_project/sensors/temperature/vddcr_cpu",
"writePath": "",
"min": 0,
"max": 0,
"ignoreDbusMinMax": true,
"timeout": 0
},
{
"name": "vddcr_soc",
"type": "temp",
"readPath": "/xyz/openbmc_project/sensors/temperature/vddcr_soc",
"writePath": "",
"min": 0,
"max": 0,
"ignoreDbusMinMax": true,
"timeout": 0
},
{
"name": "vddio_abcd",
"type": "temp",
"readPath": "/xyz/openbmc_project/sensors/temperature/vddio_abcd",
"writePath": "",
"min": 0,
"max": 0,
"ignoreDbusMinMax": true,
"timeout": 0
},
{
"name": "vddio_efgh",
"type": "temp",
"readPath": "/xyz/openbmc_project/sensors/temperature/vddio_efgh",
"writePath": "",
"min": 0,
"max": 0,
"ignoreDbusMinMax": true,
"timeout": 0
},
{
"name": "p12v_mobo",
"type": "temp",
"readPath": "/xyz/openbmc_project/sensors/temperature/p12v_mobo",
"writePath": "",
"min": 0,
"max": 0,
"ignoreDbusMinMax": true,
"timeout": 0
},
{
"name": "powerseq_temp",
"type": "temp",
"readPath": "/xyz/openbmc_project/sensors/temperature/powerseq_temp",
"writePath": "",
"min": 0,
"max": 0,
"ignoreDbusMinMax": true,
"timeout": 0
},
{
"name": "p12v_fan",
"type": "temp",
"readPath": "/xyz/openbmc_project/sensors/temperature/p12v_fan",
"writePath": "",
"min": 0,
"max": 0,
"ignoreDbusMinMax": true,
"timeout": 0
},
{
"name": "nvme0",
"type": "temp",
"readPath": "/xyz/openbmc_project/sensors/temperature/nvme0",
"writePath": "",
"min": 0,
"max": 0,
"ignoreDbusMinMax": true,
"timeout": 0
},
{
"name": "nvme1",
"type": "temp",
"readPath": "/xyz/openbmc_project/sensors/temperature/nvme1",
"writePath": "",
"min": 0,
"max": 0,
"ignoreDbusMinMax": true,
"timeout": 0
},
{
"name": "nvme2",
"type": "temp",
"readPath": "/xyz/openbmc_project/sensors/temperature/nvme2",
"writePath": "",
"min": 0,
"max": 0,
"ignoreDbusMinMax": true,
"timeout": 0
},
{
"name": "nvme3",
"type": "temp",
"readPath": "/xyz/openbmc_project/sensors/temperature/nvme3",
"writePath": "",
"min": 0,
"max": 0,
"ignoreDbusMinMax": true,
"timeout": 0
},
{
"name": "nvme4",
"type": "temp",
"readPath": "/xyz/openbmc_project/sensors/temperature/nvme4",
"writePath": "",
"min": 0,
"max": 0,
"ignoreDbusMinMax": true,
"timeout": 0
},
{
"name": "nvme5",
"type": "temp",
"readPath": "/xyz/openbmc_project/sensors/temperature/nvme5",
"writePath": "",
"min": 0,
"max": 0,
"ignoreDbusMinMax": true,
"timeout": 0
},
{
"name": "nvme6",
"type": "temp",
"readPath": "/xyz/openbmc_project/sensors/temperature/nvme6",
"writePath": "",
"min": 0,
"max": 0,
"ignoreDbusMinMax": true,
"timeout": 0
},
{
"name": "nvme7",
"type": "temp",
"readPath": "/xyz/openbmc_project/sensors/temperature/nvme7",
"writePath": "",
"min": 0,
"max": 0,
"ignoreDbusMinMax": true,
"timeout": 0
},
{
"name": "nvme8",
"type": "temp",
"readPath": "/xyz/openbmc_project/sensors/temperature/nvme8",
"writePath": "",
"min": 0,
"max": 0,
"ignoreDbusMinMax": true,
"timeout": 0
},
{
"name": "nvme9",
"type": "temp",
"readPath": "/xyz/openbmc_project/sensors/temperature/nvme9",
"writePath": "",
"min": 0,
"max": 0,
"ignoreDbusMinMax": true,
"timeout": 0
},
{
"name": "nvme10",
"type": "temp",
"readPath": "/xyz/openbmc_project/sensors/temperature/nvme10",
"writePath": "",
"min": 0,
"max": 0,
"ignoreDbusMinMax": true,
"timeout": 0
},
{
"name": "nvme11",
"type": "temp",
"readPath": "/xyz/openbmc_project/sensors/temperature/nvme11",
"writePath": "",
"min": 0,
"max": 0,
"ignoreDbusMinMax": true,
"timeout": 0
},
{
"name": "nvme12",
"type": "temp",
"readPath": "/xyz/openbmc_project/sensors/temperature/nvme12",
"writePath": "",
"min": 0,
"max": 0,
"ignoreDbusMinMax": true,
"timeout": 0
},
{
"name": "nvme13",
"type": "temp",
"readPath": "/xyz/openbmc_project/sensors/temperature/nvme13",
"writePath": "",
"min": 0,
"max": 0,
"ignoreDbusMinMax": true,
"timeout": 0
},
{
"name": "nvme14",
"type": "temp",
"readPath": "/xyz/openbmc_project/sensors/temperature/nvme14",
"writePath": "",
"min": 0,
"max": 0,
"ignoreDbusMinMax": true,
"timeout": 0
},
{
"name": "nvme15",
"type": "temp",
"readPath": "/xyz/openbmc_project/sensors/temperature/nvme15",
"writePath": "",
"min": 0,
"max": 0,
"ignoreDbusMinMax": true,
"timeout": 0
}
],
"zones": [
{
"id": 0,
"minThermalOutput": 0.0,
"failsafePercent": 100.0,
"pids": [
{
"name": "fan0",
"type": "fan",
"inputs": [
"fan0"
],
"setpoint": 0.0,
"pid": {
"samplePeriod": 0.1,
"proportionalCoeff": 0.0,
"integralCoeff": 0.0,
"feedFwdOffsetCoeff": 0.0,
"feedFwdGainCoeff": 0.0056,
"integralLimit_min": 0.0,
"integralLimit_max": 0.0,
"outLim_min": 15.0,
"outLim_max": 100.0,
"slewNeg": 0.0,
"slewPos": 0.0
}
},
{
"name": "fan1",
"type": "fan",
"inputs": [
"fan1"
],
"setpoint": 0.0,
"pid": {
"samplePeriod": 0.1,
"proportionalCoeff": 0.0,
"integralCoeff": 0.0,
"feedFwdOffsetCoeff": 0.0,
"feedFwdGainCoeff": 0.0056,
"integralLimit_min": 0.0,
"integralLimit_max": 0.0,
"outLim_min": 15.0,
"outLim_max": 100.0,
"slewNeg": 0.0,
"slewPos": 0.0
}
},
{
"name": "cputemp",
"type": "temp",
"inputs": [
"cputemp"
],
"setpoint": 80.0,
"pid": {
"samplePeriod": 1.0,
"proportionalCoeff": -714.0,
"integralCoeff": -9.0,
"feedFwdOffsetCoeff": 0.0,
"feedFwdGainCoeff": 0.0,
"integralLimit_min": 2679.0,
"integralLimit_max": 18000.0,
"outLim_min": 2679.0,
"outLim_max": 18000.0,
"slewNeg": 0.0,
"slewPos": 0.0,
"positiveHysteresis": 0.0,
"negativeHysteresis": 0.0
}
},
{
"name": "zone0_vr",
"type": "temp",
"inputs": [
"vddcr_cpu",
"vddcr_soc",
"vddio_abcd",
"vddio_efgh",
"p12v_mobo",
"powerseq_temp"
],
"setpoint": 90.0,
"pid": {
"samplePeriod": 1.0,
"proportionalCoeff": -536.0,
"integralCoeff": -9.0,
"feedFwdOffsetCoeff": 0.0,
"feedFwdGainCoeff": 0.0,
"integralLimit_min": 2679.0,
"integralLimit_max": 18000.0,
"outLim_min": 2679.0,
"outLim_max": 18000.0,
"slewNeg": 0.0,
"slewPos": 0.0,
"positiveHysteresis": 0.0,
"negativeHysteresis": 0.0
}
},
{
"name": "fleeting0",
"type": "margin",
"inputs": [
"fleeting0"
],
"setpoint": 10.0,
"pid": {
"samplePeriod": 1.0,
"proportionalCoeff": 536.0,
"integralCoeff": 9.0,
"feedFwdOffsetCoeff": 0.0,
"feedFwdGainCoeff": 0.0,
"integralLimit_min": 2679.0,
"integralLimit_max": 18000.0,
"outLim_min": 2679.0,
"outLim_max": 18000.0,
"slewNeg": 0.0,
"slewPos": 0.0,
"positiveHysteresis": 0.0,
"negativeHysteresis": 0.0
}
},
{
"name": "fleeting1",
"type": "margin",
"inputs": [
"fleeting1"
],
"setpoint": 10.0,
"pid": {
"samplePeriod": 1.0,
"proportionalCoeff": 536.0,
"integralCoeff": 18.0,
"feedFwdOffsetCoeff": 0.0,
"feedFwdGainCoeff": 0.0,
"integralLimit_min": 2679.0,
"integralLimit_max": 18000.0,
"outLim_min": 2679.0,
"outLim_max": 18000.0,
"slewNeg": 0.0,
"slewPos": 0.0,
"positiveHysteresis": 0.0,
"negativeHysteresis": 0.0
}
},
{
"name": "fleeting2",
"type": "margin",
"inputs": [
"fleeting2"
],
"setpoint": 10.0,
"pid": {
"samplePeriod": 1.0,
"proportionalCoeff": 536.0,
"integralCoeff": 18.0,
"feedFwdOffsetCoeff": 0.0,
"feedFwdGainCoeff": 0.0,
"integralLimit_min": 2679.0,
"integralLimit_max": 18000.0,
"outLim_min": 2679.0,
"outLim_max": 18000.0,
"slewNeg": 0.0,
"slewPos": 0.0,
"positiveHysteresis": 0.0,
"negativeHysteresis": 0.0
}
}
]
},
{
"id": 1,
"minThermalOutput": 0.0,
"failsafePercent": 100.0,
"pids": [
{
"name": "fb_fan0",
"type": "fan",
"inputs": [
"fb_fan0"
],
"setpoint": 0.0,
"pid": {
"samplePeriod": 0.1,
"proportionalCoeff": 0.0,
"integralCoeff": 0.0,
"feedFwdOffsetCoeff": 0.0,
"feedFwdGainCoeff": 0.0056,
"integralLimit_min": 0.0,
"integralLimit_max": 0.0,
"outLim_min": 15.0,
"outLim_max": 100.0,
"slewNeg": 0.0,
"slewPos": 0.0
}
},
{
"name": "fb_fan1",
"type": "fan",
"inputs": [
"fb_fan1"
],
"setpoint": 0.0,
"pid": {
"samplePeriod": 0.1,
"proportionalCoeff": 0.0,
"integralCoeff": 0.0,
"feedFwdOffsetCoeff": 0.0,
"feedFwdGainCoeff": 0.0056,
"integralLimit_min": 0.0,
"integralLimit_max": 0.0,
"outLim_min": 15.0,
"outLim_max": 100.0,
"slewNeg": 0.0,
"slewPos": 0.0
}
},
{
"name": "fb_fan2",
"type": "fan",
"inputs": [
"fb_fan2"
],
"setpoint": 0.0,
"pid": {
"samplePeriod": 0.1,
"proportionalCoeff": 0.0,
"integralCoeff": 0.0,
"feedFwdOffsetCoeff": 0.0,
"feedFwdGainCoeff": 0.0056,
"integralLimit_min": 0.0,
"integralLimit_max": 0.0,
"outLim_min": 15.0,
"outLim_max": 100.0,
"slewNeg": 0.0,
"slewPos": 0.0
}
},
{
"name": "p12v_fan",
"type": "temp",
"inputs": [
"p12v_fan"
],
"setpoint": 90.0,
"pid": {
"samplePeriod": 1.0,
"proportionalCoeff": -268.0,
"integralCoeff": -4.0,
"feedFwdOffsetCoeff": 0.0,
"feedFwdGainCoeff": 0.0,
"integralLimit_min": 2679.0,
"integralLimit_max": 18000.0,
"outLim_min": 2679.0,
"outLim_max": 18000.0,
"slewNeg": 0.0,
"slewPos": 0.0,
"positiveHysteresis": 0.0,
"negativeHysteresis": 0.0
}
},
{
"name": "nvme0",
"type": "temp",
"inputs": [
"nvme0"
],
"setpoint": @WCTemp00@,
"pid": {
"samplePeriod": 1.0,
"proportionalCoeff": -1250.0,
"integralCoeff": -12.0,
"feedFwdOffsetCoeff": 0.0,
"feedFwdGainCoeff": 0.0,
"integralLimit_min": 2679.0,
"integralLimit_max": 18000.0,
"outLim_min": 2679.0,
"outLim_max": 18000.0,
"slewNeg": 0.0,
"slewPos": 0.0,
"positiveHysteresis": 0.0,
"negativeHysteresis": 0.0
}
},
{
"name": "nvme1",
"type": "temp",
"inputs": [
"nvme1"
],
"setpoint": @WCTemp01@,
"pid": {
"samplePeriod": 1.0,
"proportionalCoeff": -1250.0,
"integralCoeff": -12.0,
"feedFwdOffsetCoeff": 0.0,
"feedFwdGainCoeff": 0.0,
"integralLimit_min": 2679.0,
"integralLimit_max": 18000.0,
"outLim_min": 2679.0,
"outLim_max": 18000.0,
"slewNeg": 0.0,
"slewPos": 0.0,
"positiveHysteresis": 0.0,
"negativeHysteresis": 0.0
}
},
{
"name": "nvme2",
"type": "temp",
"inputs": [
"nvme2"
],
"setpoint": @WCTemp02@,
"pid": {
"samplePeriod": 1.0,
"proportionalCoeff": -1250.0,
"integralCoeff": -12.0,
"feedFwdOffsetCoeff": 0.0,
"feedFwdGainCoeff": 0.0,
"integralLimit_min": 2679.0,
"integralLimit_max": 18000.0,
"outLim_min": 2679.0,
"outLim_max": 18000.0,
"slewNeg": 0.0,
"slewPos": 0.0,
"positiveHysteresis": 0.0,
"negativeHysteresis": 0.0
}
},
{
"name": "nvme3",
"type": "temp",
"inputs": [
"nvme3"
],
"setpoint": @WCTemp03@,
"pid": {
"samplePeriod": 1.0,
"proportionalCoeff": -1250.0,
"integralCoeff": -12.0,
"feedFwdOffsetCoeff": 0.0,
"feedFwdGainCoeff": 0.0,
"integralLimit_min": 2679.0,
"integralLimit_max": 18000.0,
"outLim_min": 2679.0,
"outLim_max": 18000.0,
"slewNeg": 0.0,
"slewPos": 0.0,
"positiveHysteresis": 0.0,
"negativeHysteresis": 0.0
}
},
{
"name": "nvme4",
"type": "temp",
"inputs": [
"nvme4"
],
"setpoint": @WCTemp04@,
"pid": {
"samplePeriod": 1.0,
"proportionalCoeff": -1250.0,
"integralCoeff": -12.0,
"feedFwdOffsetCoeff": 0.0,
"feedFwdGainCoeff": 0.0,
"integralLimit_min": 2679.0,
"integralLimit_max": 18000.0,
"outLim_min": 2679.0,
"outLim_max": 18000.0,
"slewNeg": 0.0,
"slewPos": 0.0,
"positiveHysteresis": 0.0,
"negativeHysteresis": 0.0
}
},
{
"name": "nvme5",
"type": "temp",
"inputs": [
"nvme5"
],
"setpoint": @WCTemp05@,
"pid": {
"samplePeriod": 1.0,
"proportionalCoeff": -1250.0,
"integralCoeff": -12.0,
"feedFwdOffsetCoeff": 0.0,
"feedFwdGainCoeff": 0.0,
"integralLimit_min": 2679.0,
"integralLimit_max": 18000.0,
"outLim_min": 2679.0,
"outLim_max": 18000.0,
"slewNeg": 0.0,
"slewPos": 0.0,
"positiveHysteresis": 0.0,
"negativeHysteresis": 0.0
}
},
{
"name": "nvme6",
"type": "temp",
"inputs": [
"nvme6"
],
"setpoint": @WCTemp06@,
"pid": {
"samplePeriod": 1.0,
"proportionalCoeff": -1250.0,
"integralCoeff": -12.0,
"feedFwdOffsetCoeff": 0.0,
"feedFwdGainCoeff": 0.0,
"integralLimit_min": 2679.0,
"integralLimit_max": 18000.0,
"outLim_min": 2679.0,
"outLim_max": 18000.0,
"slewNeg": 0.0,
"slewPos": 0.0,
"positiveHysteresis": 0.0,
"negativeHysteresis": 0.0
}
},
{
"name": "nvme7",
"type": "temp",
"inputs": [
"nvme7"
],
"setpoint": @WCTemp07@,
"pid": {
"samplePeriod": 1.0,
"proportionalCoeff": -1250.0,
"integralCoeff": -12.0,
"feedFwdOffsetCoeff": 0.0,
"feedFwdGainCoeff": 0.0,
"integralLimit_min": 2679.0,
"integralLimit_max": 18000.0,
"outLim_min": 2679.0,
"outLim_max": 18000.0,
"slewNeg": 0.0,
"slewPos": 0.0,
"positiveHysteresis": 0.0,
"negativeHysteresis": 0.0
}
},
{
"name": "nvme8",
"type": "temp",
"inputs": [
"nvme8"
],
"setpoint": @WCTemp08@,
"pid": {
"samplePeriod": 1.0,
"proportionalCoeff": -1250.0,
"integralCoeff": -12.0,
"feedFwdOffsetCoeff": 0.0,
"feedFwdGainCoeff": 0.0,
"integralLimit_min": 2679.0,
"integralLimit_max": 18000.0,
"outLim_min": 2679.0,
"outLim_max": 18000.0,
"slewNeg": 0.0,
"slewPos": 0.0,
"positiveHysteresis": 0.0,
"negativeHysteresis": 0.0
}
},
{
"name": "nvme9",
"type": "temp",
"inputs": [
"nvme9"
],
"setpoint": @WCTemp09@,
"pid": {
"samplePeriod": 1.0,
"proportionalCoeff": -1250.0,
"integralCoeff": -12.0,
"feedFwdOffsetCoeff": 0.0,
"feedFwdGainCoeff": 0.0,
"integralLimit_min": 2679.0,
"integralLimit_max": 18000.0,
"outLim_min": 2679.0,
"outLim_max": 18000.0,
"slewNeg": 0.0,
"slewPos": 0.0,
"positiveHysteresis": 0.0,
"negativeHysteresis": 0.0
}
},
{
"name": "nvme10",
"type": "temp",
"inputs": [
"nvme10"
],
"setpoint": @WCTemp10@,
"pid": {
"samplePeriod": 1.0,
"proportionalCoeff": -1250.0,
"integralCoeff": -12.0,
"feedFwdOffsetCoeff": 0.0,
"feedFwdGainCoeff": 0.0,
"integralLimit_min": 2679.0,
"integralLimit_max": 18000.0,
"outLim_min": 2679.0,
"outLim_max": 18000.0,
"slewNeg": 0.0,
"slewPos": 0.0,
"positiveHysteresis": 0.0,
"negativeHysteresis": 0.0
}
},
{
"name": "nvme11",
"type": "temp",
"inputs": [
"nvme11"
],
"setpoint": @WCTemp11@,
"pid": {
"samplePeriod": 1.0,
"proportionalCoeff": -1250.0,
"integralCoeff": -12.0,
"feedFwdOffsetCoeff": 0.0,
"feedFwdGainCoeff": 0.0,
"integralLimit_min": 2679.0,
"integralLimit_max": 18000.0,
"outLim_min": 2679.0,
"outLim_max": 18000.0,
"slewNeg": 0.0,
"slewPos": 0.0,
"positiveHysteresis": 0.0,
"negativeHysteresis": 0.0
}
},
{
"name": "nvme12",
"type": "temp",
"inputs": [
"nvme12"
],
"setpoint": @WCTemp12@,
"pid": {
"samplePeriod": 1.0,
"proportionalCoeff": -1250.0,
"integralCoeff": -12.0,
"feedFwdOffsetCoeff": 0.0,
"feedFwdGainCoeff": 0.0,
"integralLimit_min": 2679.0,
"integralLimit_max": 18000.0,
"outLim_min": 2679.0,
"outLim_max": 18000.0,
"slewNeg": 0.0,
"slewPos": 0.0,
"positiveHysteresis": 0.0,
"negativeHysteresis": 0.0
}
},
{
"name": "nvme13",
"type": "temp",
"inputs": [
"nvme13"
],
"setpoint": @WCTemp13@,
"pid": {
"samplePeriod": 1.0,
"proportionalCoeff": -1250.0,
"integralCoeff": -12.0,
"feedFwdOffsetCoeff": 0.0,
"feedFwdGainCoeff": 0.0,
"integralLimit_min": 2679.0,
"integralLimit_max": 18000.0,
"outLim_min": 2679.0,
"outLim_max": 18000.0,
"slewNeg": 0.0,
"slewPos": 0.0,
"positiveHysteresis": 0.0,
"negativeHysteresis": 0.0
}
},
{
"name": "nvme14",
"type": "temp",
"inputs": [
"nvme14"
],
"setpoint": @WCTemp14@,
"pid": {
"samplePeriod": 1.0,
"proportionalCoeff": -1250.0,
"integralCoeff": -12.0,
"feedFwdOffsetCoeff": 0.0,
"feedFwdGainCoeff": 0.0,
"integralLimit_min": 2679.0,
"integralLimit_max": 18000.0,
"outLim_min": 2679.0,
"outLim_max": 18000.0,
"slewNeg": 0.0,
"slewPos": 0.0,
"positiveHysteresis": 0.0,
"negativeHysteresis": 0.0
}
},
{
"name": "nvme15",
"type": "temp",
"inputs": [
"nvme15"
],
"setpoint": @WCTemp15@,
"pid": {
"samplePeriod": 1.0,
"proportionalCoeff": -1250.0,
"integralCoeff": -12.0,
"feedFwdOffsetCoeff": 0.0,
"feedFwdGainCoeff": 0.0,
"integralLimit_min": 2679.0,
"integralLimit_max": 18000.0,
"outLim_min": 2679.0,
"outLim_max": 18000.0,
"slewNeg": 0.0,
"slewPos": 0.0,
"positiveHysteresis": 0.0,
"negativeHysteresis": 0.0
}
}
]
}
]
}
@@ -0,0 +1,88 @@
#!/bin/bash
FAN_TABLE_FILE_IN="/usr/share/swampd/config.json.in"
TEMP_FILE="$(mktemp)"
cp "$FAN_TABLE_FILE_IN" "$TEMP_FILE"
# wait for fan dbus
mapper wait /xyz/openbmc_project/sensors/fan_tach/fan0
mapper wait /xyz/openbmc_project/sensors/fan_tach/fan1
mapper wait /xyz/openbmc_project/sensors/fan_tach/fb_fan0
mapper wait /xyz/openbmc_project/sensors/fan_tach/fb_fan1
mapper wait /xyz/openbmc_project/sensors/fan_tach/fb_fan2
# generate fan table writePath
Fan_0_To_4_Hwmon="$(ls /sys/devices/platform/ahb/ahb:*/*pwm-fan-controller/hwmon/)"
if [[ "$Fan_0_To_4_Hwmon" != "" ]]; then
sed -i "s/@Fan_0_To_4_Hwmon@/$Fan_0_To_4_Hwmon/g" "$TEMP_FILE"
fi
presentGpio=()
presentState=()
gpioPath="/sys/class/gpio/gpio"
if [[ -f "/etc/nvme/nvme_config.json" ]]; then
# shellcheck disable=SC2207
presentGpio=($(grep NVMeDrivePresentPin /etc/nvme/nvme_config.json \
| awk '{print $2}' | cut -d "," -f 0))
fi
nvmePath="/xyz/openbmc_project/sensors/temperature/nvme"
# Get and Set WCTEMP
for ((i = 0; i < 16; i++)); do
name="@WCTemp$(printf "%02d" $i)@"
wcTemp=72000
if [[ -d "${gpioPath}${presentGpio[i]}" ]] &&
[[ "$(cat "${gpioPath}${presentGpio[i]}/value")" == "0" ]]; then
presentState[i]="true"
else
presentState[i]="false"
fi
if [[ "${presentState[i]}" == "true" ]]; then
actualWCTemp=0
for ((j = 0; j < 3; j++)); do
actualWCTemp="$(
busctl get-property xyz.openbmc_project.nvme.manager \
${nvmePath}${i} \
xyz.openbmc_project.Sensor.Threshold.Critical \
CriticalHigh | awk '{print $2}'
)"
if [[ "${actualWCTemp}" -ne 0 ]]; then
break
fi
echo "${nvmePath}${i} WCTemp was read to be 0, retrying after 1 sec sleep"
sleep 1
done
if [[ "${actualWCTemp}" -ne 0 ]]; then
wcTemp="$(echo "${actualWCTemp} -7" | awk '{printf $1 + $2}')"
else
echo "${nvmePath}${i} WCTemp was read to be 0, using default WCTemp: ${wcTemp}"
fi
fi
sed -i "s/$name/${wcTemp}/g" "$TEMP_FILE"
if [[ "${presentState[i]}" == "false" ]]; then
sensorPath="${nvmePath}${i}"
pathLine=$(grep -nw "$sensorPath" "$TEMP_FILE" | awk -F ':' '{print $1}')
sed -i "$TEMP_FILE" -re "$((pathLine - 3)),$((pathLine + 6))d"
if [ $i -eq 15 ]; then
sed -i "$((pathLine - 4))s/,//" "$TEMP_FILE"
fi
listLine=$(grep -n "\"name\": \"nvme${i}\"" "$TEMP_FILE" | awk -F ':' '{print $1}')
sed -i "$TEMP_FILE" -re "$((listLine - 1)),$((listLine + 21))d"
if [ $i -eq 15 ]; then
sed -i "$((listLine - 2))s/,//" "$TEMP_FILE"
fi
fi
done
# Use shell parameter expansion to trim the ".in" suffix
mv "$TEMP_FILE" "${FAN_TABLE_FILE_IN%".in"}"
exit 0
@@ -0,0 +1,15 @@
[Unit]
Description=Swampd Margin-based Fan Control Daemon
After=xyz.openbmc_project.Hwmon@-ahb-apb-pwm\x2dfan\x2dcontroller\x40103000.service
After=xyz.openbmc_project.nvme.manager.service
[Service]
Type=simple
ExecStartPre=/usr/bin/fan-table-init.sh
ExecStart=/usr/bin/swampd
Restart=always
RestartSec=5
StartLimitInterval=0
[Install]
WantedBy=basic.target
@@ -0,0 +1,25 @@
FILESEXTRAPATHS:prepend:gbs := "${THISDIR}/${PN}:"
SRC_URI:append:gbs = " file://config.json.in \
file://fan-table-init.sh \
file://phosphor-pid-control.service \
"
FILES:${PN}:append:gbs = " ${datadir}/swampd/config.json.in"
FILES:${PN}:append:gbs = " ${bindir}/fan-table-init.sh"
RDEPENDS:${PN} += "bash"
SYSTEMD_SERVICE:${PN}:append:gbs = " phosphor-pid-control.service"
do_install:append:gbs() {
install -d ${D}/${bindir}
install -m 0755 ${WORKDIR}/fan-table-init.sh ${D}/${bindir}
install -d ${D}${datadir}/swampd
install -m 0644 -D ${WORKDIR}/config.json.in \
${D}${datadir}/swampd/
install -d ${D}${systemd_system_unitdir}
install -m 0644 ${WORKDIR}/phosphor-pid-control.service \
${D}${systemd_system_unitdir}
}
@@ -0,0 +1,6 @@
#The gpio 73 is a real gpio, which is used to
#store the sas cable 0 present signal
INVENTORY=/system/chassis/cable/ss_cab0_prsnt
DEVPATH=/dev/input/event0
KEY=73
NAME=ss_cab0_prsnt
@@ -0,0 +1,6 @@
#The gpio 72 is a real gpio, which is used to
#store the sas cable 1 present signal
INVENTORY=/system/chassis/cable/ss_cab1_prsnt
DEVPATH=/dev/input/event0
KEY=72
NAME=ss_cab1_prsnt
@@ -0,0 +1,6 @@
#The gpio 146 is a real gpio, which is used to
#store the PWRGD_P12V_ALL_FANS signal
INVENTORY=/system/chassis/entity/fans_efuse_pg
DEVPATH=/dev/input/event0
KEY=146
NAME=fans_efuse_pg
@@ -0,0 +1,6 @@
#The gpio 88 is a real gpio, which is used to
#store the PWRGD_P12V_ALL_SLOTS signal
INVENTORY=/system/chassis/entity/pwrgd_p12v_slots
DEVPATH=/dev/input/event0
KEY=88
NAME=pwrgd_p12v_slots
@@ -0,0 +1,6 @@
#The gpio 71 is a real gpio, which is used to
#store the sas cable 2 present signal
INVENTORY=/system/chassis/cable/ss_cab2_prsnt
DEVPATH=/dev/input/event0
KEY=71
NAME=ss_cab2_prsnt
@@ -0,0 +1,6 @@
#The gpio 70 is a real gpio, which is used to
#store the sas cable 3 present signal
INVENTORY=/system/chassis/cable/ss_cab3_prsnt
DEVPATH=/dev/input/event0
KEY=70
NAME=ss_cab3_prsnt
@@ -0,0 +1,6 @@
#The gpio 57 is a real gpio, which is used to
#store the HSBP cable present signal
INVENTORY=/system/chassis/cable/hsbp_cab_prsnt
DEVPATH=/dev/input/event0
KEY=57
NAME=hsbp_cab_prsnt
@@ -0,0 +1,6 @@
#The gpio 58 is a real gpio, which is used to
#store the fan board cable present signal
INVENTORY=/system/chassis/cable/fanbd_cab_prsnt
DEVPATH=/dev/input/event0
KEY=58
NAME=fanbd_cab_prsnt
@@ -0,0 +1,6 @@
#The gpio 69 is a real gpio, which is used to
#store the HSBP 12V standby cable present signal
INVENTORY=/system/chassis/cable/bp12v_cab_prsnt
DEVPATH=/dev/input/event0
KEY=69
NAME=bp12v_cab_prsnt
@@ -0,0 +1,6 @@
#The gpio 5 is a real gpio, which is used to
#store the SATA0 present signal
INVENTORY=/system/chassis/entity/sata0_prsnt
DEVPATH=/dev/input/event0
KEY=5
NAME=sata0_prsnt
@@ -0,0 +1,6 @@
#The gpio 120 is a real gpio, which is used to
#store the PE0 present signal
INVENTORY=/system/chassis/entity/pe_slot0_prsnt
DEVPATH=/dev/input/event0
KEY=120
NAME=pe_slot0_prsnt
@@ -0,0 +1,6 @@
#The gpio 121 is a real gpio, which is used to
#store the PE1 present signal
INVENTORY=/system/chassis/entity/pe_slot1_prsnt
DEVPATH=/dev/input/event0
KEY=121
NAME=pe_slot1_prsnt
@@ -0,0 +1,14 @@
[Unit]
Description=Phosphor GPIO %I Presence
Wants=mapper-wait@-xyz-openbmc_project-inventory.service
After=mapper-wait@-xyz-openbmc_project-inventory.service
ConditionPathExists=/etc/default/obmc/gpio/gpios-%i.conf
StartLimitBurst=10
[Service]
Restart=on-failure
EnvironmentFile=/etc/default/obmc/gpio/gpios-%i.conf
ExecStart=/usr/bin/phosphor-gpio-presence --path=${DEVPATH} --inventory=${INVENTORY} --key=${KEY} --name=${NAME} --drivers=${DRIVERS} --extra-ifaces=${EXTRA_IFACES}
[Install]
RequiredBy=multi-user.target
@@ -0,0 +1,34 @@
inherit obmc-phosphor-systemd
FILESEXTRAPATHS:prepend:gbs := "${THISDIR}/${PN}:"
SRC_URI:append:gbs = " file://phosphor-gpio-presence@.service.replace"
TMPL_PRESENT = "phosphor-gpio-presence@.service"
INSTFMT_PRESENT = "phosphor-gpio-presence@{0}.service"
PRESENT_TGT = "multi-user.target"
FMT_PRESENT = "../${TMPL_PRESENT}:${PRESENT_TGT}.requires/${INSTFMT_PRESENT}"
SYSTEMD_ENVIRONMENT_FILE:${PN}:append:gbs = " obmc/gpio/gpios-0.conf"
SYSTEMD_ENVIRONMENT_FILE:${PN}:append:gbs = " obmc/gpio/gpios-1.conf"
SYSTEMD_ENVIRONMENT_FILE:${PN}:append:gbs = " obmc/gpio/gpios-2.conf"
SYSTEMD_ENVIRONMENT_FILE:${PN}:append:gbs = " obmc/gpio/gpios-3.conf"
SYSTEMD_ENVIRONMENT_FILE:${PN}:append:gbs = " obmc/gpio/gpios-4.conf"
SYSTEMD_ENVIRONMENT_FILE:${PN}:append:gbs = " obmc/gpio/gpios-5.conf"
SYSTEMD_ENVIRONMENT_FILE:${PN}:append:gbs = " obmc/gpio/gpios-6.conf"
SYSTEMD_ENVIRONMENT_FILE:${PN}:append:gbs = " obmc/gpio/gpios-7.conf"
SYSTEMD_ENVIRONMENT_FILE:${PN}:append:gbs = " obmc/gpio/gpios-8.conf"
SYSTEMD_ENVIRONMENT_FILE:${PN}:append:gbs = " obmc/gpio/gpios-9.conf"
SYSTEMD_ENVIRONMENT_FILE:${PN}:append:gbs = " obmc/gpio/gpios-10.conf"
SYSTEMD_ENVIRONMENT_FILE:${PN}:append:gbs = " obmc/gpio/gpios-11.conf"
GBS_OBMC_PRESENT_INSTANCES = "0 1 2 3 4 5 6 7 8 9 10 11"
SYSTEMD_LINK:${PN}-presence:append:gbs = " ${@compose_list(d, 'FMT_PRESENT', 'GBS_OBMC_PRESENT_INSTANCES')}"
GBS_PRESENT_ENV_FMT = "obmc/gpio/gpios-{0}.conf"
SYSTEMD_ENVIRONMENT_FILE:${PN}-presence:gbs = " ${@compose_list(d, 'GBS_PRESENT_ENV_FMT', 'GBS_OBMC_PRESENT_INSTANCES')}"
do_install:append:gbs() {
install -d ${D}${systemd_system_unitdir}
install -m 0644 ${WORKDIR}/phosphor-gpio-presence@.service.replace ${D}${systemd_system_unitdir}/phosphor-gpio-presence@.service
}
@@ -0,0 +1,2 @@
SNOOP_DEVICE:gbs = "npcm7xx-lpc-bpc0"
PACKAGECONFIG:append:gbs = " 7seg"
@@ -0,0 +1,41 @@
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " phosphor-host-postd"
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " phosphor-sel-logger"
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " google-ipmi-sys"
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " google-ipmi-i2c"
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " gbs-hotswap-power-cycle"
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " loadsvf"
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " gbs-cpld-ver-check"
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " memtester"
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " net-tools"
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " gbs-boot-status-led"
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " phosphor-nvme"
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " gbs-detect-gpio-present"
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " phosphor-ecc"
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " gbs-sysinit"
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " gbs-ipmi-entity-association-map"
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " usb-network"
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " phosphor-image-signing"
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " openssl-bin"
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " phosphor-ipmi-blobs-binarystore"
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " phosphor-virtual-sensor"
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " acpi-power-state-daemon"
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " phosphor-gpio-monitor-presence"
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " ipmitool"
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " phosphor-health-monitor"
# Add back packages that were part of packagegroup-obmc-apps-extras
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " phosphor-hwmon"
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " phosphor-inventory-manager"
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " phosphor-user-manager"
# Required for LEDs. Part of obmc-leds
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " phosphor-led-manager"
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " phosphor-led-sysfs"
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " phosphor-led-manager-faultmonitor"
# Required for the front port. Part of obmc-console
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " obmc-console"
# Required from packagegroup-gbs-apps
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " virtual/bios-update"
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " x86-power-control"
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " phosphor-pid-control"
# Required for phosphor-ipmi-kcs
OBMC_IMAGE_EXTRA_INSTALL:append:gbs = " virtual-obmc-host-ipmi-hw"
@@ -0,0 +1,17 @@
SUMMARY = "Copy the inventory cleanup yaml for inventory manager"
PR = "r1"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
inherit allarch
inherit phosphor-inventory-manager
S = "${WORKDIR}"
SRC_URI = "file://inventory-cleanup.yaml"
do_install() {
install -D inventory-cleanup.yaml ${D}${base_datadir}/events.d/inventory-cleanup.yaml
}
FILES:${PN} += "${base_datadir}/events.d/inventory-cleanup.yaml"
@@ -0,0 +1,16 @@
description: >
GBS inventory fixups
events:
- name: Add Chassis interface
description: >
Add the chassis interface on the chassis inventory path
type: startup
actions:
- name: createObjects
objs:
/system/chassis:
xyz.openbmc_project.Inventory.Item.Chassis:
Type:
value: "xyz.openbmc_project.Inventory.Item.Chassis.ChassisType.RackMount"
type: string
@@ -0,0 +1,491 @@
[
{
"path": "system/chassis/motherboard/nvme0",
"endpoints":
[
{
"types":
{
"rType": "inventory",
"fType": "sensors"
},
"paths":
[
"/xyz/openbmc_project/sensors/temperature/nvme0"
]
}
]
},
{
"path": "system/chassis/motherboard/nvme1",
"endpoints":
[
{
"types":
{
"rType": "inventory",
"fType": "sensors"
},
"paths":
[
"/xyz/openbmc_project/sensors/temperature/nvme1"
]
}
]
},
{
"path": "system/chassis/motherboard/nvme2",
"endpoints":
[
{
"types":
{
"rType": "inventory",
"fType": "sensors"
},
"paths":
[
"/xyz/openbmc_project/sensors/temperature/nvme2"
]
}
]
},
{
"path": "system/chassis/motherboard/nvme3",
"endpoints":
[
{
"types":
{
"rType": "inventory",
"fType": "sensors"
},
"paths":
[
"/xyz/openbmc_project/sensors/temperature/nvme3"
]
}
]
},
{
"path": "system/chassis/motherboard/nvme4",
"endpoints":
[
{
"types":
{
"rType": "inventory",
"fType": "sensors"
},
"paths":
[
"/xyz/openbmc_project/sensors/temperature/nvme4"
]
}
]
},
{
"path": "system/chassis/motherboard/nvme5",
"endpoints":
[
{
"types":
{
"rType": "inventory",
"fType": "sensors"
},
"paths":
[
"/xyz/openbmc_project/sensors/temperature/nvme5"
]
}
]
},
{
"path": "system/chassis/motherboard/nvme6",
"endpoints":
[
{
"types":
{
"rType": "inventory",
"fType": "sensors"
},
"paths":
[
"/xyz/openbmc_project/sensors/temperature/nvme6"
]
}
]
},
{
"path": "system/chassis/motherboard/nvme7",
"endpoints":
[
{
"types":
{
"rType": "inventory",
"fType": "sensors"
},
"paths":
[
"/xyz/openbmc_project/sensors/temperature/nvme7"
]
}
]
},
{
"path": "system/chassis/motherboard/nvme8",
"endpoints":
[
{
"types":
{
"rType": "inventory",
"fType": "sensors"
},
"paths":
[
"/xyz/openbmc_project/sensors/temperature/nvme8"
]
}
]
},
{
"path": "system/chassis/motherboard/nvme9",
"endpoints":
[
{
"types":
{
"rType": "inventory",
"fType": "sensors"
},
"paths":
[
"/xyz/openbmc_project/sensors/temperature/nvme9"
]
}
]
},
{
"path": "system/chassis/motherboard/nvme10",
"endpoints":
[
{
"types":
{
"rType": "inventory",
"fType": "sensors"
},
"paths":
[
"/xyz/openbmc_project/sensors/temperature/nvme10"
]
}
]
},
{
"path": "system/chassis/motherboard/nvme11",
"endpoints":
[
{
"types":
{
"rType": "inventory",
"fType": "sensors"
},
"paths":
[
"/xyz/openbmc_project/sensors/temperature/nvme11"
]
}
]
},
{
"path": "system/chassis/motherboard/nvme12",
"endpoints":
[
{
"types":
{
"rType": "inventory",
"fType": "sensors"
},
"paths":
[
"/xyz/openbmc_project/sensors/temperature/nvme12"
]
}
]
},
{
"path": "system/chassis/motherboard/nvme13",
"endpoints":
[
{
"types":
{
"rType": "inventory",
"fType": "sensors"
},
"paths":
[
"/xyz/openbmc_project/sensors/temperature/nvme13"
]
}
]
},
{
"path": "system/chassis/motherboard/nvme14",
"endpoints":
[
{
"types":
{
"rType": "inventory",
"fType": "sensors"
},
"paths":
[
"/xyz/openbmc_project/sensors/temperature/nvme14"
]
}
]
},
{
"path": "system/chassis/motherboard/nvme15",
"endpoints":
[
{
"types":
{
"rType": "inventory",
"fType": "sensors"
},
"paths":
[
"/xyz/openbmc_project/sensors/temperature/nvme15"
]
}
]
},
{
"path": "system/chassis/fan",
"endpoints":
[
{
"types":
{
"rType": "inventory",
"fType": "sensors"
},
"paths":
[
"/xyz/openbmc_project/sensors/fan_tach/fan0",
"/xyz/openbmc_project/sensors/fan_tach/fan1",
"/xyz/openbmc_project/sensors/fan_tach/fb_fan0",
"/xyz/openbmc_project/sensors/fan_tach/fb_fan1",
"/xyz/openbmc_project/sensors/fan_tach/fb_fan2"
]
}
]
},
{
"path": "system/chassis/motherboard",
"endpoints":
[
{
"types":
{
"rType": "inventory",
"fType": "sensors"
},
"paths":
[
"/xyz/openbmc_project/sensors/temperature/i2cool_0",
"/xyz/openbmc_project/sensors/temperature/i2cool_1",
"/xyz/openbmc_project/sensors/temperature/i2cool_2",
"/xyz/openbmc_project/sensors/temperature/powerseq_temp",
"/xyz/openbmc_project/sensors/temperature/cputemp",
"/xyz/openbmc_project/sensors/temperature/nvme0",
"/xyz/openbmc_project/sensors/temperature/nvme1",
"/xyz/openbmc_project/sensors/temperature/nvme2",
"/xyz/openbmc_project/sensors/temperature/nvme3",
"/xyz/openbmc_project/sensors/temperature/nvme4",
"/xyz/openbmc_project/sensors/temperature/nvme5",
"/xyz/openbmc_project/sensors/temperature/nvme6",
"/xyz/openbmc_project/sensors/temperature/nvme7",
"/xyz/openbmc_project/sensors/temperature/nvme8",
"/xyz/openbmc_project/sensors/temperature/nvme9",
"/xyz/openbmc_project/sensors/temperature/nvme10",
"/xyz/openbmc_project/sensors/temperature/nvme11",
"/xyz/openbmc_project/sensors/temperature/nvme12",
"/xyz/openbmc_project/sensors/temperature/nvme13",
"/xyz/openbmc_project/sensors/temperature/nvme14",
"/xyz/openbmc_project/sensors/temperature/nvme15",
"/xyz/openbmc_project/sensors/voltage/p1v8_stby",
"/xyz/openbmc_project/sensors/voltage/vddcr_soc_stby",
"/xyz/openbmc_project/sensors/voltage/p2v5_stby",
"/xyz/openbmc_project/sensors/voltage/p1v2_stby",
"/xyz/openbmc_project/sensors/voltage/p1v175_stby",
"/xyz/openbmc_project/sensors/voltage/p1v8",
"/xyz/openbmc_project/sensors/voltage/p3v3",
"/xyz/openbmc_project/sensors/voltage/pwrgd_pvpp",
"/xyz/openbmc_project/sensors/voltage/pwrgd_pvddio",
"/xyz/openbmc_project/sensors/voltage/pwrgd_cpuvr",
"/xyz/openbmc_project/sensors/voltage/p3v3_stby",
"/xyz/openbmc_project/sensors/voltage/p5v_stby",
"/xyz/openbmc_project/sensors/voltage/p3v_bat_adc",
"/xyz/openbmc_project/sensors/voltage/vddcr_cpu_in",
"/xyz/openbmc_project/sensors/voltage/vddcr_cpu_out",
"/xyz/openbmc_project/sensors/current/vddcr_cpu_in",
"/xyz/openbmc_project/sensors/current/vddcr_cpu_out",
"/xyz/openbmc_project/sensors/temperature/vddcr_cpu",
"/xyz/openbmc_project/sensors/voltage/vddcr_soc_in",
"/xyz/openbmc_project/sensors/voltage/vddcr_soc_out",
"/xyz/openbmc_project/sensors/current/vddcr_soc_in",
"/xyz/openbmc_project/sensors/current/vddcr_soc_out",
"/xyz/openbmc_project/sensors/temperature/vddcr_soc",
"/xyz/openbmc_project/sensors/voltage/vddio_abcd_out",
"/xyz/openbmc_project/sensors/voltage/vddio_abcd_in",
"/xyz/openbmc_project/sensors/current/vddio_abcd_in",
"/xyz/openbmc_project/sensors/current/vddio_abcd_out",
"/xyz/openbmc_project/sensors/temperature/vddio_abcd",
"/xyz/openbmc_project/sensors/voltage/vddio_efgh_out",
"/xyz/openbmc_project/sensors/voltage/vddio_efgh_in",
"/xyz/openbmc_project/sensors/current/vddio_efgh_in",
"/xyz/openbmc_project/sensors/current/vddio_efgh_out",
"/xyz/openbmc_project/sensors/temperature/vddio_efgh",
"/xyz/openbmc_project/sensors/voltage/p12v_mobo_out",
"/xyz/openbmc_project/sensors/voltage/p12v_mobo_in",
"/xyz/openbmc_project/sensors/current/p12v_mobo_in",
"/xyz/openbmc_project/sensors/current/p12v_mobo_out",
"/xyz/openbmc_project/sensors/temperature/p12v_mobo",
"/xyz/openbmc_project/sensors/voltage/p12v_fan_out",
"/xyz/openbmc_project/sensors/voltage/p12v_fan_in",
"/xyz/openbmc_project/sensors/current/p12v_fan_in",
"/xyz/openbmc_project/sensors/current/p12v_fan_out",
"/xyz/openbmc_project/sensors/temperature/p12v_fan",
"/xyz/openbmc_project/sensors/voltage/hotswap_vin",
"/xyz/openbmc_project/sensors/voltage/hotswap_vout",
"/xyz/openbmc_project/sensors/current/hotswap_iout",
"/xyz/openbmc_project/sensors/power/hotswap_pout",
"/xyz/openbmc_project/sensors/temperature/hotswap"
]
}
]
},
{
"path": "system/chassis",
"endpoints":
[
{
"types":
{
"rType": "chassis",
"fType": "all_sensors"
},
"paths":
[
"/xyz/openbmc_project/sensors/temperature/i2cool_0",
"/xyz/openbmc_project/sensors/temperature/i2cool_1",
"/xyz/openbmc_project/sensors/temperature/i2cool_2",
"/xyz/openbmc_project/sensors/temperature/powerseq_temp",
"/xyz/openbmc_project/sensors/temperature/cputemp",
"/xyz/openbmc_project/sensors/temperature/nvme0",
"/xyz/openbmc_project/sensors/temperature/nvme1",
"/xyz/openbmc_project/sensors/temperature/nvme2",
"/xyz/openbmc_project/sensors/temperature/nvme3",
"/xyz/openbmc_project/sensors/temperature/nvme4",
"/xyz/openbmc_project/sensors/temperature/nvme5",
"/xyz/openbmc_project/sensors/temperature/nvme6",
"/xyz/openbmc_project/sensors/temperature/nvme7",
"/xyz/openbmc_project/sensors/temperature/nvme8",
"/xyz/openbmc_project/sensors/temperature/nvme9",
"/xyz/openbmc_project/sensors/temperature/nvme10",
"/xyz/openbmc_project/sensors/temperature/nvme11",
"/xyz/openbmc_project/sensors/temperature/nvme12",
"/xyz/openbmc_project/sensors/temperature/nvme13",
"/xyz/openbmc_project/sensors/temperature/nvme14",
"/xyz/openbmc_project/sensors/temperature/nvme15",
"/xyz/openbmc_project/sensors/voltage/p1v8_stby",
"/xyz/openbmc_project/sensors/voltage/vddcr_soc_stby",
"/xyz/openbmc_project/sensors/voltage/p2v5_stby",
"/xyz/openbmc_project/sensors/voltage/p1v2_stby",
"/xyz/openbmc_project/sensors/voltage/p1v175_stby",
"/xyz/openbmc_project/sensors/voltage/p1v8",
"/xyz/openbmc_project/sensors/voltage/p3v3",
"/xyz/openbmc_project/sensors/voltage/pwrgd_pvpp",
"/xyz/openbmc_project/sensors/voltage/pwrgd_pvddio",
"/xyz/openbmc_project/sensors/voltage/pwrgd_cpuvr",
"/xyz/openbmc_project/sensors/voltage/p3v3_stby",
"/xyz/openbmc_project/sensors/voltage/p5v_stby",
"/xyz/openbmc_project/sensors/voltage/p3v_bat_adc",
"/xyz/openbmc_project/sensors/voltage/vddcr_cpu_in",
"/xyz/openbmc_project/sensors/voltage/vddcr_cpu_out",
"/xyz/openbmc_project/sensors/current/vddcr_cpu_in",
"/xyz/openbmc_project/sensors/current/vddcr_cpu_out",
"/xyz/openbmc_project/sensors/temperature/vddcr_cpu",
"/xyz/openbmc_project/sensors/voltage/vddcr_soc_in",
"/xyz/openbmc_project/sensors/voltage/vddcr_soc_out",
"/xyz/openbmc_project/sensors/current/vddcr_soc_in",
"/xyz/openbmc_project/sensors/current/vddcr_soc_out",
"/xyz/openbmc_project/sensors/temperature/vddcr_soc",
"/xyz/openbmc_project/sensors/voltage/vddio_abcd_out",
"/xyz/openbmc_project/sensors/voltage/vddio_abcd_in",
"/xyz/openbmc_project/sensors/current/vddio_abcd_in",
"/xyz/openbmc_project/sensors/current/vddio_abcd_out",
"/xyz/openbmc_project/sensors/temperature/vddio_abcd",
"/xyz/openbmc_project/sensors/voltage/vddio_efgh_out",
"/xyz/openbmc_project/sensors/voltage/vddio_efgh_in",
"/xyz/openbmc_project/sensors/current/vddio_efgh_in",
"/xyz/openbmc_project/sensors/current/vddio_efgh_out",
"/xyz/openbmc_project/sensors/temperature/vddio_efgh",
"/xyz/openbmc_project/sensors/voltage/p12v_mobo_out",
"/xyz/openbmc_project/sensors/voltage/p12v_mobo_in",
"/xyz/openbmc_project/sensors/current/p12v_mobo_in",
"/xyz/openbmc_project/sensors/current/p12v_mobo_out",
"/xyz/openbmc_project/sensors/temperature/p12v_mobo",
"/xyz/openbmc_project/sensors/voltage/p12v_fan_out",
"/xyz/openbmc_project/sensors/voltage/p12v_fan_in",
"/xyz/openbmc_project/sensors/current/p12v_fan_in",
"/xyz/openbmc_project/sensors/current/p12v_fan_out",
"/xyz/openbmc_project/sensors/temperature/p12v_fan",
"/xyz/openbmc_project/sensors/voltage/hotswap_vin",
"/xyz/openbmc_project/sensors/voltage/hotswap_vout",
"/xyz/openbmc_project/sensors/current/hotswap_iout",
"/xyz/openbmc_project/sensors/power/hotswap_pout",
"/xyz/openbmc_project/sensors/temperature/hotswap",
"/xyz/openbmc_project/sensors/fan_tach/fan0",
"/xyz/openbmc_project/sensors/fan_tach/fan1",
"/xyz/openbmc_project/sensors/fan_tach/fb_fan0",
"/xyz/openbmc_project/sensors/fan_tach/fb_fan1",
"/xyz/openbmc_project/sensors/fan_tach/fb_fan2",
"/xyz/openbmc_project/sensors/utilization/CPU",
"/xyz/openbmc_project/sensors/utilization/Memory",
"/xyz/openbmc_project/sensors/utilization/Storage_RW"
]
}
]
}
]
@@ -0,0 +1,9 @@
FILESEXTRAPATHS:prepend:gbs := "${THISDIR}/${PN}:"
PACKAGECONFIG:append:gbs = " associations"
SRC_URI:append:gbs = " file://associations.json"
DEPENDS:append:gbs = " gbs-inventory-cleanup"
do_install:append:gbs() {
install -d ${D}${base_datadir}
install -m 0755 ${WORKDIR}/associations.json ${D}${base_datadir}/associations.json
}
@@ -0,0 +1,6 @@
[{
"blobBaseId": "/skm/hss/",
"sysFilePath": "/sys/class/i2c-adapter/i2c-5/5-0050/eeprom",
"offsetBytes": 256,
"maxSizeBytes": 512
}]
@@ -0,0 +1,8 @@
FILESEXTRAPATHS:prepend:gbs := "${THISDIR}/${PN}:"
SRC_URI:append:gbs = " file://config.json"
FILES:${PN}:append:gbs = " ${datadir}/binaryblob/config.json"
do_install:append:gbs() {
install -d ${D}${datadir}/binaryblob/
install ${WORKDIR}/config.json ${D}${datadir}/binaryblob/config.json
}
@@ -0,0 +1 @@
FILESEXTRAPATHS:prepend:gbs := "${THISDIR}/${PN}:"
@@ -0,0 +1,2 @@
{"id": 32, "revision": 129, "addn_dev_support": 141,
"manuf_id": 7244, "prod_id": 14401, "aux": 0}
@@ -0,0 +1,28 @@
[
{
"id": 1,
"containerEntityId" : 30,
"containerEntityInstance" : 0,
"isList" : false,
"isLinked" : false,
"entities" : [
{"id" : 11, "instance" : 0},
{"id" : 11, "instance" : 1},
{"id" : 29, "instance" : 0},
{"id" : 29, "instance" : 1}
]
},
{
"id": 2,
"containerEntityId" : 30,
"containerEntityInstance" : 1,
"isList" : false,
"isLinked" : false,
"entities" : [
{"id" : 29, "instance" : 2},
{"id" : 29, "instance" : 4},
{"id" : 0, "instance" : 0},
{"id" : 0, "instance" : 0}
]
}
]
@@ -0,0 +1,5 @@
NUVOTON_FLASH_PCIMBOX = "0xF0848000"
PACKAGECONFIG:append:gbs = " nuvoton-p2a-mbox"
IPMI_FLASH_BMC_ADDRESS:gbs = "${NUVOTON_FLASH_PCIMBOX}"
@@ -0,0 +1,3 @@
OF_NAME=fan_fru
SYSFS_PATH=/no-such-path/eeprom
FRUID=0x02
@@ -0,0 +1,3 @@
OF_NAME=hsbp_fru
SYSFS_PATH=/no-such-path/eeprom
FRUID=0x01
@@ -0,0 +1,3 @@
OF_NAME=mb_fru
SYSFS_PATH=/sys/bus/i2c/devices/5-0050/eeprom
FRUID=0x00
@@ -0,0 +1,26 @@
inherit obmc-phosphor-systemd
DEPENDS:append:gbs = " gbs-yaml-config"
FILESEXTRAPATHS:prepend:gbs := "${THISDIR}/${PN}:"
EEPROM_NAMES = "motherboard hsbp fan"
EEPROMFMT = "system/chassis/{0}"
EEPROM_ESCAPEDFMT = "system-chassis-{0}"
EEPROMS = "${@compose_list(d, 'EEPROMFMT', 'EEPROM_NAMES')}"
EEPROMS_ESCAPED = "${@compose_list(d, 'EEPROM_ESCAPEDFMT', 'EEPROM_NAMES')}"
ENVFMT = "obmc/eeproms/{0}"
SYSTEMD_ENVIRONMENT_FILE:${PN}:append:gbs := " ${@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:gbs := " ${@compose_list(d, 'FMT', 'EEPROMS_ESCAPED')}"
EXTRA_OECONF:append:gbs = ""
IPMI_FRU_YAML:gbs="${STAGING_DIR_HOST}${datadir}/gbs-yaml-config/ipmi-fru-read.yaml"
IPMI_FRU_PROP_YAML:gbs="${STAGING_DIR_HOST}${datadir}/gbs-yaml-config/ipmi-extra-properties.yaml"
@@ -0,0 +1,79 @@
#<NetFn>:<Command>
0x00:0x00 //<Chassis>:<Chassis Capabiliti>
0x00:0x01 //<Chassis>:<Get Chassis Status>
0x00:0x02 //<Chassis>:<Chassis Control>
0x00:0x04 //<Chassis>:<Chassis Identify>
0x00:0x05 //<Chassis>:<Set Chassis Capabilities>
0x00:0x06 //<Chassis>:<Set Power Restore Policy>
0x00:0x08 //<Chassis>:<Set System Boot Options>
0x00:0x09 //<Chassis>:<Get System Boot Options>
0x00:0x0F //<Chassis>:<Get POH Counter>
0x04:0x02 //<Sensor/Event>:<Platform Event>
0x04:0x20 //<Sensor/Event>:<Get Device SDR Info>
0x04:0x21 //<Sensor/Event>:<Get Device SDR>
0x04:0x22 //<Sensor/Event>:<Reserve Device SDR Repository>
0x04:0x27 //<Sensor/Event>:<Get Sensor Threshold>
0x04:0x29 //<Sensor/Event>:<Get Sensor Event Enable>
0x04:0x2B //<Sensor/Event>:<Get Sensor Event Status>
0x04:0x2D //<Sensor/Event>:<Get Sensor Reading>
0x04:0x2F //<Sensor/Event>:<Get Sensor Type>
0x04:0x30 //<Sensor/Event>:<Set Sensor Reading and Event Status>
0x06:0x01 //<App>:<Get Device ID>
0x06:0x02 //<App>:<Cold Reset>
0x06:0x03 //<App>:<Warm Reset>
0x06:0x04 //<App>:<Get Self Test Results>
0x06:0x06 //<App>:<Set ACPI Power State>
0x06:0x07 //<App>:<Get ACPI Power State>
0x06:0x08 //<App>:<Get Device GUID>
0x06:0x22 //<App>:<Reset Watchdog Timer>
0x06:0x24 //<App>:<Set Watchdog Timer>
0x06:0x25 //<App>:<Get Watchdog Timer>
0x06:0x35 //<App>:<Read Event Message Buffer>
0x06:0x3D //<App>:<Get Session Info>
0x06:0x40 //<App>:<Set Channel Access>
0x06:0x41 //<App>:<Get Channel Access>
0x06:0x42 //<App>:<Get Channel Info>
0x06:0x43 //<App>:<Set User Access>
0x06:0x44 //<App>:<Get User Access>
0x06:0x45 //<App>:<Set User Name>
0x06:0x46 //<App>:<Get User Name>
0x06:0x47 //<App>:<Set User Password>
0x06:0x48 //<App>:<Activate Payload>
0x06:0x49 //<App>:<Deactivate Payload>
0x06:0x4A //<App>:<Get Payload Activation Status>
0x06:0x4B //<App>:<Get Payload Instance Info>
0x06:0x54 //<App>:<Get Channel Cipher Suites>
0x06:0x58 //<App>:<Set System Info Parameters>
0x06:0x59 //<App>:<Get System Info Parameters>
0x0A:0x10 //<Storage>:<Get FRU Inventory Area Info>
0x0A:0x11 //<Storage>:<Read FRU Data>
0x0A:0x20 //<Storage>:<Get SDR Repository Info>
0x0A:0x22 //<Storage>:<Reserve SDR Repository>
0x0A:0x23 //<Storage>:<Get SDR>
0x0A:0x40 //<Storage>:<Get SEL Info>
0x0A:0x42 //<Storage>:<Reserve SEL>
0x0A:0x43 //<Storage>:<Get SEL Entry>
0x0A:0x44 //<Storage>:<Add SEL Entry>
0x0A:0x46 //<Storage>:<Delete SEL Entry>
0x0A:0x47 //<Storage>:<Clear SEL>
0x0A:0x48 //<Storage>:<Get SEL Time>
0x0A:0x49 //<Storage>:<Set SEL Time>
0x0C:0x01 //<Transport>:<Set LAN Configuration Parameters>
0x0C:0x02 //<Transport>:<Get LAN Configuration Parameters>
0x2C:0x00 //<Group Extension>:<Group Extension Command>
0x2C:0x01 //<Group Extension>:<Get DCMI Capabilities>
0x2C:0x02 //<Group Extension>:<Get Power Reading>
0x2C:0x03 //<Group Extension>:<Get Power Limit>
0x2C:0x06 //<Group Extension>:<Get Asset Tag>
0x2C:0x07 //<Group Extension>:<Get Sensor Info>
0x2C:0x09 //<Group Extension>:<Get Management Controller Identifier String>
0x2C:0x0A //<Group Extension>:<Set Management Controller Identifier String>
0x2C:0x10 //<Group Extension>:<Get Temperature Readings>
0x2C:0x12 //<Group Extension>:<Set DCMI Configuration Parameters>
0x2C:0x13 //<Group Extension>:<Get DCMI Configuration Parameters>
0x2C:0x3E //<Group Extension>:<Get HPM.x Capabilities>
0x2E:0x02 //<Google OEM>:<I2C via Proxy Adapter>
0x2E:0x04 //<Google OEM>:<Fan Manual Control Mode>
0x2E:0x30 //<Google OEM>:<Ethernet Statistics>
0x2E:0x32 //<Google OEM>:<Sys Commands>
0x2E:0x80 //<Google OEM>:<Blob Commands>
@@ -0,0 +1,14 @@
DEPENDS:append:gbs = " gbs-yaml-config"
FILESEXTRAPATHS:prepend:gbs := "${THISDIR}/${PN}:"
SRC_URI:append:gbs = " file://gbs-ipmid-whitelist.conf"
WHITELIST_CONF:gbs = "${WORKDIR}/gbs-ipmid-whitelist.conf"
EXTRA_OEMESON:append:gbs = " \
-Dsensor-yaml-gen=${STAGING_DIR_HOST}${datadir}/gbs-yaml-config/ipmi-sensors.yaml \
-Dfru-yaml-gen=${STAGING_DIR_HOST}${datadir}/gbs-yaml-config/ipmi-fru-read.yaml \
-Dinvsensor-yaml-gen=${STAGING_DIR_HOST}${datadir}/gbs-yaml-config/ipmi-inventory-sensors.yaml \
"
RDEPENDS:${PN}:remove:gbs = "clear-once"
@@ -0,0 +1 @@
KCS_DEVICE:gbs = "ipmi-kcs1"
@@ -0,0 +1,19 @@
SUMMARY = "Phosphor LED Group Management for GBS"
PR = "r1"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
inherit native
PROVIDES += "virtual/phosphor-led-manager-config-native"
SRC_URI += "file://led.yaml"
S = "${WORKDIR}"
# Overwrite the example led layout yaml file prior
# to building the phosphor-led-manager package
do_install() {
SRC=${S}
DEST=${D}${datadir}/phosphor-led-manager
install -D ${SRC}/led.yaml ${DEST}/led.yaml
}
@@ -0,0 +1,239 @@
bmc_booted:
heartbeat:
Action: 'Blink'
DutyOn: 50
Period: 1000
enclosure_identify:
attention:
Action: 'Blink'
DutyOn: 50
Period: 1000
enclosure_fault:
bmc_fault:
Action: 'On'
DutyOn: 50
Period: 0
Priority: 'Blink'
boot_status_inactive:
sys_boot_status:
Action: 'Blink'
DutyOn: 50
Period: 1000
boot_status_standby:
sys_boot_status:
Action: 'On'
Period: 1000
led_u2_0_locate:
led_u2_0_locate:
Action: 'Blink'
DutyOn: 50
Period: 250
led_u2_0_fault:
Action: 'Blink'
DutyOn: 50
Period: 250
led_u2_1_locate:
led_u2_1_locate:
Action: 'Blink'
DutyOn: 50
Period: 250
led_u2_1_fault:
Action: 'Blink'
DutyOn: 50
Period: 250
led_u2_2_locate:
led_u2_2_locate:
Action: 'Blink'
DutyOn: 50
Period: 250
led_u2_2_fault:
Action: 'Blink'
DutyOn: 50
Period: 250
led_u2_3_locate:
led_u2_3_locate:
Action: 'Blink'
DutyOn: 50
Period: 250
led_u2_3_fault:
Action: 'Blink'
DutyOn: 50
Period: 250
led_u2_4_locate:
led_u2_4_locate:
Action: 'Blink'
DutyOn: 50
Period: 250
led_u2_4_fault:
Action: 'Blink'
DutyOn: 50
Period: 250
led_u2_5_locate:
led_u2_5_locate:
Action: 'Blink'
DutyOn: 50
Period: 250
led_u2_5_fault:
Action: 'Blink'
DutyOn: 50
Period: 250
led_u2_6_locate:
led_u2_6_locate:
Action: 'Blink'
DutyOn: 50
Period: 250
led_u2_6_fault:
Action: 'Blink'
DutyOn: 50
Period: 250
led_u2_7_locate:
led_u2_7_locate:
Action: 'Blink'
DutyOn: 50
Period: 250
led_u2_7_fault:
Action: 'Blink'
DutyOn: 50
Period: 250
led_u2_8_locate:
led_u2_8_locate:
Action: 'Blink'
DutyOn: 50
Period: 250
led_u2_8_fault:
Action: 'Blink'
DutyOn: 50
Period: 250
led_u2_9_locate:
led_u2_9_locate:
Action: 'Blink'
DutyOn: 50
Period: 250
led_u2_9_fault:
Action: 'Blink'
DutyOn: 50
Period: 250
led_u2_10_locate:
led_u2_10_locate:
Action: 'Blink'
DutyOn: 50
Period: 250
led_u2_10_fault:
Action: 'Blink'
DutyOn: 50
Period: 250
led_u2_11_locate:
led_u2_11_locate:
Action: 'Blink'
DutyOn: 50
Period: 250
led_u2_11_fault:
Action: 'Blink'
DutyOn: 50
Period: 250
led_u2_12_locate:
led_u2_12_locate:
Action: 'Blink'
DutyOn: 50
Period: 250
led_u2_12_fault:
Action: 'Blink'
DutyOn: 50
Period: 250
led_u2_13_locate:
led_u2_13_locate:
Action: 'Blink'
DutyOn: 50
Period: 250
led_u2_13_fault:
Action: 'Blink'
DutyOn: 50
Period: 250
led_u2_14_locate:
led_u2_14_locate:
Action: 'Blink'
DutyOn: 50
Period: 250
led_u2_14_fault:
Action: 'Blink'
DutyOn: 50
Period: 250
led_u2_15_locate:
led_u2_15_locate:
Action: 'Blink'
DutyOn: 50
Period: 250
led_u2_15_fault:
Action: 'Blink'
DutyOn: 50
Period: 250
led_u2_0_fault:
led_u2_0_fault:
Action: 'On'
Period: 1000
led_u2_1_fault:
led_u2_1_fault:
Action: 'On'
Period: 1000
led_u2_2_fault:
led_u2_2_fault:
Action: 'On'
Period: 1000
led_u2_3_fault:
led_u2_3_fault:
Action: 'On'
Period: 1000
led_u2_4_fault:
led_u2_4_fault:
Action: 'On'
Period: 1000
led_u2_5_fault:
led_u2_5_fault:
Action: 'On'
Period: 1000
led_u2_6_fault:
led_u2_6_fault:
Action: 'On'
Period: 1000
led_u2_7_fault:
led_u2_7_fault:
Action: 'On'
Period: 1000
led_u2_8_fault:
led_u2_8_fault:
Action: 'On'
Period: 1000
led_u2_9_fault:
led_u2_9_fault:
Action: 'On'
Period: 1000
led_u2_10_fault:
led_u2_10_fault:
Action: 'On'
Period: 1000
led_u2_11_fault:
led_u2_11_fault:
Action: 'On'
Period: 1000
led_u2_12_fault:
led_u2_12_fault:
Action: 'On'
Period: 1000
led_u2_13_fault:
led_u2_13_fault:
Action: 'On'
Period: 1000
led_u2_14_fault:
led_u2_14_fault:
Action: 'On'
Period: 1000
led_u2_15_fault:
led_u2_15_fault:
Action: 'On'
Period: 1000
@@ -0,0 +1,7 @@
[Unit]
StartLimitBurst=10
[Service]
RestartSec=3s
ExecStartPre=mapper get-service /xyz/openbmc_project/led/physical/heartbeat
ExecStartPre=mapper get-service /xyz/openbmc_project/led/physical/sys_boot_status
@@ -0,0 +1,12 @@
FILESEXTRAPATHS:prepend:gbs := "${THISDIR}/${PN}:"
SRC_URI:append:gbs = " file://service-override.conf"
FILES:${PN}:append:gbs = " ${systemd_system_unitdir}/xyz.openbmc_project.LED.GroupManager.service.d/service-override.conf"
do_install:append:gbs() {
rm -rf ${D}${datadir}/${PN}/*
install -d ${D}${systemd_system_unitdir}/xyz.openbmc_project.LED.GroupManager.service.d
install -D -m 0644 ${WORKDIR}/service-override.conf \
${D}${systemd_system_unitdir}/xyz.openbmc_project.LED.GroupManager.service.d/
}
@@ -0,0 +1 @@
ERR_INFO_CAP:gbs = "256"
@@ -0,0 +1 @@
PACKAGECONFIG:remove:gbs = "uboot-env"
@@ -0,0 +1 @@
PACKAGECONFIG:append:gbs = " send-to-logger log-alarm log-watchdog"
@@ -0,0 +1,9 @@
LABEL_temp1 = "cputemp"
CRITHI_temp1 = "95000"
CRITLO_temp1 = "0"
WARNHI_temp1 = "95000"
WARNLO_temp1 = "0"
MINVALUE_temp1 = "-128"
MAXVALUE_temp1 = "127"
ASYNC_READ_TIMEOUT_temp1 = "500"
PWRONMON_temp1 = "ON"
@@ -0,0 +1,4 @@
LABEL_temp1 = "inlet"
MINVALUE_temp1 = "-128"
MAXVALUE_temp1 = "127"
ASYNC_READ_TIMEOUT_temp1 = "500"
@@ -0,0 +1,4 @@
LABEL_temp1 = "outlet_0"
MINVALUE_temp1 = "-128"
MAXVALUE_temp1 = "127"
ASYNC_READ_TIMEOUT_temp1 = "500"
@@ -0,0 +1,4 @@
LABEL_temp1 = "outlet_1"
MINVALUE_temp1 = "-128"
MAXVALUE_temp1 = "127"
ASYNC_READ_TIMEOUT_temp1 = "500"
@@ -0,0 +1,43 @@
LABEL_in1 = "hotswap_vin"
CRITHI_in1 = "60000"
CRITLO_in1 = "40000"
WARNHI_in1 = "60000"
WARNLO_in1 = "40000"
MINVALUE_in1 = "0"
MAXVALUE_in1 = "66"
LABEL_in2 = "hotswap_vout"
CRITHI_in2 = "60000"
CRITLO_in2 = "40000"
WARNHI_in2 = "60000"
WARNLO_in2 = "40000"
MINVALUE_in2 = "0"
MAXVALUE_in2 = "66"
LABEL_curr1= "hotswap_iout"
CRITHI_curr1= "60000"
CRITLO_curr1= "0"
WARNHI_curr1= "60000"
WARNLO_curr1= "0"
MINVALUE_curr1 = "0"
MAXVALUE_curr1 = "85"
# READ_Iout is direct value*0.92
GAIN_curr1 = "0.92"
LABEL_power1= "hotswap_pout"
CRITHI_power1= "1920000000"
CRITLO_power1= "0"
WARNHI_power1= "1920000000"
WARNLO_power1= "0"
MINVALUE_power1 = "0"
MAXVALUE_power1 = "2200"
# READ_Pout is direct value*0.92
GAIN_power1 = "0.92"
LABEL_temp1= "hotswap"
WARNLO_temp1= "0"
WARNHI_temp1= "125000"
CRITHI_temp1 = "125000"
CRITLO_temp1 = "0"
MINVALUE_temp1 = "-128"
MAXVALUE_temp1 = "127"
@@ -0,0 +1,46 @@
LABEL_in1 = "vddcr_cpu_in"
CRITHI_in1 = "12600"
CRITLO_in1 = "11400"
WARNHI_in1 = "12600"
WARNLO_in1 = "11400"
MINVALUE_in1 = "0"
MAXVALUE_in1 = "14"
# READ_VIN is direct value *10
GAIN_in1 = "10.0"
PWRONMON_in1 = "ON"
LABEL_in2 = "vddcr_cpu_out"
CRITHI_in2 = "1450"
CRITLO_in2 = "350"
WARNHI_in2 = "1450"
WARNLO_in2 = "350"
MINVALUE_in2 = "0"
MAXVALUE_in2 = "2"
PWRONMON_in2 = "ON"
LABEL_curr1 = "vddcr_cpu_in"
CRITHI_curr1 = "27000"
CRITLO_curr1 = "-4000"
WARNHI_curr1 = "27000"
WARNLO_curr1 = "-4000"
MINVALUE_curr1 = "0"
MAXVALUE_curr1 = "28"
PWRONMON_curr1 = "ON"
LABEL_curr2 = "vddcr_cpu_out"
CRITHI_curr2 = "255000"
CRITLO_curr2 = "-50000"
WARNHI_curr2 = "255000"
WARNLO_curr2 = "-50000"
MINVALUE_curr2 = "0"
MAXVALUE_curr2 = "256"
PWRONMON_curr2 = "ON"
LABEL_temp1= "vddcr_cpu"
WARNLO_temp1= "0"
WARNHI_temp1= "100000"
CRITHI_temp1 = "100000"
CRITLO_temp1 = "0"
MINVALUE_temp1 = "-128"
MAXVALUE_temp1 = "127"
PWRONMON_temp1 = "ON"
@@ -0,0 +1,46 @@
LABEL_in1 = "vddcr_soc_in"
CRITHI_in1 = "12600"
CRITLO_in1 = "11400"
WARNHI_in1 = "12600"
WARNLO_in1 = "11400"
MINVALUE_in1 = "0"
MAXVALUE_in1 = "14"
# READ_VIN is direct value *10
GAIN_in1 = "10.0"
PWRONMON_in1 = "ON"
LABEL_in2 = "vddcr_soc_out"
CRITHI_in2 = "1200"
CRITLO_in2 = "620"
WARNHI_in2 = "1200"
WARNLO_in2 = "620"
MINVALUE_in2 = "0"
MAXVALUE_in2 = "2"
PWRONMON_in2 = "ON"
LABEL_curr1 = "vddcr_soc_in"
CRITHI_curr1 = "6700"
CRITLO_curr1 = "0"
WARNHI_curr1 = "6700"
WARNLO_curr1 = "0"
MINVALUE_curr1 = "0"
MAXVALUE_curr1 = "9"
PWRONMON_curr1 = "ON"
LABEL_curr2 = "vddcr_soc_out"
CRITHI_curr2 = "80000"
CRITLO_curr2 = "0"
WARNHI_curr2 = "80000"
WARNLO_curr2 = "0"
MINVALUE_curr2 = "0"
MAXVALUE_curr2 = "88"
PWRONMON_curr2 = "ON"
LABEL_temp1= "vddcr_soc"
WARNLO_temp1= "0"
WARNHI_temp1= "100000"
CRITHI_temp1 = "100000"
CRITLO_temp1 = "0"
MINVALUE_temp1 = "-128"
MAXVALUE_temp1 = "127"
PWRONMON_temp1 = "ON"
@@ -0,0 +1,46 @@
LABEL_in1 = "vddio_efgh_in"
CRITHI_in1 = "12600"
CRITLO_in1 = "11400"
WARNHI_in1 = "12600"
WARNLO_in1 = "11400"
MINVALUE_in1 = "0"
MAXVALUE_in1 = "14"
# READ_VIN is direct value *10
GAIN_in1 = "10.0"
PWRONMON_in1 = "ON"
LABEL_in2 = "vddio_efgh_out"
CRITHI_in2 = "1320"
CRITLO_in2 = "1100"
WARNHI_in2 = "1320"
WARNLO_in2 = "1100"
MINVALUE_in2 = "0"
MAXVALUE_in2 = "2"
PWRONMON_in2 = "ON"
LABEL_curr1 = "vddio_efgh_in"
CRITHI_curr1 = "8400"
CRITLO_curr1 = "0"
WARNHI_curr1 = "8400"
WARNLO_curr1 = "0"
MINVALUE_curr1 = "0"
MAXVALUE_curr1 = "9"
PWRONMON_curr1 = "ON"
LABEL_curr2 = "vddio_efgh_out"
CRITHI_curr2 = "84000"
CRITLO_curr2 = "0"
WARNHI_curr2 = "84000"
WARNLO_curr2 = "0"
MINVALUE_curr2 = "0"
MAXVALUE_curr2 = "88"
PWRONMON_curr2 = "ON"
LABEL_temp1= "vddio_efgh"
WARNLO_temp1= "0"
WARNHI_temp1= "100000"
CRITHI_temp1 = "100000"
CRITLO_temp1 = "0"
MINVALUE_temp1 = "-128"
MAXVALUE_temp1 = "127"
PWRONMON_temp1 = "ON"
@@ -0,0 +1,46 @@
LABEL_in1 = "vddio_abcd_in"
CRITHI_in1 = "12600"
CRITLO_in1 = "11400"
WARNHI_in1 = "12600"
WARNLO_in1 = "11400"
MINVALUE_in1 = "0"
MAXVALUE_in1 = "14"
# READ_VIN is direct value *10
GAIN_in1 = "10.0"
PWRONMON_in1 = "ON"
LABEL_in2 = "vddio_abcd_out"
CRITHI_in2 = "1320"
CRITLO_in2 = "1100"
WARNHI_in2 = "1320"
WARNLO_in2 = "1100"
MINVALUE_in2 = "0"
MAXVALUE_in2 = "2"
PWRONMON_in2 = "ON"
LABEL_curr1 = "vddio_abcd_in"
CRITHI_curr1 = "8400"
CRITLO_curr1 = "0"
WARNHI_curr1 = "8400"
WARNLO_curr1 = "0"
MINVALUE_curr1 = "0"
MAXVALUE_curr1 = "9"
PWRONMON_curr1 = "ON"
LABEL_curr2 = "vddio_abcd_out"
CRITHI_curr2 = "84000"
CRITLO_curr2 = "0"
WARNHI_curr2 = "84000"
WARNLO_curr2 = "0"
MINVALUE_curr2 = "0"
MAXVALUE_curr2 = "88"
PWRONMON_curr2 = "ON"
LABEL_temp1= "vddio_abcd"
WARNLO_temp1= "0"
WARNHI_temp1= "100000"
CRITHI_temp1 = "100000"
CRITLO_temp1 = "0"
MINVALUE_temp1 = "-128"
MAXVALUE_temp1 = "127"
PWRONMON_temp1 = "ON"
@@ -0,0 +1,119 @@
LABEL_in1 = "p1v8_stby"
CRITHI_in1 = "1890"
CRITLO_in1 = "1710"
WARNHI_in1 = "1890"
WARNLO_in1 = "1710"
MINVALUE_in1 = "0"
MAXVALUE_in1 = "2"
PWRONMON_in1 = "ON"
LABEL_in2 = "vddcr_soc_stby"
CRITHI_in2 = "945"
CRITLO_in2 = "855"
WARNHI_in2 = "945"
WARNLO_in2 = "855"
MINVALUE_in2 = "0"
MAXVALUE_in2 = "1"
PWRONMON_in2 = "ON"
LABEL_in3 = "p2v5_stby"
CRITHI_in3 = "2625"
CRITLO_in3 = "2375"
WARNHI_in3 = "2625"
WARNLO_in3 = "2375"
MINVALUE_in3 = "0"
MAXVALUE_in3 = "3"
PWRONMON_in3 = "ON"
LABEL_in4 = "p1v2_stby"
CRITHI_in4 = "1260"
CRITLO_in4 = "1140"
WARNHI_in4 = "1260"
WARNLO_in4 = "1140"
MINVALUE_in4 = "0"
MAXVALUE_in4 = "2"
PWRONMON_in4 = "ON"
LABEL_in5 = "p1v175_stby"
CRITHI_in5 = "1234"
CRITLO_in5 = "1116"
WARNHI_in5 = "1234"
WARNLO_in5 = "1116"
MINVALUE_in5 = "0"
MAXVALUE_in5 = "2"
PWRONMON_in5 = "ON"
LABEL_in6 = "p1v8"
CRITHI_in6 = "1890"
CRITLO_in6 = "1710"
WARNHI_in6 = "1890"
WARNLO_in6 = "1710"
MINVALUE_in6 = "0"
MAXVALUE_in6 = "2"
PWRONMON_in6 = "ON"
LABEL_in7 = "p3v3"
CRITHI_in7 = "3465"
CRITLO_in7 = "3135"
WARNHI_in7 = "3465"
WARNLO_in7 = "3135"
MINVALUE_in7 = "0"
MAXVALUE_in7 = "4"
PWRONMON_in7 = "ON"
LABEL_in8 = "pwrgd_pvpp"
CRITHI_in8 = "5760"
CRITLO_in8 = "1600"
WARNHI_in8 = "5760"
WARNLO_in8 = "1600"
MINVALUE_in8 = "0"
MAXVALUE_in8 = "6"
PWRONMON_in8 = "ON"
GAIN_in8 = "1.60"
LABEL_in9 = "pwrgd_pvddio"
CRITHI_in9 = "5760"
CRITLO_in9 = "1600"
WARNHI_in9 = "5760"
WARNLO_in9 = "1600"
MINVALUE_in9 = "0"
MAXVALUE_in9 = "6"
PWRONMON_in9 = "ON"
GAIN_in9 = "1.60"
LABEL_in10 = "pwrgd_cpuvr"
CRITHI_in10 = "5760"
CRITLO_in10 = "1600"
WARNHI_in10 = "5760"
WARNLO_in10 = "1600"
MINVALUE_in10 = "0"
MAXVALUE_in10 = "6"
PWRONMON_in10 = "ON"
GAIN_in10 = "1.60"
LABEL_in11 = "p3v3_stby"
CRITHI_in11 = "3465"
CRITLO_in11 = "3135"
WARNHI_in11 = "3465"
WARNLO_in11 = "3135"
MINVALUE_in11 = "0"
MAXVALUE_in11 = "4"
PWRONMON_in11 = "ON"
LABEL_in12 = "p5v_stby"
CRITHI_in12 = "5250"
CRITLO_in12 = "4750"
WARNHI_in12 = "5250"
WARNLO_in12 = "4750"
MINVALUE_in12 = "0"
MAXVALUE_in12 = "6"
PWRONMON_in12 = "ON"
LABEL_temp1 = "powerseq_temp"
CRITHI_temp1 = "99000"
CRITLO_temp1 = "0"
WARNHI_temp1 = "99000"
WARNLO_temp1 = "0"
MINVALUE_temp1 = "-128"
MAXVALUE_temp1 = "127"
ASYNC_READ_TIMEOUT_temp1 = "500"
@@ -0,0 +1,50 @@
LABEL_in1 = "p12v_fan_in"
CRITHI_in1 = "60000"
CRITLO_in1 = "40000"
WARNHI_in1 = "60000"
WARNLO_in1 = "40000"
MINVALUE_in1 = "0"
MAXVALUE_in1 = "65"
# READ_VIN is direct value*100
GAIN_in1 = "100.0"
PWRONMON_in1 = "ON"
LABEL_in2 = "p12v_fan_out"
CRITHI_in2 = "12600"
CRITLO_in2 = "11400"
WARNHI_in2 = "12600"
WARNLO_in2 = "11400"
MINVALUE_in2 = "0"
MAXVALUE_in2 = "14"
# READ_VOUT is direct value*5.02
GAIN_in2 = "5.02"
PWRONMON_in2 = "ON"
LABEL_curr1 = "p12v_fan_in"
CRITHI_curr1 = "30000"
CRITLO_curr1 = "-1000"
WARNHI_curr1 = "30000"
WARNLO_curr1 = "-1000"
MINVALUE_curr1 = "0"
MAXVALUE_curr1 = "35"
# READ_Iin is direct value*0.5
GAIN_curr1 = "0.5"
PWRONMON_curr1 = "ON"
LABEL_curr2 = "p12v_fan_out"
CRITHI_curr2 = "100000"
CRITLO_curr2 = "-1000"
WARNHI_curr2 = "100000"
WARNLO_curr2 = "-1000"
MINVALUE_curr2 = "0"
MAXVALUE_curr2 = "150"
PWRONMON_curr2 = "ON"
LABEL_temp1= "p12v_fan"
WARNLO_temp1= "0"
WARNHI_temp1= "114000"
CRITHI_temp1 = "114000"
CRITLO_temp1 = "0"
MINVALUE_temp1 = "-128"
MAXVALUE_temp1 = "127"
PWRONMON_temp1 = "ON"
@@ -0,0 +1,50 @@
LABEL_in1 = "p12v_mobo_in"
CRITHI_in1 = "60000"
CRITLO_in1 = "40000"
WARNHI_in1 = "60000"
WARNLO_in1 = "40000"
MINVALUE_in1 = "0"
MAXVALUE_in1 = "65"
# READ_VIN is direct value*100
GAIN_in1 = "100.0"
PWRONMON_in1 = "ON"
LABEL_in2 = "p12v_mobo_out"
CRITHI_in2 = "12600"
CRITLO_in2 = "11400"
WARNHI_in2 = "12600"
WARNLO_in2 = "11400"
MINVALUE_in2 = "0"
MAXVALUE_in2 = "14"
# READ_VOUT is direct value*5.02
GAIN_in2 = "5.02"
PWRONMON_in2 = "ON"
LABEL_curr1 = "p12v_mobo_in"
CRITHI_curr1 = "30000"
CRITLO_curr1 = "0"
WARNHI_curr1 = "30000"
WARNLO_curr1 = "0"
MINVALUE_curr1 = "0"
MAXVALUE_curr1 = "35"
# READ_Iin is direct value*0.5
GAIN_curr1 = "0.5"
PWRONMON_curr1 = "ON"
LABEL_curr2 = "p12v_mobo_out"
CRITHI_curr2 = "100000"
CRITLO_curr2 = "0"
WARNHI_curr2 = "100000"
WARNLO_curr2 = "0"
MINVALUE_curr2 = "0"
MAXVALUE_curr2 = "150"
PWRONMON_curr2 = "ON"
LABEL_temp1= "p12v_mobo"
WARNLO_temp1= "0"
WARNHI_temp1= "114000"
CRITHI_temp1 = "114000"
CRITLO_temp1 = "0"
MINVALUE_temp1 = "-128"
MAXVALUE_temp1 = "127"
PWRONMON_temp1 = "ON"
@@ -0,0 +1,44 @@
LABEL_fan1= "fan0"
WARNHI_fan1= "19800"
WARNLO_fan1= "3330"
CRITHI_fan1= "19800"
CRITLO_fan1= "1500"
MINVALUE_fan1 = "0"
MAXVALUE_fan1 = "20775"
PWM_TARGET_fan1 = 1
LABEL_fan2= "fan1"
WARNHI_fan2= "19800"
WARNLO_fan2= "3330"
CRITHI_fan2= "19800"
CRITLO_fan2= "1500"
MINVALUE_fan2 = "0"
MAXVALUE_fan2 = "20775"
PWM_TARGET_fan2 = 2
LABEL_fan3= "fb_fan0"
WARNHI_fan3= "19800"
WARNLO_fan3= "3330"
CRITHI_fan3= "19800"
CRITLO_fan3= "1500"
MINVALUE_fan3 = "0"
MAXVALUE_fan3 = "20775"
PWM_TARGET_fan3 = 3
LABEL_fan4= "fb_fan1"
WARNHI_fan4= "19800"
WARNLO_fan4= "3330"
CRITHI_fan4= "19800"
CRITLO_fan4= "1500"
MINVALUE_fan4 = "0"
MAXVALUE_fan4 = "20775"
PWM_TARGET_fan4 = 4
LABEL_fan5= "fb_fan2"
WARNHI_fan5= "19800"
WARNLO_fan5= "3330"
CRITHI_fan5= "19800"
CRITLO_fan5= "1500"
MINVALUE_fan5 = "0"
MAXVALUE_fan5 = "20775"
PWM_TARGET_fan5 = 5
@@ -0,0 +1,15 @@
LABEL_in1 = "p3v_bat_adc"
CRITLO_in1 = "2690"
CRITHI_in1 = "3480"
WARNHI_in1 = "3480"
WARNLO_in1 = "2690"
MINVALUE_in1 = "0"
MAXVALUE_in1 = "4"
# The battery read is controlled by GPIO18
GPIOCHIP_in1=0
GPIO_in1=18
GAIN_in1 = "3.14"
# Sleep 24hrs per poll. Number is in microseconds.
INTERVAL=86400000000
@@ -0,0 +1,33 @@
FILESEXTRAPATHS:prepend:gbs := "${THISDIR}/${PN}:"
DEPENDS += "boost"
GBS_NAMES = " \
i2c@82000/sbtsi@4c \
i2c@85000/i2c-switch@71/i2c@0/max31725@54 \
i2c@85000/i2c-switch@71/i2c@1/max31725@55 \
i2c@85000/i2c-switch@71/i2c@2/max31725@5d \
i2c@88000/adm1272@10 \
i2c@89000/i2c-switch@71/i2c@0/vrm@60 \
i2c@89000/i2c-switch@71/i2c@1/vrm@61 \
i2c@89000/i2c-switch@71/i2c@2/vrm@63 \
i2c@89000/i2c-switch@71/i2c@3/vrm@45 \
i2c@8c000/max34451@4e \
i2c@8c000/vrm@5d \
i2c@8c000/vrm@5e \
"
GBS_ITEMSFMT = "ahb/apb/{0}.conf"
GBS_ITEMS += "${@compose_list(d, 'GBS_ITEMSFMT', 'GBS_NAMES')}"
GBS_ITEMS:append:gbs = " iio-hwmon-battery.conf"
ENVS = "obmc/hwmon/{0}"
SYSTEMD_ENVIRONMENT_FILE:${PN}:append:gbs = " ${@compose_list(d, 'ENVS', 'GBS_ITEMS')}"
# Fan sensors
FITEMS = "pwm-fan-controller@103000.conf"
FENVS = "obmc/hwmon/ahb/apb/{0}"
SYSTEMD_ENVIRONMENT_FILE:${PN}:append:gbs = " ${@compose_list(d, 'FENVS', 'FITEMS')}"
EXTRA_OEMESON:append:gbs = " -Dupdate-functional-on-fail=true -Dnegative-errno-on-fail=false"
@@ -0,0 +1,174 @@
{
"config": [
{
"NVMeDriveIndex": 0,
"NVMeDriveBusID": 47,
"NVMeDriveFaultLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_0_fault",
"NVMeDriveLocateLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_0_locate",
"NVMeDriveLocateLEDControllerBusName": "xyz.openbmc_project.LED.Controller.led_u2_0_locate",
"NVMeDriveLocateLEDControllerPath": "/xyz/openbmc_project/led/physical/led_u2_0_locate",
"NVMeDrivePresentPin": 499,
"NVMeDrivePwrGoodPin": 467
},
{
"NVMeDriveIndex": 1,
"NVMeDriveBusID": 46,
"NVMeDriveFaultLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_1_fault",
"NVMeDriveLocateLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_1_locate",
"NVMeDriveLocateLEDControllerBusName": "xyz.openbmc_project.LED.Controller.led_u2_1_locate",
"NVMeDriveLocateLEDControllerPath": "/xyz/openbmc_project/led/physical/led_u2_1_locate",
"NVMeDrivePresentPin": 498,
"NVMeDrivePwrGoodPin": 466
},
{
"NVMeDriveIndex": 2,
"NVMeDriveBusID": 45,
"NVMeDriveFaultLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_2_fault",
"NVMeDriveLocateLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_2_locate",
"NVMeDriveLocateLEDControllerBusName": "xyz.openbmc_project.LED.Controller.led_u2_2_locate",
"NVMeDriveLocateLEDControllerPath": "/xyz/openbmc_project/led/physical/led_u2_2_locate",
"NVMeDrivePresentPin": 497,
"NVMeDrivePwrGoodPin": 465
},
{
"NVMeDriveIndex": 3,
"NVMeDriveBusID": 44,
"NVMeDriveFaultLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_3_fault",
"NVMeDriveLocateLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_3_locate",
"NVMeDriveLocateLEDControllerBusName": "xyz.openbmc_project.LED.Controller.led_u2_3_locate",
"NVMeDriveLocateLEDControllerPath": "/xyz/openbmc_project/led/physical/led_u2_3_locate",
"NVMeDrivePresentPin": 496,
"NVMeDrivePwrGoodPin": 464
},
{
"NVMeDriveIndex": 4,
"NVMeDriveBusID": 39,
"NVMeDriveFaultLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_4_fault",
"NVMeDriveLocateLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_4_locate",
"NVMeDriveLocateLEDControllerBusName": "xyz.openbmc_project.LED.Controller.led_u2_4_locate",
"NVMeDriveLocateLEDControllerPath": "/xyz/openbmc_project/led/physical/led_u2_4_locate",
"NVMeDrivePresentPin": 503,
"NVMeDrivePwrGoodPin": 471
},
{
"NVMeDriveIndex": 5,
"NVMeDriveBusID": 38,
"NVMeDriveFaultLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_5_fault",
"NVMeDriveLocateLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_5_locate",
"NVMeDriveLocateLEDControllerBusName": "xyz.openbmc_project.LED.Controller.led_u2_5_locate",
"NVMeDriveLocateLEDControllerPath": "/xyz/openbmc_project/led/physical/led_u2_5_locate",
"NVMeDrivePresentPin": 502,
"NVMeDrivePwrGoodPin": 470
},
{
"NVMeDriveIndex": 6,
"NVMeDriveBusID": 37,
"NVMeDriveFaultLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_6_fault",
"NVMeDriveLocateLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_6_locate",
"NVMeDriveLocateLEDControllerBusName": "xyz.openbmc_project.LED.Controller.led_u2_6_locate",
"NVMeDriveLocateLEDControllerPath": "/xyz/openbmc_project/led/physical/led_u2_6_locate",
"NVMeDrivePresentPin": 501,
"NVMeDrivePwrGoodPin": 469
},
{
"NVMeDriveIndex": 7,
"NVMeDriveBusID": 36,
"NVMeDriveFaultLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_7_fault",
"NVMeDriveLocateLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_7_locate",
"NVMeDriveLocateLEDControllerBusName": "xyz.openbmc_project.LED.Controller.led_u2_7_locate",
"NVMeDriveLocateLEDControllerPath": "/xyz/openbmc_project/led/physical/led_u2_7_locate",
"NVMeDrivePresentPin": 500,
"NVMeDrivePwrGoodPin": 468
},
{
"NVMeDriveIndex": 8,
"NVMeDriveBusID": 31,
"NVMeDriveFaultLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_8_fault",
"NVMeDriveLocateLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_8_locate",
"NVMeDriveLocateLEDControllerBusName": "xyz.openbmc_project.LED.Controller.led_u2_8_locate",
"NVMeDriveLocateLEDControllerPath": "/xyz/openbmc_project/led/physical/led_u2_8_locate",
"NVMeDrivePresentPin": 507,
"NVMeDrivePwrGoodPin": 475
},
{
"NVMeDriveIndex": 9,
"NVMeDriveBusID": 30,
"NVMeDriveFaultLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_9_fault",
"NVMeDriveLocateLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_9_locate",
"NVMeDriveLocateLEDControllerBusName": "xyz.openbmc_project.LED.Controller.led_u2_9_locate",
"NVMeDriveLocateLEDControllerPath": "/xyz/openbmc_project/led/physical/led_u2_9_locate",
"NVMeDrivePresentPin": 506,
"NVMeDrivePwrGoodPin": 474
},
{
"NVMeDriveIndex": 10,
"NVMeDriveBusID": 29,
"NVMeDriveFaultLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_10_fault",
"NVMeDriveLocateLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_10_locate",
"NVMeDriveLocateLEDControllerBusName": "xyz.openbmc_project.LED.Controller.led_u2_10_locate",
"NVMeDriveLocateLEDControllerPath": "/xyz/openbmc_project/led/physical/led_u2_10_locate",
"NVMeDrivePresentPin": 505,
"NVMeDrivePwrGoodPin": 473
},
{
"NVMeDriveIndex": 11,
"NVMeDriveBusID": 28,
"NVMeDriveFaultLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_11_fault",
"NVMeDriveLocateLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_11_locate",
"NVMeDriveLocateLEDControllerBusName": "xyz.openbmc_project.LED.Controller.led_u2_11_locate",
"NVMeDriveLocateLEDControllerPath": "/xyz/openbmc_project/led/physical/led_u2_11_locate",
"NVMeDrivePresentPin": 504,
"NVMeDrivePwrGoodPin": 472
},
{
"NVMeDriveIndex": 12,
"NVMeDriveBusID": 27,
"NVMeDriveFaultLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_12_fault",
"NVMeDriveLocateLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_12_locate",
"NVMeDriveLocateLEDControllerBusName": "xyz.openbmc_project.LED.Controller.led_u2_12_locate",
"NVMeDriveLocateLEDControllerPath": "/xyz/openbmc_project/led/physical/led_u2_12_locate",
"NVMeDrivePresentPin": 511,
"NVMeDrivePwrGoodPin": 479
},
{
"NVMeDriveIndex": 13,
"NVMeDriveBusID": 26,
"NVMeDriveFaultLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_13_fault",
"NVMeDriveLocateLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_13_locate",
"NVMeDriveLocateLEDControllerBusName": "xyz.openbmc_project.LED.Controller.led_u2_13_locate",
"NVMeDriveLocateLEDControllerPath": "/xyz/openbmc_project/led/physical/led_u2_13_locate",
"NVMeDrivePresentPin": 510,
"NVMeDrivePwrGoodPin": 478
},
{
"NVMeDriveIndex": 14,
"NVMeDriveBusID": 25,
"NVMeDriveFaultLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_14_fault",
"NVMeDriveLocateLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_14_locate",
"NVMeDriveLocateLEDControllerBusName": "xyz.openbmc_project.LED.Controller.led_u2_14_locate",
"NVMeDriveLocateLEDControllerPath": "/xyz/openbmc_project/led/physical/led_u2_14_locate",
"NVMeDrivePresentPin": 509,
"NVMeDrivePwrGoodPin": 477
},
{
"NVMeDriveIndex": 15,
"NVMeDriveBusID": 24,
"NVMeDriveFaultLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_15_fault",
"NVMeDriveLocateLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_15_locate",
"NVMeDriveLocateLEDControllerBusName": "xyz.openbmc_project.LED.Controller.led_u2_15_locate",
"NVMeDriveLocateLEDControllerPath": "/xyz/openbmc_project/led/physical/led_u2_15_locate",
"NVMeDrivePresentPin": 508,
"NVMeDrivePwrGoodPin": 476
}
],
"threshold": [
{
"criticalHigh": 72,
"criticalLow": 0,
"warningHigh": 72,
"warningLow": 0,
"maxValue": 127,
"minValue": -128
}
]
}
@@ -0,0 +1,212 @@
#!/bin/bash
TARGET_FILE_NAME="/etc/nvme/nvme_config.json"
export_gpio() {
if [ ! -d "/sys/class/gpio/gpio$1" ]; then
echo "$1" >/sys/class/gpio/export
fi
}
# Get NVMeDrivePresentPins
# 1-0024
# Get NVMeDrivePwrGoodPins
# 1-0021
if [ -d "/sys/bus/i2c/drivers/pca953x/1-0024" ]; then
presentPinBase="$(cat /sys/bus/i2c/drivers/pca953x/1-0024/gpio/gpiochip*/base)"
for i in {0..15};
do
export_gpio $(( presentPinBase + i ))
done
else
echo "Can't find present gpio expander (addr: 0x24) !!"
fi
if [ -d "/sys/bus/i2c/drivers/pca953x/1-0021" ]; then
PwrGoodPinBase="$(cat /sys/bus/i2c/drivers/pca953x/1-0021/gpio/gpiochip*/base)"
for i in {0..15};
do
export_gpio $(( PwrGoodPinBase + i ))
done
else
echo "Can't find powergood gpio expander (addr: 0x21) !!"
fi
cat > $TARGET_FILE_NAME << EOF1
{
"config": [
{
"NVMeDriveIndex": 0,
"NVMeDriveBusID": 47,
"NVMeDriveFaultLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_0_fault",
"NVMeDriveLocateLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_0_locate",
"NVMeDriveLocateLEDControllerBusName": "xyz.openbmc_project.LED.Controller.led_u2_0_locate",
"NVMeDriveLocateLEDControllerPath": "/xyz/openbmc_project/led/physical/led_u2_0_locate",
"NVMeDrivePresentPin": $(( presentPinBase + 3)),
"NVMeDrivePwrGoodPin": $(( PwrGoodPinBase + 3))
},
{
"NVMeDriveIndex": 1,
"NVMeDriveBusID": 46,
"NVMeDriveFaultLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_1_fault",
"NVMeDriveLocateLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_1_locate",
"NVMeDriveLocateLEDControllerBusName": "xyz.openbmc_project.LED.Controller.led_u2_1_locate",
"NVMeDriveLocateLEDControllerPath": "/xyz/openbmc_project/led/physical/led_u2_1_locate",
"NVMeDrivePresentPin": $(( presentPinBase + 2)),
"NVMeDrivePwrGoodPin": $(( PwrGoodPinBase + 2))
},
{
"NVMeDriveIndex": 2,
"NVMeDriveBusID": 45,
"NVMeDriveFaultLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_2_fault",
"NVMeDriveLocateLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_2_locate",
"NVMeDriveLocateLEDControllerBusName": "xyz.openbmc_project.LED.Controller.led_u2_2_locate",
"NVMeDriveLocateLEDControllerPath": "/xyz/openbmc_project/led/physical/led_u2_2_locate",
"NVMeDrivePresentPin": $(( presentPinBase + 1)),
"NVMeDrivePwrGoodPin": $(( PwrGoodPinBase + 1))
},
{
"NVMeDriveIndex": 3,
"NVMeDriveBusID": 44,
"NVMeDriveFaultLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_3_fault",
"NVMeDriveLocateLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_3_locate",
"NVMeDriveLocateLEDControllerBusName": "xyz.openbmc_project.LED.Controller.led_u2_3_locate",
"NVMeDriveLocateLEDControllerPath": "/xyz/openbmc_project/led/physical/led_u2_3_locate",
"NVMeDrivePresentPin": $(( presentPinBase + 0)),
"NVMeDrivePwrGoodPin": $(( PwrGoodPinBase + 0))
},
{
"NVMeDriveIndex": 4,
"NVMeDriveBusID": 39,
"NVMeDriveFaultLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_4_fault",
"NVMeDriveLocateLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_4_locate",
"NVMeDriveLocateLEDControllerBusName": "xyz.openbmc_project.LED.Controller.led_u2_4_locate",
"NVMeDriveLocateLEDControllerPath": "/xyz/openbmc_project/led/physical/led_u2_4_locate",
"NVMeDrivePresentPin": $(( presentPinBase + 7)),
"NVMeDrivePwrGoodPin": $(( PwrGoodPinBase + 7))
},
{
"NVMeDriveIndex": 5,
"NVMeDriveBusID": 38,
"NVMeDriveFaultLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_5_fault",
"NVMeDriveLocateLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_5_locate",
"NVMeDriveLocateLEDControllerBusName": "xyz.openbmc_project.LED.Controller.led_u2_5_locate",
"NVMeDriveLocateLEDControllerPath": "/xyz/openbmc_project/led/physical/led_u2_5_locate",
"NVMeDrivePresentPin": $(( presentPinBase + 6)),
"NVMeDrivePwrGoodPin": $(( PwrGoodPinBase + 6))
},
{
"NVMeDriveIndex": 6,
"NVMeDriveBusID": 37,
"NVMeDriveFaultLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_6_fault",
"NVMeDriveLocateLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_6_locate",
"NVMeDriveLocateLEDControllerBusName": "xyz.openbmc_project.LED.Controller.led_u2_6_locate",
"NVMeDriveLocateLEDControllerPath": "/xyz/openbmc_project/led/physical/led_u2_6_locate",
"NVMeDrivePresentPin": $(( presentPinBase + 5)),
"NVMeDrivePwrGoodPin": $(( PwrGoodPinBase + 5))
},
{
"NVMeDriveIndex": 7,
"NVMeDriveBusID": 36,
"NVMeDriveFaultLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_7_fault",
"NVMeDriveLocateLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_7_locate",
"NVMeDriveLocateLEDControllerBusName": "xyz.openbmc_project.LED.Controller.led_u2_7_locate",
"NVMeDriveLocateLEDControllerPath": "/xyz/openbmc_project/led/physical/led_u2_7_locate",
"NVMeDrivePresentPin": $(( presentPinBase + 4)),
"NVMeDrivePwrGoodPin": $(( PwrGoodPinBase + 4))
},
{
"NVMeDriveIndex": 8,
"NVMeDriveBusID": 31,
"NVMeDriveFaultLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_8_fault",
"NVMeDriveLocateLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_8_locate",
"NVMeDriveLocateLEDControllerBusName": "xyz.openbmc_project.LED.Controller.led_u2_8_locate",
"NVMeDriveLocateLEDControllerPath": "/xyz/openbmc_project/led/physical/led_u2_8_locate",
"NVMeDrivePresentPin": $(( presentPinBase + 11)),
"NVMeDrivePwrGoodPin": $(( PwrGoodPinBase + 11))
},
{
"NVMeDriveIndex": 9,
"NVMeDriveBusID": 30,
"NVMeDriveFaultLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_9_fault",
"NVMeDriveLocateLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_9_locate",
"NVMeDriveLocateLEDControllerBusName": "xyz.openbmc_project.LED.Controller.led_u2_9_locate",
"NVMeDriveLocateLEDControllerPath": "/xyz/openbmc_project/led/physical/led_u2_9_locate",
"NVMeDrivePresentPin": $(( presentPinBase + 10)),
"NVMeDrivePwrGoodPin": $(( PwrGoodPinBase + 10))
},
{
"NVMeDriveIndex": 10,
"NVMeDriveBusID": 29,
"NVMeDriveFaultLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_10_fault",
"NVMeDriveLocateLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_10_locate",
"NVMeDriveLocateLEDControllerBusName": "xyz.openbmc_project.LED.Controller.led_u2_10_locate",
"NVMeDriveLocateLEDControllerPath": "/xyz/openbmc_project/led/physical/led_u2_10_locate",
"NVMeDrivePresentPin": $(( presentPinBase + 9)),
"NVMeDrivePwrGoodPin": $(( PwrGoodPinBase + 9))
},
{
"NVMeDriveIndex": 11,
"NVMeDriveBusID": 28,
"NVMeDriveFaultLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_11_fault",
"NVMeDriveLocateLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_11_locate",
"NVMeDriveLocateLEDControllerBusName": "xyz.openbmc_project.LED.Controller.led_u2_11_locate",
"NVMeDriveLocateLEDControllerPath": "/xyz/openbmc_project/led/physical/led_u2_11_locate",
"NVMeDrivePresentPin": $(( presentPinBase + 8)),
"NVMeDrivePwrGoodPin": $(( PwrGoodPinBase + 8))
},
{
"NVMeDriveIndex": 12,
"NVMeDriveBusID": 27,
"NVMeDriveFaultLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_12_fault",
"NVMeDriveLocateLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_12_locate",
"NVMeDriveLocateLEDControllerBusName": "xyz.openbmc_project.LED.Controller.led_u2_12_locate",
"NVMeDriveLocateLEDControllerPath": "/xyz/openbmc_project/led/physical/led_u2_12_locate",
"NVMeDrivePresentPin": $(( presentPinBase + 15)),
"NVMeDrivePwrGoodPin": $(( PwrGoodPinBase + 15))
},
{
"NVMeDriveIndex": 13,
"NVMeDriveBusID": 26,
"NVMeDriveFaultLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_13_fault",
"NVMeDriveLocateLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_13_locate",
"NVMeDriveLocateLEDControllerBusName": "xyz.openbmc_project.LED.Controller.led_u2_13_locate",
"NVMeDriveLocateLEDControllerPath": "/xyz/openbmc_project/led/physical/led_u2_13_locate",
"NVMeDrivePresentPin": $(( presentPinBase + 14)),
"NVMeDrivePwrGoodPin": $(( PwrGoodPinBase + 14))
},
{
"NVMeDriveIndex": 14,
"NVMeDriveBusID": 25,
"NVMeDriveFaultLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_14_fault",
"NVMeDriveLocateLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_14_locate",
"NVMeDriveLocateLEDControllerBusName": "xyz.openbmc_project.LED.Controller.led_u2_14_locate",
"NVMeDriveLocateLEDControllerPath": "/xyz/openbmc_project/led/physical/led_u2_14_locate",
"NVMeDrivePresentPin": $(( presentPinBase + 13)),
"NVMeDrivePwrGoodPin": $(( PwrGoodPinBase + 13))
},
{
"NVMeDriveIndex": 15,
"NVMeDriveBusID": 24,
"NVMeDriveFaultLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_15_fault",
"NVMeDriveLocateLEDGroupPath": "/xyz/openbmc_project/led/groups/led_u2_15_locate",
"NVMeDriveLocateLEDControllerBusName": "xyz.openbmc_project.LED.Controller.led_u2_15_locate",
"NVMeDriveLocateLEDControllerPath": "/xyz/openbmc_project/led/physical/led_u2_15_locate",
"NVMeDrivePresentPin": $(( presentPinBase + 12)),
"NVMeDrivePwrGoodPin": $(( PwrGoodPinBase + 12))
}
],
"threshold": [
{
"criticalHigh": 72,
"criticalLow": 0,
"warningHigh": 72,
"warningLow": 0,
"maxValue": 127,
"minValue": -128
}
]
}
EOF1
@@ -0,0 +1,19 @@
[Unit]
Description=NVMe management
Wants=xyz.openbmc_project.LED.GroupManager.service xyz.openbmc_project.Inventory.Manager.service
After=xyz.openbmc_project.LED.GroupManager.service xyz.openbmc_project.Inventory.Manager.service
Wants=mapper-wait@-xyz-openbmc_project-control-nvme.service
After=mapper-wait@-xyz-openbmc_project-control-nvme.service
[Service]
ExecStartPre=/usr/bin/nvme_json_rewrite.sh
ExecStart=/usr/bin/nvme_main
Type=dbus
BusName=xyz.openbmc_project.nvme.manager
SyslogIdentifier=phosphor-nvme
Restart=always
RestartSec=3
StartLimitInterval=0
[Install]
WantedBy=multi-user.target
@@ -0,0 +1,17 @@
FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
SRC_URI:append:gbs = " file://nvme_config.json"
SRC_URI:append:gbs = " file://nvme_json_rewrite.sh"
SRC_URI:append:gbs = " file://xyz.openbmc_project.nvme.manager.service.replace"
RDEPENDS:${PN} += "bash"
do_install:append:gbs() {
install -d ${D}/${sysconfdir}/nvme/
install -m 0644 ${WORKDIR}/nvme_config.json ${D}/${sysconfdir}/nvme/
install -d ${D}${bindir}
install -m 0755 ${WORKDIR}/nvme_json_rewrite.sh ${D}${bindir}/
install -d ${D}${systemd_system_unitdir}
install -m 0644 ${WORKDIR}/xyz.openbmc_project.nvme.manager.service.replace ${D}${systemd_system_unitdir}/xyz.openbmc_project.nvme.manager.service
}
@@ -0,0 +1,129 @@
[
{
"Desc": {
"Name": "i2cool_0",
"SensorType": "temperature",
"MaxValue": 127.0,
"MinValue": -128.0
},
"Threshold": {
"CriticalHigh": 35,
"CriticalLow": 0,
"WarningHigh": 35,
"WarningLow": 0
},
"Params": {
"DbusParam": [
{
"ParamName": "inlet",
"Desc": {
"Name": "inlet",
"SensorType": "temperature"
}
},
{
"ParamName": "fan0",
"Desc": {
"Name": "fan0",
"SensorType": "fan_tach"
}
},
{
"ParamName": "fan1",
"Desc": {
"Name": "fan1",
"SensorType": "fan_tach"
}
}
]
},
"Expression": "round(inlet - 1 - (1.8 * 3700 / avg(fan0, fan1)))"
},
{
"Desc": {
"Name": "i2cool_1",
"SensorType": "temperature",
"MaxValue": 127.0,
"MinValue": -128.0
},
"Threshold": {
"CriticalHigh": 75,
"CriticalLow": 0,
"WarningHigh": 70,
"WarningLow": 0
},
"Params": {
"DbusParam": [
{
"ParamName": "outlet_0",
"Desc": {
"Name": "outlet_0",
"SensorType": "temperature"
}
},
{
"ParamName": "fan0",
"Desc": {
"Name": "fan0",
"SensorType": "fan_tach"
}
},
{
"ParamName": "fan1",
"Desc": {
"Name": "fan1",
"SensorType": "fan_tach"
}
}
]
},
"Expression": "round(outlet_0 - if(avg(fan0, fan1) >= 7400, 3 * 9558 / avg(fan0, fan1), 7 * 3700 / avg(fan0, fan1) - 2))"
},
{
"Desc": {
"Name": "i2cool_2",
"SensorType": "temperature",
"MaxValue": 127.0,
"MinValue": -128.0
},
"Threshold": {
"CriticalHigh": 70,
"CriticalLow": 0,
"WarningHigh": 70,
"WarningLow": 0
},
"Params": {
"DbusParam": [
{
"ParamName": "outlet_1",
"Desc": {
"Name": "outlet_1",
"SensorType": "temperature"
}
},
{
"ParamName": "fb_fan0",
"Desc": {
"Name": "fb_fan0",
"SensorType": "fan_tach"
}
},
{
"ParamName": "fb_fan1",
"Desc": {
"Name": "fb_fan1",
"SensorType": "fan_tach"
}
},
{
"ParamName": "fb_fan2",
"Desc": {
"Name": "fb_fan2",
"SensorType": "fan_tach"
}
}
]
},
"Expression": "round(outlet_1 - if(avg(fb_fan0, fb_fan1, fb_fan2) >= 7400, 1 * 9558 / avg(fb_fan0, fb_fan1, fb_fan2), 1))"
}
]
@@ -0,0 +1,16 @@
[Unit]
Description=Virtual sensors
After=mapper-wait@-xyz-openbmc_project-sensors-temperature-inlet.service
After=mapper-wait@-xyz-openbmc_project-sensors-temperature-outlet_0.service
After=mapper-wait@-xyz-openbmc_project-sensors-temperature-outlet_1.service
StartLimitBurst=10
[Service]
Restart=always
ExecStart=/usr/bin/virtual-sensor
Type=dbus
BusName=xyz.openbmc_project.VirtualSensor
SyslogIdentifier=phosphor-virtual-sensor
[Install]
WantedBy=multi-user.target
@@ -0,0 +1,17 @@
FILESEXTRAPATHS:prepend:gbs := "${THISDIR}/${PN}:"
SRC_URI:append:gbs = " file://config-virtual-sensor.json \
file://phosphor-virtual-sensor.service.replace \
"
RDEPENDS:${PN}:append:gbs = "bash"
do_install:append:gbs() {
install -d ${D}${datadir}/${PN}
install -m 0644 -D ${WORKDIR}/config-virtual-sensor.json \
${D}${datadir}/${PN}/virtual_sensor_config.json
install -d ${D}${systemd_system_unitdir}
install -m 0644 ${WORKDIR}/${PN}.service.replace \
${D}${systemd_system_unitdir}/${PN}.service
}
@@ -0,0 +1,6 @@
---
/xyz/openbmc_project/control/host0/restriction_mode:
- Interface: xyz.openbmc_project.Control.Security.RestrictionMode
Properties:
RestrictionMode:
Default: RestrictionMode::Modes::Whitelist
@@ -0,0 +1,2 @@
FILESEXTRAPATHS:append:gbs := ":${THISDIR}/${PN}"
SRC_URI:append:gbs = " file://restrictionmode-default-whitelist.override.yml"
@@ -0,0 +1,8 @@
DEVPATH=/xyz/openbmc_project/watchdog/host0
SERVICE=xyz.openbmc_project.Watchdog
UNIT_HARD_RESET=phosphor-host-watchdog-reset.service
UNIT_POWER_OFF=phosphor-host-watchdog-poweroff.service
UNIT_POWER_CYCLE=phosphor-host-watchdog-powercycle.service
FALLBACK_ACTION=xyz.openbmc_project.State.Watchdog.Action.PowerCycle
FALLBACK_INTERVAL=180000
MIN_INTERVAL=60000
@@ -0,0 +1,9 @@
[Unit]
Description=Power Cycle Host Server
After=xyz.openbmc_project.Chassis.Control.Power.service
[Service]
Type=oneshot
ExecStart=busctl set-property xyz.openbmc_project.State.Chassis /xyz/openbmc_project/state/chassis0 xyz.openbmc_project.State.Chassis RequestedPowerTransition s xyz.openbmc_project.State.Chassis.Transition.PowerCycle
ExecStart=busctl set-property xyz.openbmc_project.Control.Host.RestartCause /xyz/openbmc_project/control/host0/restart_cause xyz.openbmc_project.Control.Host.RestartCause RequestedRestartCause s xyz.openbmc_project.State.Host.RestartCause.WatchdogTimer
SyslogIdentifier=phosphor-watchdog
@@ -0,0 +1,8 @@
[Unit]
Description=Shutdown Host Server
After=xyz.openbmc_project.Chassis.Control.Power.service
[Service]
Type=oneshot
ExecStart=busctl set-property xyz.openbmc_project.State.Chassis /xyz/openbmc_project/state/chassis0 xyz.openbmc_project.State.Chassis RequestedPowerTransition s xyz.openbmc_project.State.Chassis.Transition.Off
SyslogIdentifier=phosphor-watchdog
@@ -0,0 +1,9 @@
[Unit]
Description=Reset Host Server
After=xyz.openbmc_project.Chassis.Control.Power.service
[Service]
Type=oneshot
ExecStart=busctl set-property xyz.openbmc_project.State.Host /xyz/openbmc_project/state/host0 xyz.openbmc_project.State.Host RequestedHostTransition s xyz.openbmc_project.State.Host.Transition.ForceWarmReboot
ExecStart=busctl set-property xyz.openbmc_project.Control.Host.RestartCause /xyz/openbmc_project/control/host0/restart_cause xyz.openbmc_project.Control.Host.RestartCause RequestedRestartCause s xyz.openbmc_project.State.Host.RestartCause.WatchdogTimer
SyslogIdentifier=phosphor-watchdog
@@ -0,0 +1,17 @@
[Unit]
Description=Phosphor Watchdog
[Service]
EnvironmentFile={envfiledir}/obmc/watchdog/%I
ExecStart=/usr/bin/env phosphor-watchdog --service=${{SERVICE}} --path=${{DEVPATH}} \
--continue --fallback_always --min_interval=${{MIN_INTERVAL}} \
--fallback_action=${{FALLBACK_ACTION}} --fallback_interval=${{FALLBACK_INTERVAL}} \
--action_target=xyz.openbmc_project.State.Watchdog.Action.HardReset=${{UNIT_HARD_RESET}} \
--action_target=xyz.openbmc_project.State.Watchdog.Action.PowerOff=${{UNIT_POWER_OFF}} \
--action_target=xyz.openbmc_project.State.Watchdog.Action.PowerCycle=${{UNIT_POWER_CYCLE}}
SyslogIdentifier=phosphor-watchdog
BusName=xyz.openbmc_project.Watchdog
Type=dbus
[Install]
WantedBy=basic.target
@@ -0,0 +1,13 @@
FILESEXTRAPATHS:prepend:gbs := "${THISDIR}/${PN}:"
SYSTEMD_ENVIRONMENT_FILE:${PN}:append:gbs = " obmc/watchdog/host0"
OBMC_HOST_WATCHDOG_INSTANCES_A = "host0"
WATCHDOG_FMT_A = "phosphor-watchdog@{0}.service"
SYSTEMD_OVERRIDE:${PN}:remove:gbs = "poweron.conf:phosphor-watchdog@poweron.service.d/poweron.conf"
SYSTEMD_LINK:${PN}:remove:gbs = "${@compose_list(d, 'ENABLE_WATCHDOG_FMT', 'OBMC_HOST_INSTANCES')}"
SYSTEMD_LINK:${PN}:remove:gbs = "${@compose_list(d, 'WATCHDOG_FMT', 'OBMC_HOST_WATCHDOG_INSTANCES', 'OBMC_HOST_INSTANCES')}"
SYSTEMD_SERVICE:${PN}:gbs = " ${@compose_list(d, 'WATCHDOG_FMT_A', 'OBMC_HOST_WATCHDOG_INSTANCES_A')} \
phosphor-host-watchdog-reset.service \
phosphor-host-watchdog-poweroff.service \
phosphor-host-watchdog-powercycle.service \
"