summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNikita Kosenkov <NKosenkov@IBS.RU>2022-08-04 16:08:27 +0300
committerNikita Kosenkov <NKosenkov@IBS.RU>2022-08-04 16:08:27 +0300
commit12ae0ad61c1650b1961ca19f4070cb3c94963113 (patch)
tree8f21d0b6422c4b5e7e628afd9dd2048ad3669265
parentc5f93c2398511178c631564cc99a40890b73fa5d (diff)
downloadopenbmc-SILABMC-215.tar.xz
phosphor-dbus-monitor: add service and events policiesSILABMC-215
-rw-r--r--meta-ibs/meta-common/recipes-ibs/packagegroups/packagegroup-ibs-apps.bb2
-rw-r--r--meta-ibs/meta-common/recipes-phosphor/dbus/events-policy.bb17
-rw-r--r--meta-ibs/meta-common/recipes-phosphor/dbus/events-policy/config.yaml114
-rw-r--r--meta-ibs/meta-common/recipes-phosphor/dbus/phosphor-dbus-monitor-config.bbappend3
-rw-r--r--meta-ibs/meta-common/recipes-phosphor/dbus/phosphor-dbus-monitor_%.bbappend1
-rw-r--r--meta-ibs/meta-common/recipes-phosphor/dbus/snmp-policy.bb17
-rw-r--r--meta-ibs/meta-common/recipes-phosphor/dbus/snmp-policy/snmp-config.yaml18
7 files changed, 172 insertions, 0 deletions
diff --git a/meta-ibs/meta-common/recipes-ibs/packagegroups/packagegroup-ibs-apps.bb b/meta-ibs/meta-common/recipes-ibs/packagegroups/packagegroup-ibs-apps.bb
index 095170ad47..af6c06f601 100644
--- a/meta-ibs/meta-common/recipes-ibs/packagegroups/packagegroup-ibs-apps.bb
+++ b/meta-ibs/meta-common/recipes-ibs/packagegroups/packagegroup-ibs-apps.bb
@@ -49,6 +49,8 @@ RDEPENDS:${PN}-system = " \
intel-ipmi-oem \
phosphor-hostlogger \
phosphor-power-regulators \
+ phosphor-dbus-monitor \
+ phosphor-dbus-monitor-config \
${PN}-interface \
${PN}-cli \
peci-pcie \
diff --git a/meta-ibs/meta-common/recipes-phosphor/dbus/events-policy.bb b/meta-ibs/meta-common/recipes-phosphor/dbus/events-policy.bb
new file mode 100644
index 0000000000..3978b17245
--- /dev/null
+++ b/meta-ibs/meta-common/recipes-phosphor/dbus/events-policy.bb
@@ -0,0 +1,17 @@
+SUMMARY = "Event policy configuration for meta-witherspoon machines"
+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 := "${THISDIR}/${PN}:"
+
+SRC_URI += "file://config.yaml"
+
+do_install() {
+ install -D ${WORKDIR}/config.yaml ${D}${config_dir}/config.yaml
+}
+
+FILES:${PN} += "${config_dir}/config.yaml"
diff --git a/meta-ibs/meta-common/recipes-phosphor/dbus/events-policy/config.yaml b/meta-ibs/meta-common/recipes-phosphor/dbus/events-policy/config.yaml
new file mode 100644
index 0000000000..0d31afb2b6
--- /dev/null
+++ b/meta-ibs/meta-common/recipes-phosphor/dbus/events-policy/config.yaml
@@ -0,0 +1,114 @@
+- name: occpath group
+ class: group
+ group: path
+ members:
+ - meta: PATH
+ path: /org/open_power/control/occ0
+
+- name: occproctemp property
+ class: group
+ group: property
+ type: boolean
+ members:
+ - interface: org.open_power.OCC.Status
+ meta: PROPERTY
+ property: ThrottleProcTemp
+
+- name: occprocpower property
+ class: group
+ group: property
+ type: boolean
+ members:
+ - interface: org.open_power.OCC.Status
+ meta: PROPERTY
+ property: ThrottleProcPower
+
+- name: occmemtemp property
+ class: group
+ group: property
+ type: boolean
+ members:
+ - interface: org.open_power.OCC.Status
+ meta: PROPERTY
+ property: ThrottleMemTemp
+
+- name: watch occproctemp
+ class: watch
+ watch: property
+ paths: occpath group
+ properties: occproctemp property
+ callback: check occproctemp
+
+- name: watch occprocpower
+ class: watch
+ watch: property
+ paths: occpath group
+ properties: occprocpower property
+ callback: check occprocpower
+
+- name: watch occmemtemp
+ class: watch
+ watch: property
+ paths: occpath group
+ properties: occmemtemp property
+ callback: check occmemtemp
+
+- name: check occproctemp
+ class: condition
+ condition: count
+ paths: occpath group
+ properties: occproctemp property
+ defer: 1000us
+ callback: create occproctemp event
+ countop: '=='
+ countbound: 1
+ op: '=='
+ bound: true
+
+- name: check occprocpower
+ class: condition
+ condition: count
+ paths: occpath group
+ properties: occprocpower property
+ defer: 1000us
+ callback: create occprocpower event
+ countop: '=='
+ countbound: 1
+ op: '=='
+ bound: true
+
+- name: check occmemtemp
+ class: condition
+ condition: count
+ paths: occpath group
+ properties: occmemtemp property
+ defer: 1000us
+ callback: create occmemtemp event
+ countop: '=='
+ countbound: 1
+ op: '=='
+ bound: true
+
+- name: create occproctemp event
+ class: callback
+ callback: event
+ paths: occpath group
+ properties: occproctemp property
+ eventName: occ
+ eventMessage: "Processor throttled due to an over temperature condition."
+
+- name: create occprocpower event
+ class: callback
+ callback: event
+ paths: occpath group
+ properties: occprocpower property
+ eventName: occ
+ eventMessage: "Processor throttled due to reaching the power cap limit."
+
+- name: create occmemtemp event
+ class: callback
+ callback: event
+ paths: occpath group
+ properties: occmemtemp property
+ eventName: occ
+ eventMessage: "Memory throttled due to an over temperature condition."
diff --git a/meta-ibs/meta-common/recipes-phosphor/dbus/phosphor-dbus-monitor-config.bbappend b/meta-ibs/meta-common/recipes-phosphor/dbus/phosphor-dbus-monitor-config.bbappend
new file mode 100644
index 0000000000..5b7f8edf76
--- /dev/null
+++ b/meta-ibs/meta-common/recipes-phosphor/dbus/phosphor-dbus-monitor-config.bbappend
@@ -0,0 +1,3 @@
+
+PHOSPHOR_DBUS_MONITOR_CONFIGS:append = " events-policy"
+PHOSPHOR_DBUS_MONITOR_CONFIGS:append = " snmp-policy"
diff --git a/meta-ibs/meta-common/recipes-phosphor/dbus/phosphor-dbus-monitor_%.bbappend b/meta-ibs/meta-common/recipes-phosphor/dbus/phosphor-dbus-monitor_%.bbappend
new file mode 100644
index 0000000000..4fc41d0580
--- /dev/null
+++ b/meta-ibs/meta-common/recipes-phosphor/dbus/phosphor-dbus-monitor_%.bbappend
@@ -0,0 +1 @@
+FILESEXTRAPATHS:prepend := "${THISDIR}/${PN}:"
diff --git a/meta-ibs/meta-common/recipes-phosphor/dbus/snmp-policy.bb b/meta-ibs/meta-common/recipes-phosphor/dbus/snmp-policy.bb
new file mode 100644
index 0000000000..e0365a74c0
--- /dev/null
+++ b/meta-ibs/meta-common/recipes-phosphor/dbus/snmp-policy.bb
@@ -0,0 +1,17 @@
+SUMMARY = "snmp policy configuration for meta-ibm machines"
+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 := "${THISDIR}/${PN}:"
+
+SRC_URI += "file://snmp-config.yaml"
+
+do_install() {
+ install -D ${WORKDIR}/snmp-config.yaml ${D}${config_dir}/snmp-config.yaml
+}
+
+FILES:${PN} += "${config_dir}/snmp-config.yaml"
diff --git a/meta-ibs/meta-common/recipes-phosphor/dbus/snmp-policy/snmp-config.yaml b/meta-ibs/meta-common/recipes-phosphor/dbus/snmp-policy/snmp-config.yaml
new file mode 100644
index 0000000000..a168bde3f5
--- /dev/null
+++ b/meta-ibs/meta-common/recipes-phosphor/dbus/snmp-policy/snmp-config.yaml
@@ -0,0 +1,18 @@
+- name: errorlog path group
+ class: group
+ group: path
+ members:
+ - meta: PATH
+ path: /xyz/openbmc_project/logging
+
+- name: pathwatch errorlog
+ class: pathwatch
+ pathwatch: path
+ paths: errorlog path group
+ pathcallback: create errorlog trap
+
+- name: create errorlog trap
+ class: pathcallback
+ pathcallback: eventpath
+ paths: errorlog path group
+ eventType: ErrorTrap