Patrick Venture | 2ff2ecc | 2018-11-09 18:27:28 -0800 | [diff] [blame] | 1 | HOMEPAGE = "http://github.com/openbmc/phosphor-ipmi-flash" |
| 2 | SUMMARY = "Phosphor OEM IPMI In-band Firmware Update over BLOB" |
| 3 | DESCRIPTION = "This package handles a series of OEM IPMI commands that implement the firmware update handler over the BLOB protocol." |
| 4 | PR = "r1" |
Patrick Venture | e4e8e7b | 2019-06-28 15:34:15 -0700 | [diff] [blame] | 5 | PV = "1.0+git${SRCPV}" |
Patrick Venture | 2ff2ecc | 2018-11-09 18:27:28 -0800 | [diff] [blame] | 6 | LICENSE = "Apache-2.0" |
| 7 | LIC_FILES_CHKSUM = "file://LICENSE;md5=86d3f3a95c324c9479bd8986968f4327" |
| 8 | |
| 9 | inherit autotools pkgconfig |
| 10 | inherit obmc-phosphor-ipmiprovider-symlink |
Andrew Geissler | a560e8e | 2019-07-08 19:51:12 +0000 | [diff] [blame] | 11 | inherit systemd |
Patrick Venture | 2ff2ecc | 2018-11-09 18:27:28 -0800 | [diff] [blame] | 12 | |
| 13 | DEPENDS += "autoconf-archive-native" |
| 14 | DEPENDS += "phosphor-ipmi-blobs" |
| 15 | DEPENDS += "phosphor-logging" |
| 16 | DEPENDS += "sdbusplus" |
Andrew Geissler | a560e8e | 2019-07-08 19:51:12 +0000 | [diff] [blame] | 17 | DEPENDS += "systemd" |
Patrick Venture | f0bb2a9 | 2019-03-07 10:51:53 -0800 | [diff] [blame] | 18 | DEPENDS += "ipmi-blob-tool" |
Patrick Venture | cb35b59 | 2019-05-03 10:35:28 -0700 | [diff] [blame] | 19 | DEPENDS += "pciutils" |
Patrick Venture | 2ff2ecc | 2018-11-09 18:27:28 -0800 | [diff] [blame] | 20 | |
Andrew Geissler | 67a224f | 2019-06-19 18:52:19 +0000 | [diff] [blame] | 21 | PACKAGECONFIG ?= "cleanup-delete" |
| 22 | PACKAGECONFIG[cleanup-delete] = "--enable-cleanup-delete, --disable-cleanup-delete" |
Patrick Venture | 1e8155c | 2019-06-28 19:28:28 -0700 | [diff] [blame] | 23 | # If using static-layout, reboot-update is a good option to handle updating. |
| 24 | PACKAGECONFIG[reboot-update] = "--enable-reboot-update, --disable-reboot-update" |
Patrick Venture | ba602d9 | 2019-07-19 14:07:22 -0700 | [diff] [blame] | 25 | |
| 26 | # Default options for supporting various flash types: |
| 27 | PACKAGECONFIG[static-bmc] = "--enable-static-layout, --disable-static-layout" |
| 28 | PACKAGECONFIG[ubitar-bmc] = "--enable-tarball-ubi, --disable-tarball-ubi" |
Andrew Geissler | a560e8e | 2019-07-08 19:51:12 +0000 | [diff] [blame] | 29 | PACKAGECONFIG[host-bios] = "--enable-host-bios, --disable-host-bios" |
Andrew Geissler | 67a224f | 2019-06-19 18:52:19 +0000 | [diff] [blame] | 30 | |
Patrick Venture | 7f113ef | 2019-07-15 09:39:43 -0700 | [diff] [blame] | 31 | # Hardware options to enable transmitting the data from the host. |
| 32 | PACKAGECONFIG[aspeed-p2a] = "--enable-aspeed-p2a, --disable-aspeed-p2a" |
| 33 | PACKAGECONFIG[aspeed-lpc] = "--enable-aspeed-lpc, --disable-aspeed-lpc" |
| 34 | PACKAGECONFIG[nuvoton-lpc] = "--enable-nuvoton-lpc, --disable-nuvoton-lpc" |
| 35 | |
Patrick Venture | f65a4e2 | 2019-05-15 12:19:16 -0700 | [diff] [blame] | 36 | EXTRA_OECONF = "--disable-tests --disable-build-host-tool" |
| 37 | |
Patrick Venture | 2fba5de | 2019-07-15 09:50:03 -0700 | [diff] [blame] | 38 | # Set this variable in your recipe to set it instead of using MAPPED_ADDRESS directly. |
| 39 | IPMI_FLASH_BMC_ADDRESS ?= "0" |
| 40 | EXTRA_OECONF_append = " MAPPED_ADDRESS=${IPMI_FLASH_BMC_ADDRESS}" |
| 41 | |
Patrick Venture | 2ff2ecc | 2018-11-09 18:27:28 -0800 | [diff] [blame] | 42 | S = "${WORKDIR}/git" |
| 43 | SRC_URI = "git://github.com/openbmc/phosphor-ipmi-flash" |
Andrew Geissler | a311152 | 2019-08-15 21:01:19 +0000 | [diff] [blame] | 44 | SRCREV = "c498caa44844220497086dee8a806c0417a93e9d" |
Andrew Geissler | a560e8e | 2019-07-08 19:51:12 +0000 | [diff] [blame] | 45 | |
| 46 | SYSTEMD_PACKAGES = "${PN}" |
| 47 | SYSTEMD_SERVICE_${PN} += "phosphor-ipmi-flash-bmc-prepare.target \ |
| 48 | phosphor-ipmi-flash-bmc-verify.target \ |
| 49 | phosphor-ipmi-flash-bmc-update.target" |
| 50 | |
| 51 | # If they enabled host-bios, add those three extra targets. |
| 52 | HOST_BIOS_TARGETS = "phosphor-ipmi-flash-bios-prepare.target \ |
| 53 | phosphor-ipmi-flash-bios-verify.target \ |
| 54 | phosphor-ipmi-flash-bios-update.target" |
| 55 | |
| 56 | SYSTEMD_SERVICE_${PN} += "${@bb.utils.contains('PACKAGECONFIG', 'host-bios', '${HOST_BIOS_TARGETS}', '', d)}" |
Patrick Venture | 2ff2ecc | 2018-11-09 18:27:28 -0800 | [diff] [blame] | 57 | |
| 58 | FILES_${PN}_append = " ${libdir}/ipmid-providers/lib*${SOLIBS}" |
| 59 | FILES_${PN}_append = " ${libdir}/blob-ipmid/lib*${SOLIBS}" |
| 60 | FILES_${PN}-dev_append = " ${libdir}/ipmid-providers/lib*${SOLIBSDEV} ${libdir}/ipmid-providers/*.la" |
| 61 | |
| 62 | BLOBIPMI_PROVIDER_LIBRARY += "libfirmwareblob.so" |
Andrew Geissler | 67a224f | 2019-06-19 18:52:19 +0000 | [diff] [blame] | 63 | BLOBIPMI_PROVIDER_LIBRARY += "${@bb.utils.contains('PACKAGECONFIG', 'cleanup-delete', 'libfirmwarecleanupblob.so', '', d)}" |
Patrick Venture | e21be19 | 2019-05-08 07:43:10 -0700 | [diff] [blame] | 64 | |
| 65 | do_configure[depends] += "virtual/kernel:do_shared_workdir" |