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,28 @@
SUMMARY = "BIOS BMC SMM Error Logger"
DESCRIPTION = "Allows BIOS in SMM to log errors to the BMC"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=e3fc50a88d0a364313df4b21ef20c29e"
DEPENDS += " \
boost \
fmt \
stdplus \
systemd \
nlohmann-json \
libbej \
sdbusplus \
phosphor-dbus-interfaces \
"
SRCREV = "bbe408c8ea28e88e43795d9142f6f5b79045e93a"
PV = "0.1+git${SRCPV}"
PR = "r1"
SRC_URI = "git://github.com/openbmc/bios-bmc-smm-error-logger;branch=main;protocol=https"
S = "${WORKDIR}/git"
SYSTEMD_SERVICE:${PN} += "xyz.openbmc_project.bios_bmc_smm_error_logger.service"
inherit meson pkgconfig systemd
EXTRA_OEMESON = " \
-Dtests=disabled \
"
@@ -0,0 +1,19 @@
SUMMARY = "FFDC collector script"
DESCRIPTION = "Command line tool to collect and tar up debug data"
DEPENDS += "systemd"
PV = "1.0+git${SRCPV}"
PR = "r1"
S = "${WORKDIR}/git"
do_install() {
install -d ${D}${bindir}
install -m 0755 ffdc \
${D}${bindir}/ffdc
}
RDEPENDS:${PN} += " \
${VIRTUAL-RUNTIME_base-utils} \
"
require recipes-phosphor/dump/phosphor-debug-collector.inc
@@ -0,0 +1,64 @@
SUMMARY = "Phosphor Host logger"
DESCRIPTION = "Save log messages from host's console to the persistent storage."
HOMEPAGE = "https://github.com/openbmc/phosphor-hostlogger"
# License info
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=e3fc50a88d0a364313df4b21ef20c29e"
# Dependencies
DEPENDS += " \
phosphor-logging \
zlib \
"
SRCREV = "47734e2efee41dd22252be104045240c044dbc0b"
PV = "1.0+git${SRCPV}"
PR = "r1"
SRC_URI = "git://github.com/openbmc/phosphor-hostlogger;branch=master;protocol=https"
# Source code repository
S = "${WORKDIR}/git"
# Systemd service template
SYSTEMD_PACKAGES = "${PN}"
SYSTEMD_SERVICE:${PN} = "hostlogger@.service"
# Preset systemd units
SYSTEMD_SERVICE:${PN} += "${@'${CUSTOM_SERVICES}' if len('${CUSTOM_SERVICES}') \
else '${DEFAULT_SERVICE}'}"
inherit pkgconfig meson
inherit systemd
# Disable unit tests
EXTRA_OEMESON:append = " -Dtests=disabled"
RDEPENDS:${PN} += "obmc-console"
RRECOMMENDS:${PN} += "phosphor-debug-collector"
# Default service instance to install (single-host mode)
DEFAULT_INSTANCE = "ttyVUART0"
DEFAULT_SERVICE = "hostlogger@${DEFAULT_INSTANCE}.service"
# Multi-host mode setup - list of configuration files to install, can be added
# via SRC_URI in a bbappend. The file name is the name of the service instance,
# which should match the corresponding instance of the obmc-console service.
CUSTOM_CONFIGS = "${@custom_configs('${WORKDIR}')}"
CUSTOM_SERVICES = "${@custom_services('${CUSTOM_CONFIGS}')}"
# Gets list of custom config files in a directory
def custom_configs(workdir):
if os.path.exists(workdir):
return ' '.join([f for f in os.listdir(workdir) if f.endswith('.conf')])
# Get list of custom service instances
def custom_services(configs):
return ' '.join(['hostlogger@' + i.replace('.conf', '.service') \
for i in configs.split()])
do_install:append() {
# Install config files
if [ -n "${CUSTOM_CONFIGS}" ]; then
for CONFIG_FILE in ${CUSTOM_CONFIGS}; do
install -Dm 0644 ${WORKDIR}/${CONFIG_FILE} \
${D}${sysconfdir}/hostlogger/${CONFIG_FILE}
done
else
install -Dm 0644 ${S}/default.conf \
${D}${sysconfdir}/hostlogger/${DEFAULT_INSTANCE}.conf
fi
}
@@ -0,0 +1,18 @@
SUMMARY = "Generated callout information for phosphor-logging"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
PROVIDES += "virtual/phosphor-logging-callouts"
PR = "r1"
SRC_URI += "file://callouts.yaml"
S = "${WORKDIR}"
inherit phosphor-logging
inherit native
do_install() {
DEST=${D}${callouts_datadir}
install -d ${DEST}
install callouts.yaml ${DEST}
}
@@ -0,0 +1 @@
/sys/devices/device: /system/chassis/motherboard/device
@@ -0,0 +1,24 @@
SUMMARY = "Generated callout information for phosphor-logging"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
DEPENDS += " \
mrw-native \
mrw-perl-tools-native \
"
PROVIDES += "virtual/phosphor-logging-callouts"
PR = "r1"
S = "${WORKDIR}"
inherit phosphor-logging
inherit mrw-xml
inherit native
do_install() {
DEST=${D}${callouts_datadir}
install -d ${DEST}
${bindir}/perl-native/perl \
${bindir}/gen_callouts.pl \
-m ${mrw_datadir}/${MRW_XML} \
-o ${DEST}/callouts.yaml
}
@@ -0,0 +1,85 @@
SUMMARY = "Phosphor OpenBMC event and error logging"
DESCRIPTION = "An error and event log daemon application, and \
supporting tools for OpenBMC."
HOMEPAGE = "https://github.com/openbmc/phosphor-logging"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=e3fc50a88d0a364313df4b21ef20c29e"
DEPENDS += "systemd"
DEPENDS += "${PYTHON_PN}-mako-native"
DEPENDS += "${PYTHON_PN}-pyyaml-native"
DEPENDS += "${PYTHON_PN}-native"
DEPENDS += "${PYTHON_PN}-sdbus++-native"
DEPENDS += "sdbusplus"
DEPENDS += "phosphor-dbus-interfaces"
DEPENDS += "virtual/phosphor-logging-callouts"
DEPENDS += "libcereal"
DEPENDS += "sdeventplus"
DEPENDS += "packagegroup-obmc-yaml-providers"
DEPENDS += "dbus"
SRCREV = "52ee3a4f84a91bcd03de377452ff89d4b325317c"
PACKAGECONFIG ??= ""
PACKAGECONFIG[openpower-pels] = " \
-Dopenpower-pel-extension=enabled, \
-Dopenpower-pel-extension=disabled, \
nlohmann-json cli11 libpldm python3, \
python3, \
"
PV = "1.0+git${SRCPV}"
PR = "r1"
SRC_URI = "git://github.com/openbmc/phosphor-logging;branch=master;protocol=https"
SYSTEMD_PACKAGES = "${LOGGING_PACKAGES}"
S = "${WORKDIR}/git"
inherit pkgconfig meson
inherit python3native
inherit obmc-phosphor-dbus-service
inherit phosphor-logging
inherit phosphor-dbus-yaml
def get_info_cap(d):
flash_size = int(d.getVar('FLASH_SIZE') or 0)
if flash_size <= 32768:
return "10"
elif flash_size <= 65536:
return "128"
else:
return "256"
ERR_INFO_CAP ??= "${@get_info_cap(d)}"
ERR_INFO_CAP:df-phosphor-mmc ?= "256"
EXTRA_OEMESON = " \
-Dtests=disabled \
-Dyamldir=${STAGING_DIR_TARGET}${yaml_dir} \
-Dcallout_yaml=${STAGING_DIR_NATIVE}${callouts_datadir}/callouts.yaml \
-Derror_info_cap=${ERR_INFO_CAP} \
"
FILES:${PN}-test = "${bindir}/*-test"
FILES:${PN}-base += " \
${datadir}/dbus-1 \
${bindir}/phosphor-log-manager \
${libdir}/libphosphor_logging.so.* \
${datadir}/dbus-1/system-services/xyz.openbmc_project.Logging.service \
"
FILES:phosphor-rsyslog-config += " \
${bindir}/phosphor-rsyslog-conf \
"
ALLOW_EMPTY:${PN} = "1"
USERADD_PACKAGES = "${PN}-base"
PACKAGE_BEFORE_PN = "${PN}-test"
# Package configuration
LOGGING_PACKAGES = " \
${PN}-base \
phosphor-rsyslog-config \
"
PACKAGE_BEFORE_PN += "${LOGGING_PACKAGES}"
DBUS_PACKAGES = "${LOGGING_PACKAGES}"
GROUPADD_PARAM:${PN}-base = "-r phosphor-logging"
DBUS_SERVICE:${PN}-base += "xyz.openbmc_project.Logging.service"
DBUS_SERVICE:phosphor-rsyslog-config += "xyz.openbmc_project.Syslog.Config.service"