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,23 @@
SUMMARY = "eCMD plugin with pdbg backend"
DESCRIPTION = "The glue code necessary for pdbg to be used as an eCMD plugin"
PR = "r1"
PV = "1.0+git${SRCPV}"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=34400b68072d710fecd0a2940a0d1658"
inherit meson
inherit pkgconfig
SRC_URI = "git://git@github.com/open-power/ecmd-pdbg.git;branch=master;protocol=https"
SRCREV = "349e04048409b4a619f4bc979aa5dd76e2bbc665"
S = "${WORKDIR}/git"
DEPENDS = "pdbg zlib libyaml ipl"
FILES:${PN} += "${prefix}/help"
EXTRA_OEMESON = " \
-Dchip=p10 \
"
@@ -0,0 +1,36 @@
SUMMARY = "eCMD"
DESCRIPTION = "eCMD is a hardware access API for IBM Systems"
LICENSE= "Apache-2.0"
LIC_FILES_CHKSUM = "file://${S}/NOTICE;md5=fee220301a2af3faf8f211524b4248ea"
SRC_URI = "git://github.com/open-power/eCMD.git;branch=ecmd15;protocol=https"
SRCREV = "72b925d4fabc8bff71d56f7a5ec7e3f0730f8f06"
DEPENDS += "zlib"
SRC_URI += "file://croserver.service"
S = "${WORKDIR}/git"
inherit python3native
DEPENDS += "${PYTHON_PN}-distro-native"
do_configure() {
LD="${CXX}" ${PYTHON} ${S}/config.py \
--without-swig --output-root ${B} --target obj \
--extensions "cmd cip" --build-verbose
}
do_compile() {
cd ${S}/dllNetwork/server
oe_runmake
}
do_install() {
install -d ${D}${bindir}
install -m 0755 out_obj/lib/server1p ${D}${bindir}/croserver
install -d ${D}${systemd_system_unitdir}
install -m 0644 ${WORKDIR}/croserver.service ${D}${systemd_system_unitdir}/
}
FILES:${PN} += "${systemd_system_unitdir}/croserver.service"
@@ -0,0 +1,12 @@
[Unit]
Description=Cronus Server
Documentation=https://github.com/open-power/eCMD/
After=network.service
[Service]
Type=simple
ExecStart=/usr/bin/croserver
Restart=on-failure
ProtectHome=yes
ProtectSystem=full
RestrictAddressFamilies=AF_INET AF_INET6
@@ -0,0 +1,61 @@
SUMMARY = "eCMD"
DESCRIPTION = "eCMD is a hardware access API for POWER Systems"
LICENSE= "Apache-2.0"
LIC_FILES_CHKSUM = "file://${S}/NOTICE;md5=fee220301a2af3faf8f211524b4248ea"
SRC_URI = "git://github.com/open-power/eCMD.git;branch=ecmd15;protocol=https"
SRCREV = "15e382180d49f7ea4117ccc341ca91e361721fd4"
inherit python3native
DEPENDS = "zlib"
S = "${WORKDIR}/git"
export LD="${CXX}"
export SLDFLAGS="${LDFLAGS}"
# use native config.py to build required ecmd extensions
do_configure() {
${S}/config.py --without-swig --without-python --without-python3 --without-perl \
--without-pyecmd --install-path ${D}${prefix} --output-root ${B} --target ${TARGET_ARCH} \
--extensions "cmd cip"
}
do_compile() {
oe_runmake all
}
do_install() {
oe_runmake install
# we don't need the target scripts or ecmd setup
rm ${D}${bindir}/target.* ${D}${bindir}/ecmdsetup.pl
# ecmd installs to atypical places in the filesystem.
# move all the installed files to more conventional directories.
install -d ${D}${includedir} ${D}${datadir}/${BPN}/help ${D}${bindir} ${D}${libdir}
mv ${D}${prefix}/help/** ${D}${datadir}/${BPN}/help
mv ${D}${prefix}/${TARGET_ARCH}/bin/** ${D}${bindir}
mv ${D}${prefix}/${TARGET_ARCH}/lib/** ${D}${libdir}
rm ${D}${bindir}/ecmdVersion
rmdir ${D}${prefix}/help \
${D}${prefix}/${TARGET_ARCH}/lib \
${D}${prefix}/${TARGET_ARCH}/bin \
${D}${prefix}/${TARGET_ARCH}/perl \
${D}${prefix}/${TARGET_ARCH}
}
# ecmd makefile assumes that dependencies are built from left to right.
PARALLEL_MAKE = ""
# ecmd doesn't have proper library versioning
FILES:${PN}-dev:remove = "${libdir}/lib*.so"
FILES:${PN} += "${libdir}/lib*.so"
RDEPENDS:${PN}-bin = "libecmd"
# This allows someone to easily use ecmd bins, even if you dont want them.
PACKAGE_BEFORE_PN = "libecmd-bin"
FILES:${PN}-bin += "${bindir}"
+24
View File
@@ -0,0 +1,24 @@
EKB_BRANCH = "main-p10"
EKB_URI = "git://git@github.com/open-power/pub-ekb;branch=${EKB_BRANCH};protocol=https"
EKB_REV = "7fd7e4d6c66d6ee0aa863ea879c106e86099eb10"
REQ_ATTRS_XMLS = "hwpf/fapi2/xml/attribute_info/chip_attributes.xml \
hwpf/fapi2/xml/attribute_info/common_attributes.xml \
hwpf/fapi2/xml/attribute_info/scratch_attributes.xml \
hwpf/fapi2/xml/attribute_info/system_attributes.xml \
hwpf/fapi2/xml/attribute_info/unit_attributes.xml \
chips/p10/procedures/xml/attribute_info/p10_bars_attributes.xml \
chips/p10/procedures/xml/attribute_info/p10_chip_ec_attributes.xml \
chips/p10/procedures/xml/attribute_info/p10_clock_attributes.xml \
chips/p10/procedures/xml/attribute_info/p10_freq_attributes.xml \
chips/p10/procedures/xml/attribute_info/p10_hcode_image_build_attributes.xml \
chips/p10/procedures/xml/attribute_info/p10_ipl_attributes.xml \
chips/p10/procedures/xml/attribute_info/p10_ipl_customize_attributes.xml \
chips/p10/procedures/xml/attribute_info/p10_memory_bars_attributes.xml \
chips/p10/procedures/xml/attribute_info/p10_nest_attributes.xml \
chips/p10/procedures/xml/attribute_info/p10_pervasive_attributes.xml \
chips/p10/procedures/xml/attribute_info/p10_qme_attributes.xml \
chips/p10/procedures/xml/attribute_info/p10_runn_attributes.xml \
chips/p10/procedures/xml/attribute_info/p10_sbe_load_bootloader_attributes.xml \
chips/p10/procedures/xml/attribute_info/p10_sbe_attributes.xml \
chips/p10/procedures/xml/attribute_info/pm_plat_attributes.xml"
+25
View File
@@ -0,0 +1,25 @@
SUMMARY = "To get required hardware procedure attribute xml files"
DESCRIPTION = "Copy all the required hardware procedures attributes xml file \
with respective directory structures"
PR = "r1"
PV = "1.0+git${SRCPV}"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://${S}/LICENSE_PROLOG;md5=d8e5f403c98fd80dcea90b9cc8cd083c"
require ekb.inc
SRC_URI = "${EKB_URI}"
SRCREV = "${EKB_REV}"
S = "${WORKDIR}/git"
BBCLASSEXTEND = "native"
do_install() {
mkdir -p ${D}${datadir}/${BPN}
# Copying all required hwp's attributes xml file with respective directory structures
(cd ${S} && cp --parents ${REQ_ATTRS_XMLS} ${D}${datadir}/${BPN})
}
+17
View File
@@ -0,0 +1,17 @@
SUMMARY = "Tools for manipulating FFS flash images."
DESCRIPTION = "FFS is the FSP Flash File Structure which is also currently \
used on OpenPOWER machines for the flash layout."
HOMEPAGE = "https://github.com/open-power/ffs"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://LICENSE;md5=34400b68072d710fecd0a2940a0d1658"
inherit autotools pkgconfig
ALLOW_EMPTY:${PN} = "1"
PACKAGE_BEFORE_PN += "${PN}-ecc ${PN}-deprecated"
FILES:${PN}-ecc = "${bindir}/ecc"
FILES:${PN}-deprecated = "${bindir}"
BBCLASSEXTEND = "native nativesdk"
@@ -0,0 +1,8 @@
require ffs.inc
PV = "v0.1.0+git${SRCPV}"
SRCREV = "3ec70fbc458e32eef0d0b1de79688b4dc48cbd57"
SRC_URI = "git://github.com/open-power/ffs.git;branch=master;protocol=https"
S = "${WORKDIR}/git"
@@ -0,0 +1,18 @@
SUMMARY = "FSI debug tool"
DESCRIPTION = "fsidbg is a tool to access remote FSI engines and perform client driver operations"
LICENSE = "GPLv3"
LIC_FILES_CHKSUM = "file://${S}/LICENSE;md5=84dcc94da3adb52b53ae4fa38fe49e5d"
SRC_URI = "git://github.com/eddiejames/fsidbg.git;branch=master;protocol=https"
SRCREV = "dfe278065c877724242dfae15a4c627fd2e3611c"
PV = "git${SRCREV}"
S = "${WORKDIR}/git"
do_install() {
install -d ${D}${bindir}
install -m 0755 fsidbg ${D}${bindir}
}
TARGET_CC_ARCH += "${LDFLAGS}"
@@ -0,0 +1,19 @@
HOMEPAGE = "https://github.com/open-power/guard"
SUMMARY = "Guard the faulty components"
DESCRIPTION = "Provide a way to guard the faulty component from the system"
PR = "r1"
PV = "1.0+git${SRCPV}"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://${S}/LICENSE;md5=86d3f3a95c324c9479bd8986968f4327"
inherit pkgconfig meson
S = "${WORKDIR}/git"
SRC_URI = "git://git@github.com/open-power/guard;branch="main";protocol=https"
SRCREV = "e000b571c82e854180ddcbda3b76754341c72618"
DEPENDS = "cli11"
PACKAGECONFIG ??= "${@bb.utils.filter('MACHINE_FEATURES', 'phal', d)}"
PACKAGECONFIG[phal] = "-Ddevtree=enabled, -Ddevtree=disabled, pdata pdbg"
+23
View File
@@ -0,0 +1,23 @@
HOMEPAGE = "https://github.com/open-power/ipl/"
SUMMARY = "Initial Program Load steps"
DESCRIPTION = "Provides infrastructure to run istep"
PR = "r1"
PV = "1.0+git${SRCPV}"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://${S}/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
inherit autotools pkgconfig
S = "${WORKDIR}/git"
SRC_URI = "git://git@github.com/open-power/ipl;branch="main";protocol=https"
SRCREV = "da64b07adeb2a234c47343642c43f8aab96904a2"
DEPENDS = " \
libekb pdbg autoconf-archive guard pdata \
"
RDEPENDS:${PN} = "phal-devtree"
EXTRA_OECONF = "CHIP=p10 --enable-libphal"
@@ -0,0 +1,27 @@
HOMEPAGE = "https://github.com/open-power/libekb_p10"
SUMMARY = "Hardware Procedure Framework"
DESCRIPTION = "Provides infrastructure to run hardware procedures"
PR = "r1"
PV = "1.0+git${SRCPV}"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://${S}/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
S = "${WORKDIR}/git"
require recipes-bsp/ekb/ekb.inc
inherit autotools
inherit python3native
inherit perlnative
SRCREV_FORMAT = "libekb_ekb"
SRCREV_libekb = "b62ed7865055145593cc05a3c654dddc5dcbc704"
SRCREV_ekb = "${EKB_REV}"
SRC_URI = "git://git@github.com/open-power/libekb_p10;branch=main;name=libekb;protocol=https \
${EKB_URI};name=ekb;destsuffix=git/ekb \
"
DEPENDS = "pdbg libxml-simple-perl-native"
+9
View File
@@ -0,0 +1,9 @@
#!/bin/sh
# Command line debug tools like pdbg and ecmd requires
# PDBG_DTB environment variable.
# attributes tool required PDBG_DTB, PDATA_INFODB and PDATA_ATTR_OVERRIDE
export PDBG_DTB=/var/lib/phosphor-software-manager/pnor/rw/DEVTREE
export PDATA_INFODB=/usr/share/pdata/attributes_info.db
export PDATA_ATTR_OVERRIDE=/tmp/devtree_attr_override
@@ -0,0 +1,28 @@
HOMEPAGE = "https://github.com/open-power/pdata/"
SUMMARY = "POWER Host data management"
DESCRIPTION = "Devicetree based POWER host data management"
PR = "r1"
PV = "1.0+git${SRCPV}"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://${S}/LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
S = "${WORKDIR}/git"
inherit autotools \
perlnative
SRC_URI = "git://git@github.com/open-power/pdata;branch="main";protocol=https"
SRCREV = "298b7970fb2268ea1e2de7bfc7db338243dc7fc3"
DEPENDS = "pdbg \
libxml-simple-perl-native \
libxml-libxml-perl-native \
ekb-native \
autoconf-archive \
dtc-native"
PDATA_CONFARG = "CHIP=p10"
EXTRA_OECONF = "--enable-gen_attrsinfo ${PDATA_CONFARG}"
EXTRA_OEMAKE = "EKB=${STAGING_DATADIR_NATIVE}/ekb/"
@@ -0,0 +1,22 @@
SUMMARY = "Tools and libraries to manage the phal devicetree"
DESCRIPTION = "phal(power hardware abstraction layer) devicetree data \
modelling mainly includes the host hardware topology and attributes, \
which includes the configuration data"
PR = "r1"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
PDATA_DTB_PATH="${datadir}/pdata"
FILES:${PN} += "${PDATA_DTB_PATH}"
do_install() {
DTB_FILE_ENV=power-target.sh
DTB_FILE_CONF_PATH=${D}${PDATA_DTB_PATH}
install -d ${DTB_FILE_CONF_PATH}
install -m 744 ${THISDIR}/files/${DTB_FILE_ENV} ${DTB_FILE_CONF_PATH}/${DTB_FILE_ENV}
install -d ${D}${sysconfdir}/profile.d
ln -s ${PDATA_DTB_PATH}/${DTB_FILE_ENV} ${D}${sysconfdir}/profile.d/${DTB_FILE_ENV}
}
@@ -0,0 +1,15 @@
SUMMARY = "PowerPC FSI Debugger"
DESCRIPTION = "pdbg allows JTAG-like debugging of the host POWER processors"
LICENSE = "Apache-2.0"
LIC_FILES_CHKSUM = "file://${S}/COPYING;md5=3b83ef96387f14655fc854ddc3c6bd57"
SRC_URI = "git://github.com/open-power/pdbg.git;branch=master;protocol=https"
SRCREV = "3a21a79267bc5faa9e4bc56dc3124be610e9d475"
DEPENDS += "dtc-native"
S = "${WORKDIR}/git"
inherit autotools
BBCLASSEXTEND = "native"
@@ -0,0 +1,5 @@
SUMMARY = "gard record tool for OpenPower"
DESCRIPTION = "gard record tool for OpenPower machines"
require skiboot.inc
EXTRA_OEMAKE:append = " PFLASH_VERSION=${PV} GARD_VERSION=${PV}"
@@ -0,0 +1,8 @@
SUMMARY = "pflash programmer for OpenPower"
DESCRIPTION = "pflash firmware programming tool for OpenPower machines"
require skiboot.inc
EXTRA_OEMAKE:append = " PFLASH_VERSION=${PV} LINKAGE=dynamic"
#TODO: openbmc/openbmc#1361 - Fix GNU_HASH warnings in pflash
TARGET_CC_ARCH += "${LDFLAGS}"
@@ -0,0 +1,32 @@
HOMEPAGE = "https://github.com/open-power"
LICENSE = "Apache-2.0"
SRC_URI += "git://github.com/open-power/skiboot.git;branch=skiboot-6.5.x;protocol=https"
FILESEXTRAPATHS:prepend := "${THISDIR}/skiboot:"
LIC_FILES_CHKSUM = "file://${S}/LICENCE;md5=3b83ef96387f14655fc854ddc3c6bd57"
SRCREV = "aff9301bb341b5387228e82036a7d72e519d8855"
PV = "6.5.1+git${SRCPV}"
S = "${WORKDIR}/git"
EXTRA_OEMAKE = "CROSS_COMPILE=${TARGET_PREFIX} SKIBOOT_VERSION=${PV} V=1"
SKIBOOT_SUBDIR ?= "external/${PN}"
do_compile() {
oe_runmake -C ${SKIBOOT_SUBDIR} all
}
# TODO: remove PREFIX=$prefix when updating to a version that has
# http://patchwork.ozlabs.org/patch/923741/ is merged upstream
do_install() {
oe_runmake -C ${SKIBOOT_SUBDIR} install DESTDIR=${D} prefix=/usr PREFIX=$prefix
}
# libflash.so is a SONAME and is strongly required in the production
INSANE_SKIP:${PN}:append = "dev-so"
FILES_SOLIBSDEV = ""
FILES:${PN}:append = " ${libdir}/libflash.so"