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,31 @@
SUMMARY = "YAML configuration for s6q"
PR = "r1"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
inherit allarch
SRC_URI = " \
file://ipmi-fru.yaml \
file://ipmi-fru-properties.yaml \
file://ipmi-sensors.yaml \
file://ipmi-inventory-sensors.yaml \
"
S = "${WORKDIR}"
do_install() {
install -m 0644 -D ipmi-fru.yaml ${D}${datadir}/${BPN}/ipmi-fru-read.yaml
install -m 0644 -D ipmi-fru-properties.yaml ${D}${datadir}/${BPN}/ipmi-extra-properties.yaml
install -m 0644 -D ipmi-sensors.yaml ${D}${datadir}/${BPN}/ipmi-sensors.yaml
install -m 0644 -D ipmi-inventory-sensors.yaml ${D}${datadir}/${BPN}/ipmi-inventory-sensors.yaml
}
FILES:${PN}-dev = " \
${datadir}/${BPN}/ipmi-fru-read.yaml \
${datadir}/${BPN}/ipmi-extra-properties.yaml \
${datadir}/${BPN}/ipmi-sensors.yaml \
${datadir}/${BPN}/ipmi-inventory-sensors.yaml \
"
ALLOW_EMPTY:${PN} = "1"
@@ -0,0 +1,31 @@
/system:
xyz.openbmc_project.Inventory.Decorator.Cacheable:
Cached: 'true'
xyz.openbmc_project.Inventory.Decorator.Replaceable:
FieldReplaceable: 'true'
xyz.openbmc_project.Inventory.Item:
Present: 'true'
/system/chassis:
xyz.openbmc_project.Inventory.Decorator.Cacheable:
Cached: 'true'
xyz.openbmc_project.Inventory.Decorator.Replaceable:
FieldReplaceable: 'true'
xyz.openbmc_project.Inventory.Item:
Present: 'true'
/system/chassis/bmc:
xyz.openbmc_project.Inventory.Decorator.Replaceable:
FieldReplaceable: 'true'
xyz.openbmc_project.Inventory.Decorator.Cacheable:
Cached: 'true'
xyz.openbmc_project.Inventory.Item:
Present: 'true'
/system/chassis/mainboard:
xyz.openbmc_project.Inventory.Decorator.Replaceable:
FieldReplaceable: 'true'
xyz.openbmc_project.Inventory.Decorator.Cacheable:
Cached: 'true'
xyz.openbmc_project.Inventory.Item:
Present: 'true'
@@ -0,0 +1,60 @@
0x00:
/system/chassis/bmc:
entityID: 6
entityInstance: 1
interfaces:
xyz.openbmc_project.Inventory.Decorator.Asset:
BuildDate:
IPMIFruProperty: Mfg Date
IPMIFruSection: Board
SerialNumber:
IPMIFruProperty: Serial Number
IPMIFruSection: Board
PartNumber:
IPMIFruProperty: Part Number
IPMIFruSection: Board
Manufacturer:
IPMIFruProperty: Manufacturer
IPMIFruSection: Board
CustomField:
IPMIFruProperty: CustomField
IPMIFruSection: Board
xyz.openbmc_project.Inventory.Item:
PrettyName:
IPMIFruProperty: Name
IPMIFruSection: Board
xyz.openbmc_project.Inventory.Decorator.Revision:
Version:
IPMIFruProperty: FRU File ID
IPMIFruSection: Board
xyz.openbmc_project.Inventory.Item.NetworkInterface:
MACAddress:
IPMIFruProperty: Custom Field 1
IPMIFruSection: Board
0x01:
/system/chassis/mainboard:
entityID: 16
entityInstance: 1
interfaces:
xyz.openbmc_project.Inventory.Decorator.Asset:
BuildDate:
IPMIFruProperty: Mfg Date
IPMIFruSection: Board
SerialNumber:
IPMIFruProperty: Serial Number
IPMIFruSection: Board
PartNumber:
IPMIFruProperty: Part Number
IPMIFruSection: Board
Manufacturer:
IPMIFruProperty: Manufacturer
IPMIFruSection: Board
xyz.openbmc_project.Inventory.Item:
PrettyName:
IPMIFruProperty: Name
IPMIFruSection: Board
xyz.openbmc_project.Inventory.Decorator.Revision:
Version:
IPMIFruProperty: FRU File ID
IPMIFruSection: Board
@@ -0,0 +1,255 @@
/xyz/openbmc_project/sensors/current/PSU0_Current:
eventReadingType: 1
sensorID: 0x01
sensorType: 0x03
offset: 0xff
/xyz/openbmc_project/sensors/current/PSU1_Current:
eventReadingType: 1
sensorID: 0x02
sensorType: 0x03
offset: 0xff
/xyz/openbmc_project/sensors/power/PSU0_Input:
eventReadingType: 1
sensorID: 0x03
sensorType: 0x08
offset: 0xff
/xyz/openbmc_project/sensors/power/PSU1_Input:
eventReadingType: 1
sensorID: 0x04
sensorType: 0x08
offset: 0xff
/xyz/openbmc_project/sensors/power/Fan_Power_G0:
eventReadingType: 1
sensorID: 0x05
sensorType: 0x08
offset: 0xff
/xyz/openbmc_project/sensors/power/Fan_Power_G1:
eventReadingType: 1
sensorID: 0x06
sensorType: 0x08
offset: 0xff
/xyz/openbmc_project/sensors/utilization/CPU:
eventReadingType: 1
sensorID: 0x07
sensorType: 0x0B
offset: 0xff
/xyz/openbmc_project/sensors/utilization/Memory:
eventReadingType: 1
sensorID: 0x08
sensorType: 0x0B
offset: 0xff
/xyz/openbmc_project/sensors/utilization/Storage_RW:
eventReadingType: 1
sensorID: 0x09
sensorType: 0x0B
offset: 0xff
/xyz/openbmc_project/sensors/temperature/Temp_PSU0:
eventReadingType: 1
sensorID: 0x0A
sensorType: 0x01
offset: 0xff
/xyz/openbmc_project/sensors/temperature/Temp_PSU1:
eventReadingType: 1
sensorID: 0x0B
sensorType: 0x01
offset: 0xff
/xyz/openbmc_project/sensors/temperature/Temp_AON_VR_CPU0:
eventReadingType: 1
sensorID: 0x0C
sensorType: 0x01
offset: 0xff
/xyz/openbmc_project/sensors/temperature/Temp_AON_VR_CPU1:
eventReadingType: 1
sensorID: 0x0D
sensorType: 0x01
offset: 0xff
/xyz/openbmc_project/sensors/temperature/Temp_HV_VR_CPU0:
eventReadingType: 1
sensorID: 0x0E
sensorType: 0x01
offset: 0xff
/xyz/openbmc_project/sensors/temperature/Temp_HV_VR_CPU1:
eventReadingType: 1
sensorID: 0x0F
sensorType: 0x01
offset: 0xff
/xyz/openbmc_project/sensors/temperature/Temp_MB1:
eventReadingType: 1
sensorID: 0x10
sensorType: 0x01
offset: 0xff
/xyz/openbmc_project/sensors/temperature/Temp_MB2:
eventReadingType: 1
sensorID: 0x11
sensorType: 0x01
offset: 0xff
/xyz/openbmc_project/sensors/temperature/Temp_PCH:
eventReadingType: 1
sensorID: 0x12
sensorType: 0x01
offset: 0xff
/xyz/openbmc_project/sensors/temperature/Temp_VR_CPU0:
eventReadingType: 1
sensorID: 0x13
sensorType: 0x01
offset: 0xff
/xyz/openbmc_project/sensors/temperature/Temp_VR_CPU1:
eventReadingType: 1
sensorID: 0x14
sensorType: 0x01
offset: 0xff
/xyz/openbmc_project/sensors/temperature/Temp_Inlet:
eventReadingType: 1
sensorID: 0x15
sensorType: 0x01
offset: 0xff
/xyz/openbmc_project/sensors/temperature/Temp_SCM:
eventReadingType: 1
sensorID: 0x16
sensorType: 0x01
offset: 0xff
/xyz/openbmc_project/sensors/utilization/SYS_CPU_util:
eventReadingType: 1
sensorID: 0x17
sensorType: 0x0B
offset: 0xff
/xyz/openbmc_project/sensors/utilization/SYS_IO_util:
eventReadingType: 1
sensorID: 0x18
sensorType: 0x0B
offset: 0xff
/xyz/openbmc_project/sensors/utilization/SYS_MEM_util:
eventReadingType: 1
sensorID: 0x19
sensorType: 0x0B
offset: 0xff
/xyz/openbmc_project/sensors/voltage/Volt_FAON_CPU0:
eventReadingType: 1
sensorID: 0x1A
sensorType: 0x02
offset: 0xff
/xyz/openbmc_project/sensors/voltage/Volt_FAON_CPU1:
eventReadingType: 1
sensorID: 0x1B
sensorType: 0x02
offset: 0xff
/xyz/openbmc_project/sensors/voltage/Volt_P1V0:
eventReadingType: 1
sensorID: 0x1C
sensorType: 0x02
offset: 0xff
/xyz/openbmc_project/sensors/voltage/Volt_P1V2:
eventReadingType: 1
sensorID: 0x1D
sensorType: 0x02
offset: 0xff
/xyz/openbmc_project/sensors/voltage/Volt_P1V2_MAX_MB:
eventReadingType: 1
sensorID: 0x1E
sensorType: 0x02
offset: 0xff
/xyz/openbmc_project/sensors/voltage/Volt_P1V8:
eventReadingType: 1
sensorID: 0x1F
sensorType: 0x02
offset: 0xff
/xyz/openbmc_project/sensors/voltage/Volt_P1V05PCH_MB:
eventReadingType: 1
sensorID: 0x20
sensorType: 0x02
offset: 0xff
/xyz/openbmc_project/sensors/voltage/Volt_P2V5:
eventReadingType: 1
sensorID: 0x21
sensorType: 0x02
offset: 0xff
/xyz/openbmc_project/sensors/voltage/Volt_P2V5_MAX_MB:
eventReadingType: 1
sensorID: 0x22
sensorType: 0x02
offset: 0xff
/xyz/openbmc_project/sensors/voltage/Volt_P3V3:
eventReadingType: 1
sensorID: 0x23
sensorType: 0x02
offset: 0xff
/xyz/openbmc_project/sensors/voltage/Volt_P3V3_AUX_MB:
eventReadingType: 1
sensorID: 0x64
sensorType: 0x02
offset: 0xff
/xyz/openbmc_project/sensors/voltage/Volt_P3V3_MB:
eventReadingType: 1
sensorID: 0x65
sensorType: 0x02
offset: 0xff
/xyz/openbmc_project/sensors/voltage/Volt_P3V_BAT:
eventReadingType: 1
sensorID: 0x66
sensorType: 0x02
offset: 0xff
/xyz/openbmc_project/sensors/voltage/Volt_P5V:
eventReadingType: 1
sensorID: 0x67
sensorType: 0x02
offset: 0xff
/xyz/openbmc_project/sensors/voltage/Volt_P5V_AUX_MB:
eventReadingType: 1
sensorID: 0x68
sensorType: 0x02
offset: 0xff
/xyz/openbmc_project/sensors/voltage/Volt_P5V_MB:
eventReadingType: 1
sensorID: 0x69
sensorType: 0x02
offset: 0xff
/xyz/openbmc_project/sensors/voltage/Volt_P12V:
eventReadingType: 1
sensorID: 0x6A
sensorType: 0x02
offset: 0xff
/xyz/openbmc_project/sensors/voltage/Volt_P12V_AUX_MB:
eventReadingType: 1
sensorID: 0x6B
sensorType: 0x02
offset: 0xff
/xyz/openbmc_project/sensors/voltage/Volt_P12V_MB:
eventReadingType: 1
sensorID: 0x6C
sensorType: 0x02
offset: 0xff
/xyz/openbmc_project/sensors/voltage/Volt_PGPPA:
eventReadingType: 1
sensorID: 0x6D
sensorType: 0x02
offset: 0xff
/xyz/openbmc_project/sensors/voltage/Volt_PVCCFA_CPU0:
eventReadingType: 1
sensorID: 0x6E
sensorType: 0x02
offset: 0xff
/xyz/openbmc_project/sensors/voltage/Volt_PVCCFA_CPU1:
eventReadingType: 1
sensorID: 0x6F
sensorType: 0x02
offset: 0xff
/xyz/openbmc_project/sensors/voltage/Volt_PVCCIN_CPU0:
eventReadingType: 1
sensorID: 0x70
sensorType: 0x02
offset: 0xff
/xyz/openbmc_project/sensors/voltage/Volt_PVCCIN_CPU1:
eventReadingType: 1
sensorID: 0x71
sensorType: 0x02
offset: 0xff
/xyz/openbmc_project/sensors/temperature/Temp_CPU0:
eventReadingType: 1
sensorID: 0x72
sensorType: 0x01
offset: 0xff
/xyz/openbmc_project/sensors/temperature/Temp_CPU1:
eventReadingType: 1
sensorID: 0x73
sensorType: 0x01
offset: 0xff
@@ -0,0 +1,17 @@
SUMMARY = "Chassis Intrusion monitor for meta-s6q"
PR = "r1"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
inherit allarch
inherit phosphor-dbus-monitor
FILESEXTRAPATHS:prepend:s6q := "${THISDIR}/${BPN}:"
SRC_URI += "file://config.yaml"
do_install() {
install -D ${WORKDIR}/config.yaml ${D}${config_dir}/config.yaml
}
FILES:${PN} += "${config_dir}/config.yaml"
@@ -0,0 +1,111 @@
- name: chassis capabilities path
class: group
group: path
members:
- meta: PATH
path: /xyz/openbmc_project/control/chassis_capabilities
- name: intrusion property
class: group
group: property
type: boolean
members:
- interface: xyz.openbmc_project.Control.ChassisCapabilities
meta: PROPERTY
property: ChassisIntrusionEnabled
- name: watch intrusionenable
class: watch
watch: property
paths: chassis capabilities path
properties: intrusion property
callback: intrusion enable
- name: watch intrusiondisable
class: watch
watch: property
paths: chassis capabilities path
properties: intrusion property
callback: intrusion disable
- name: intrusion enable
class: condition
condition: count
paths: chassis capabilities path
properties: intrusion property
callback: enable log and event
countop: '=='
countbound: 1
op: '=='
bound: true
- name: intrusion disable
class: condition
condition: count
paths: chassis capabilities path
properties: intrusion property
callback: disable log and event
countop: '=='
countbound: 1
op: '=='
bound: false
- name: enable log and event
class: callback
callback: group
members:
- journal callback enable value
- start intrusion sensor
- name: disable log and event
class: callback
callback: group
members:
- journal callback disable value
- stop intrusion sensor
- name: journal callback enable value
class: callback
callback: journal
paths: chassis capabilities path
properties: intrusion property
severity: INFO
message: chassis intrusion enable
- name: journal callback disable value
class: callback
callback: journal
paths: chassis capabilities path
properties: intrusion property
severity: INFO
message: chassis intrusion disable
- name: stop intrusion sensor
description: >
'Stop intrusion sensor.'
class: callback
callback: method
service: org.freedesktop.systemd1
path: /org/freedesktop/systemd1
interface: org.freedesktop.systemd1.Manager
method: StopUnit
args:
- value: xyz.openbmc_project.intrusionsensor.service
type: string
- value: replace
type: string
- name: start intrusion sensor
description: >
'Start intrusion sensor.'
class: callback
callback: method
service: org.freedesktop.systemd1
path: /org/freedesktop/systemd1
interface: org.freedesktop.systemd1.Manager
method: StartUnit
args:
- value: xyz.openbmc_project.intrusionsensor.service
type: string
- value: replace
type: string
@@ -0,0 +1 @@
PHOSPHOR_DBUS_MONITOR_CONFIGS:append:s6q = " chassis-intrusion-monitor"
@@ -0,0 +1 @@
FILESEXTRAPATHS:append:s6q := ":${THISDIR}/${PN}"
@@ -0,0 +1,2 @@
OBMC_IMAGE_EXTRA_INSTALL:append:s6q = " usb-ethernet-gadget"
IMAGE_FEATURES:append:s6q = " obmc-dbus-monitor"
@@ -0,0 +1,14 @@
FILESEXTRAPATHS:prepend:s6q := "${THISDIR}/${PN}:"
SRC_URI:append:s6q = " file://bond_channel_config.json"
SRC_URI:append:s6q = " file://bond_channel_access.json"
do_install:append:s6q() {
if ${@bb.utils.contains('MACHINE_FEATURES', 'bonding', 'true', 'false', d)};
then
install -m 0644 -D ${WORKDIR}/bond_channel_access.json \
${D}${datadir}/ipmi-providers/channel_access.json
install -m 0644 -D ${WORKDIR}/bond_channel_config.json \
${D}${datadir}/ipmi-providers/channel_config.json
fi
}
@@ -0,0 +1,9 @@
{
"1" : {
"access_mode" : "always_available",
"user_auth_disabled" : false,
"per_msg_auth_disabled" : false,
"alerting_disabled" : false,
"priv_limit" : "priv-admin"
}
}
@@ -0,0 +1,178 @@
{
"0": {
"name": "IPMB",
"is_valid": true,
"active_sessions": 0,
"channel_info": {
"medium_type": "ipmb",
"protocol_type": "ipmb-1.0",
"session_supported": "session-less",
"is_ipmi": true
}
},
"1": {
"name": "bond0",
"is_valid": true,
"active_sessions": 0,
"channel_info": {
"medium_type": "lan-802.3",
"protocol_type": "ipmb-1.0",
"session_supported": "multi-session",
"is_ipmi": true
}
},
"2": {
"name": "eth1",
"is_valid": false,
"active_sessions": 0,
"channel_info": {
"medium_type": "lan-802.3",
"protocol_type": "ipmb-1.0",
"session_supported": "multi-session",
"is_ipmi": true
}
},
"3": {
"name": "usb0",
"is_valid": false,
"active_sessions": 0,
"channel_info": {
"medium_type": "lan-802.3",
"protocol_type": "ipmb-1.0",
"session_supported": "multi-session",
"is_ipmi": true
}
},
"4": {
"name": "RESERVED",
"is_valid": false,
"active_sessions": 0,
"channel_info": {
"medium_type": "reserved",
"protocol_type": "na",
"session_supported": "session-less",
"is_ipmi": true
}
},
"5": {
"name": "RESERVED",
"is_valid": false,
"active_sessions": 0,
"channel_info": {
"medium_type": "reserved",
"protocol_type": "na",
"session_supported": "session-less",
"is_ipmi": true
}
},
"6": {
"name": "RESERVED",
"is_valid": false,
"active_sessions": 0,
"channel_info": {
"medium_type": "reserved",
"protocol_type": "na",
"session_supported": "session-less",
"is_ipmi": true
}
},
"7": {
"name": "RESERVED",
"is_valid": false,
"active_sessions": 0,
"channel_info": {
"medium_type": "reserved",
"protocol_type": "na",
"session_supported": "session-less",
"is_ipmi": true
}
},
"8": {
"name": "INTRABMC",
"is_valid": true,
"active_sessions": 0,
"channel_info": {
"medium_type": "oem",
"protocol_type": "oem",
"session_supported": "session-less",
"is_ipmi": true
}
},
"9": {
"name": "RESERVED",
"is_valid": false,
"active_sessions": 0,
"channel_info": {
"medium_type": "reserved",
"protocol_type": "na",
"session_supported": "session-less",
"is_ipmi": true
}
},
"10": {
"name": "RESERVED",
"is_valid": false,
"active_sessions": 0,
"channel_info": {
"medium_type": "reserved",
"protocol_type": "na",
"session_supported": "session-less",
"is_ipmi": true
}
},
"11": {
"name": "RESERVED",
"is_valid": false,
"active_sessions": 0,
"channel_info": {
"medium_type": "reserved",
"protocol_type": "na",
"session_supported": "session-less",
"is_ipmi": true
}
},
"12": {
"name": "RESERVED",
"is_valid": false,
"active_sessions": 0,
"channel_info": {
"medium_type": "reserved",
"protocol_type": "na",
"session_supported": "session-less",
"is_ipmi": true
}
},
"13": {
"name": "RESERVED",
"is_valid": false,
"active_sessions": 0,
"channel_info": {
"medium_type": "reserved",
"protocol_type": "na",
"session_supported": "session-less",
"is_ipmi": true
}
},
"14": {
"name": "SELF",
"is_valid": false,
"active_sessions": 0,
"channel_info": {
"medium_type": "ipmb",
"protocol_type": "ipmb-1.0",
"session_supported": "session-less",
"is_ipmi": true
}
},
"15": {
"name": "ipmi_kcs3",
"is_valid": true,
"active_sessions": 0,
"channel_info": {
"medium_type": "system-interface",
"protocol_type": "kcs",
"session_supported": "session-less",
"is_ipmi": true
}
}
}
@@ -0,0 +1,8 @@
{
"id": 32,
"revision": 1,
"addn_dev_support": 141,
"manuf_id": 7244,
"prod_id": 13905,
"aux": 0
}
@@ -0,0 +1,3 @@
OF_NAME=scm_fru
SYSFS_PATH=/sys/bus/i2c/devices/14-0051/eeprom
FRUID=0
@@ -0,0 +1,3 @@
OF_NAME=mb_fru
SYSFS_PATH=/sys/bus/i2c/devices/3-0051/eeprom
FRUID=1
@@ -0,0 +1,24 @@
FILESEXTRAPATHS:prepend:s6q := "${THISDIR}/${PN}:"
inherit obmc-phosphor-systemd
DEPENDS:append:s6q = " s6q-yaml-config"
EEPROMS_NAME_LIST = "bmc motherboard"
EEPROMFMT = "system/chassis/{0}"
EEPROM_ESCAPEDFMT = "system-chassis-{0}"
EEPROMS = "${@compose_list(d, 'EEPROMFMT', 'EEPROMS_NAME_LIST')}"
EEPROMS_ESCAPED = "${@compose_list(d, 'EEPROM_ESCAPEDFMT', 'EEPROMS_NAME_LIST')}"
ENVFMT = "obmc/eeproms/{0}"
SYSTEMD_ENVIRONMENT_FILE:${PN}:append:s6q := " ${@compose_list(d, 'ENVFMT', 'EEPROMS')}"
TMPL = "obmc-read-eeprom@.service"
TGT = "multi-user.target"
INSTFMT = "obmc-read-eeprom@{0}.service"
FMT = "../${TMPL}:${TGT}.wants/${INSTFMT}"
SYSTEMD_LINK:${PN}:append:s6q := " ${@compose_list(d, 'FMT', 'EEPROMS_ESCAPED')}"
IPMI_FRU_YAML:s6q="${STAGING_DIR_HOST}${datadir}/s6q-yaml-config/ipmi-fru-read.yaml"
IPMI_FRU_PROP_YAML:s6q="${STAGING_DIR_HOST}${datadir}/s6q-yaml-config/ipmi-extra-properties.yaml"
@@ -0,0 +1,9 @@
FILESEXTRAPATHS:prepend:s6q := "${THISDIR}/${PN}:"
DEPENDS:append:s6q = " s6q-yaml-config"
EXTRA_OEMESON:append:s6q = " \
-Dfru-yaml-gen=${STAGING_DIR_HOST}${datadir}/s6q-yaml-config/ipmi-fru-read.yaml \
-Dsensor-yaml-gen=${STAGING_DIR_HOST}${datadir}/s6q-yaml-config/ipmi-sensors.yaml \
-Dinvsensor-yaml-gen=${STAGING_DIR_HOST}${datadir}/s6q-yaml-config/ipmi-inventory-sensors.yaml \
"
@@ -0,0 +1,10 @@
{
"channels": [
{
"type": "me",
"slave-path": "/dev/ipmb-2",
"bmc-addr": 32,
"remote-addr": 44
}
]
}
@@ -0,0 +1,8 @@
FILESEXTRAPATHS:prepend:s6q := "${THISDIR}/${PN}:"
SRC_URI:append:s6q = " file://s6q-ipmb-channels.json"
do_install:append:s6q(){
install -m 0644 -D ${WORKDIR}/s6q-ipmb-channels.json \
${D}/${datadir}/ipmbbridge/ipmb-channels.json
}
@@ -0,0 +1 @@
RMCPP_IFACE:s6q = "${@bb.utils.contains("MACHINE_FEATURES", "bonding", "bond0", "${DEFAULT_RMCPP_IFACE}", d)}"
@@ -0,0 +1,26 @@
{
"leds": [
{
"group" : "bmc_booted",
"members" : [
{
"Name" : "bmc_heartbeat_n",
"Action" : "Blink",
"DutyOn" : 50,
"Period" : 1000
}
]
},
{
"group": "enclosure_identify",
"members": [
{
"Name": "fm_id_led_n",
"Action": "Blink",
"DutyOn": 50,
"Period": 250
}
]
}
]
}
@@ -0,0 +1,9 @@
FILESEXTRAPATHS:prepend:s6q := "${THISDIR}/${PN}:"
SRC_URI:append:s6q = " file://led-group-config.json"
PACKAGECONFIG:append:s6q = " use-lamp-test"
do_install:append:s6q() {
install -m 0644 ${WORKDIR}/led-group-config.json ${D}${datadir}/phosphor-led-manager/
}
@@ -0,0 +1,14 @@
PACKAGECONFIG:append:s6q = " sync-mac"
FILES:${PN}:append:s6q = " ${datadir}/network/config.json"
do_install:append:s6q() {
install -d ${D}${datadir}/network/
if ${@bb.utils.contains('MACHINE_FEATURES', 'bonding', 'true', 'false', d)};
then
echo '{"bond0":"bmc","eth0":"bmc","eth1":"bmc"}' \
> ${D}${datadir}/network/config.json
else
echo '{"eth0":"bmc"}' > ${D}${datadir}/network/config.json
fi
}
@@ -0,0 +1 @@
PACKAGECONFIG:append:s6q = " log-threshold log-watchdog send-to-logger log-alarm"
@@ -0,0 +1,88 @@
[
{
"Desc": {
"Name": "Temp_CPU0",
"SensorType": "temperature",
"MaxValue": 127.0,
"MinValue": -128.0
},
"Threshold": {
"CriticalHigh": 99,
"WarningHigh": 91
},
"Associations":
[
[
"chassis",
"all_sensors",
"/xyz/openbmc_project/inventory/system/board/S6Q_MB"
]
],
"Params":
{
"DbusParam":
[
{
"ParamName": "T0",
"Desc":
{
"Name": "DTS_CPU0",
"SensorType": "temperature"
}
},
{
"ParamName": "T1",
"Desc":
{
"Name": "Die_CPU0",
"SensorType": "temperature"
}
}
]
},
"Expression": "max(0,(T0 == T0) ? T0 : NULL,(T1 == T1) ? T1 : NULL)"
},
{
"Desc": {
"Name": "Temp_CPU1",
"SensorType": "temperature",
"MaxValue": 127.0,
"MinValue": -128.0
},
"Threshold": {
"CriticalHigh": 99,
"WarningHigh": 91
},
"Associations":
[
[
"chassis",
"all_sensors",
"/xyz/openbmc_project/inventory/system/board/S6Q_MB"
]
],
"Params":
{
"DbusParam":
[
{
"ParamName": "T2",
"Desc":
{
"Name": "DTS_CPU1",
"SensorType": "temperature"
}
},
{
"ParamName": "T3",
"Desc":
{
"Name": "Die_CPU1",
"SensorType": "temperature"
}
}
]
},
"Expression": "max(0,(T2 == T2) ? T2 : NULL,(T3 == T3) ? T3 : NULL)"
}
]
@@ -0,0 +1,7 @@
FILESEXTRAPATHS:prepend:s6q := "${THISDIR}/${PN}:"
SRC_URI:append:s6q = " file://virtual_sensor_config.json "
do_install:append:s6q() {
install -m 0644 -D ${WORKDIR}/virtual_sensor_config.json ${D}${datadir}/phosphor-virtual-sensor/
}
@@ -0,0 +1,24 @@
# Chassis Control Capabilities set defaut value
/xyz/openbmc_project/control/chassis_capabilities:
- Interface: xyz.openbmc_project.Control.ChassisCapabilities
Properties:
CapabilitiesFlags:
Default: 1
ChassisIntrusionEnabled:
Default: 'true'
ChassisFrontPanelLockoutEnabled:
Default: 'false'
ChassisNMIEnabled:
Default: 'false'
ChassisPowerInterlockEnabled:
Default: 'false'
FRUDeviceAddress:
Default: 32
SDRDeviceAddress:
Default: 32
SELDeviceAddress:
Default: 32
SMDeviceAddress:
Default: 32
BridgeDeviceAddress:
Default: 32
@@ -0,0 +1,5 @@
/xyz/openbmc_project/control/host0/power_restore_policy:
- Interface: xyz.openbmc_project.Control.Power.RestorePolicy
Properties:
PowerRestorePolicy:
Default: RestorePolicy::Policy::Restore
@@ -0,0 +1,7 @@
FILESEXTRAPATHS:prepend:s6q := "${THISDIR}/${PN}:"
SRC_URI:append:s6q = " file://chassis-capabilities.override.yml \
file://power-policy-set-default.override.yml \
"
PACKAGECONFIG:append:s6q = " boot_type"
@@ -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,16 @@
[Unit]
Description=Phosphor Watchdog
[Service]
ExecStart=/usr/bin/env phosphor-watchdog --continue --service=xyz.openbmc_project.Watchdog \
--path=/xyz/openbmc_project/watchdog/host0 \
--action_target=xyz.openbmc_project.State.Watchdog.Action.HardReset=phosphor-watchdog-host-reset.service \
--action_target=xyz.openbmc_project.State.Watchdog.Action.PowerOff=phosphor-watchdog-host-poweroff.service \
--action_target=xyz.openbmc_project.State.Watchdog.Action.PowerCycle=phosphor-watchdog-host-powercycle.service \
SyslogIdentifier=phosphor-watchdog
BusName=xyz.openbmc_project.Watchdog
Type=dbus
[Install]
WantedBy=basic.target
@@ -0,0 +1,8 @@
FILESEXTRAPATHS:prepend:s6q := "${THISDIR}/${PN}:"
SYSTEMD_OVERRIDE:${PN}:remove:s6q = "poweron.conf:phosphor-watchdog@poweron.service.d/poweron.conf"
SYSTEMD_SERVICE:${PN}:s6q = " phosphor-watchdog.service \
phosphor-watchdog-host-reset.service \
phosphor-watchdog-host-poweroff.service \
phosphor-watchdog-host-powercycle.service \
"