summaryrefslogtreecommitdiffstats
path: root/configure.ac
Commit message (Collapse)AuthorAgeFilesLines
* Move updatesymlinks to new vpnor featureAdriana Kobylak2019-10-251-0/+6
| | | | | | | | | | | | | | The updatesymlinks functionality is to support virtual pnor and it does not depend on the filesystem type. Move it to a new vpnor feature so that users can make use of this feature without being tied to UBI, for example on a eMMC that has a combined BMC+PNOR image. Tested: Verified that the witherspoon image contained the new script and service file and that it powered on to the host. Change-Id: Ic5e51dfde81718e5e285f010be67afbd58eac2e1 Signed-off-by: Adriana Kobylak <anoo@us.ibm.com>
* Move to new association interfaceJohn Wang2019-09-171-1/+1
| | | | | | | | | | | | | | | | | | | A new association interface is defined in phosphor-dbus-interfaces It would be nice to move the local version of the interface to the new one. The behavior of how association work is described here: https://github.com/openbmc/docs/blob/master/object-mapper.md#associations Partially resolves openbmc/openbmc#3584 Tested: See the org.openbmc.Associations interface has been replaced by the xyz one in /xyz/openbmc_project/software/version_id object and only when the version number is less than PNOR_MSL, "PNOR Minimum Ship Level NOT met" is reported. Signed-off-by: John Wang <wangzqbj@inspur.com> Change-Id: If4afeb69a9bd8bc494b77826f2ec2854a71f56f5
* Install services to systemd unit dirLei YU2019-03-141-0/+16
| | | | | | | | | | | Add configure and makefile rule to install system service units to systemd unit dir. Tested: Verify the service is install to /lib/systemd/system in openbmc environment. Change-Id: I620fe1f01ad315e4918d30fecdf165fd91fefe7b Signed-off-by: Lei YU <mine260309@gmail.com>
* Refactor: Split item_updater to common and ubiLei YU2019-03-071-0/+8
| | | | | | | | | | | | | | | | | | | | | | | The existing item_updater is highly coupled with ubifs. It will support static layout and ubi in future. So split the functions in to common ones and ubi specific ones, and move the ubi specific code in ubi dir. 1. Keep common functions and make them virtual for extension. createActiveAssociation() updateFunctionalAssociation() removeAssociation() erase() 2. Create ubi/item_updater_ubi and move other functions into it. 3. Change updateFunctionalAssociation() parameter for future use. To support static layout, a new item_updater_static will be written. Tested: On the last commit of the patch series, run code update and factory reset on Witherspoon and all work fine. Change-Id: I4cc55b31ee3f37c5b27168611305dee8ce02880a Signed-off-by: Lei YU <mine260309@gmail.com>
* build: pkg anti-pattern: use defaultsPatrick Venture2019-02-131-6/+3
| | | | | | | | Use the defaults in the pkg check where the default error message is sufficient to identify which package is missing. Change-Id: Id4ae96c559212f60721bd9a3af6fd3d7742e61ee Signed-off-by: Patrick Venture <venture@google.com>
* msl_verify: Read the functional version from D-BusAdriana Kobylak2018-11-021-0/+2
| | | | | | | | | | | | | | The VERSION partition may have a secure boot header, so the version string would not be the first line. Instead of adding logic to parse the VERSION partition and to protect against future changes, read the version string from D-Bus instead by querying the functional association. Tested: The functional version was read successfully. Change-Id: Icf0a9bd9f360ef9f0732579fa073f8661b8c57bd Signed-off-by: Adriana Kobylak <anoo@us.ibm.com>
* msl_verify: Initial commitAdriana Kobylak2018-10-171-0/+9
| | | | | | | | | Create a new binary that checks the msl (minimum ship level) of the PNOR and logs an error message if the version on the system is older. The msl can be specified via a config flag. Change-Id: I6f477400f7a8cf56557bd0caf5d6e08d73320028 Signed-off-by: Adriana Kobylak <anoo@us.ibm.com>
* Switch to C++17Adriana Kobylak2018-09-241-1/+1
| | | | | Change-Id: I804e86172696dd541290d4af33c6a893ae8f0506 Signed-off-by: Adriana Kobylak <anoo@us.ibm.com>
* Revert "Name reverse functional association "functional""Adriana Kobylak2018-05-021-1/+1
| | | | | | | | | | | | This reverts commit ee697121c78a262c456293b10c4f2d4e2873cff0. The functional association goes away after activating a new image (issue openbmc/openbmc#3038). The workaround is to keep the reverse association names the same for the active and functional ones until the issue is resolved. Change-Id: I1ce1440e4c612e0efb553695f05db8adea171a77 Signed-off-by: Adriana Kobylak <anoo@us.ibm.com>
* Make the name of the signature verify feature uniqueAdriana Kobylak2018-04-171-4/+4
| | | | | | | | | | | | | The verify_signature feature name is the same as the one used in the phosphor-software-manager repo which manages the BMC firmware updates. Change the name to make it different to be able to control enabling the feature individually via recipes, since enabling it on the phosphor recipe enables it for the pnor code as well (due to the recipe dependency on virtual-obmc-image-manager). Change-Id: I73e446dd6d5f0995132bc60403e08d16d07703bd Signed-off-by: Adriana Kobylak <anoo@us.ibm.com>
* Enabled PNOR signed image validationJayanth Othayoth2018-03-231-0/+4
| | | | | | | | | Enable signature validation during version activation based on the WANT_SIGNATURE_VERIFY flag. Change-Id: If8f4357553be9ed2fbcf86b4dddec768532a043a Signed-off-by: Jayanth Othayoth <ojayanth@in.ibm.com> Signed-off-by: Adriana Kobylak <anoo@us.ibm.com>
* Add support for signature verification routinesJayanth Othayoth2018-03-231-0/+23
| | | | | | | | | | Enabled high level logic flow for the PNOR signed image signature validation routines. Includes reading hash type, key type from Manifest file. Change-Id: I00280fff5a61291852c1f2d5f6fd8aec3dd62bf0 Signed-off-by: Jayanth Othayoth <ojayanth@in.ibm.com>
* Name reverse functional association "functional"Gunnar Mills2018-02-271-1/+1
| | | | | | | | | | | | | | | | | The current name "software_version" is not very useful. The GUI to determine if an image is functional is looking at /xyz/openbmc_project/software/<image id>/functional. The GUI could still do the same thing with "software_version" by looking for /xyz/openbmc_project/software/<image id>/software_version to determine if an image is functional, but that feels really wrong. Part of openbmc/openbmc#2945. Tested: Built an image with this change, flashed onto a Witherspoon and verified the "functional" association worked forward and reverse. Change-Id: Icdc396e5bb3c627211b14b6340c6e55da2a772ba Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
* Host updater: Remove the Object.Delete interface from functional versionMichael Tritz2017-11-281-0/+9
| | | | | | | | | | | | | | | | | | | | This commit enhances the host updater by dynamically removing the Object.Delete interface from a host activation that is currently running. Once the host isn't running anymore, the interface is re-added so that the activation may be deleted. Additionally, isVersionFunctional() from the parent updater is exposed, since this function is needed to determine whether a given activation is currently running on the host. Add the Delete interface to all interfaces when the item updater starts up, because the chassis state would be off initially, and in the case where it automatically powers on because the BMC rebooted while the host was on, the chassis property signal would cause the Delete interface to be removed. Change-Id: I4afcc1ebe2e8a3ce212b426749295e79b68cac62 Signed-off-by: Michael Tritz <mtritz@us.ibm.com>
* Create PNOR Functional AssociationGunnar Mills2017-09-271-0/+3
| | | | | | | | | Created the function updateFunctionalAssociation to update the functional association for the "running" PNOR image. This function will be called by the inotify code. Change-Id: I871624044fbb11800de4d13e6a4b174494c68f13 Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
* Switch FWD and REV association namesGunnar Mills2017-09-051-2/+2
| | | | | | | | The forward association should be inventory. The reverse association should be activation. Change-Id: I3ab94ca60290dfbc3b2cb4fe17f738f8bdaf96d1 Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
* Create active associationGunnar Mills2017-09-051-0/+3
| | | | | | | | | | Create an association between an active image and the active image's version object. This change includes code to remove the active association if the image is deleted. Change-Id: Id5b2d353d7df05854b035641765e1066d64a3ef5 Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
* Create an association to host inventory itemGunnar Mills2017-08-281-0/+4
| | | | | | | | | Create an association from /xyz/openbmc_project/software/<id> to /xyz/openbmc_project/inventory/system/chassis for Host software images. Change-Id: Ic0d690f86c164fd3441ad6475cce5e07208d899e Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
* Generate sdbusplus bindings for Associations.Saqib Khan2017-08-281-0/+2
| | | | | | | | | - Generate sdbusplus server bindings for the org.openbmc.Associations interface in the makefile. - Add YAML file that describes the org.openbmc.Associations interface. Change-Id: I496ef17433aeda520d3f2611d8582c5e9759601f Signed-off-by: Saqib Khan <khansa@us.ibm.com>
* Limit the number of Active pnor versionsSaqib Khan2017-08-191-0/+4
| | | | | | | | | | | | | | | | | | | - We need to limit the number of pnor versions because pnor chip has limited space. If we run out of space and the user tries another pnor code update then the update will fail. - Currently we can only hold two images on pnor at this point. As we continue to decrease the size of pnor image we will increment the number of active pnor chips we can hold. - This check will need to be removed once we have complete issue #1402 which will automatically monitor the flash usage and delete any image accordingly. Resolves openbmc/openbmc#2155 Change-Id: Id62ba8554fba1ddb78286f70b0c3482a7beb8a6b Signed-off-by: Saqib Khan <khansa@us.ibm.com>
* PNOR: Restore RedundancyPriority on resetMichael Tritz2017-07-301-1/+2
| | | | | | | | | | | | | | | | | | This commit extends the functionality of the PNOR software updater by preserving RedundancyPriority values through any kind of reset. This is accomplished by storing priority values in serial files in /var/lib/obmc/openpower-pnor-code-mgmt/ using the Cereal library. Each time a priority value is modified, the value in the corresponding version file is adjusted. When the item updater resets, it reads back the priority values from these files. Resolves openbmc/openbmc#2040 Change-Id: I908431801e541a1e5b39bcf49ae057f7e340eecc Signed-off-by: Michael Tritz <mtritz@us.ibm.com>
* PNOR: Restore version and activation dbus objects on BMC reboot.Saqib Khan2017-07-281-0/+2
| | | | | | | | | | | | | | - Read the /media/ dir for active pnor versions. Each active version has a pnor.toc inside /media/ which is used to recreate the version and activation objects. - version that matches the version inside "/var/lib/phosphor-software-manager/pnor/ro" is considered the current version and its priority is set to 0. Resolves openbmc/openbmc#1846 Change-Id: Ic3d22cc310fdd60d708a73ddc406d3fb0620845c Signed-off-by: Saqib Khan <khansa@us.ibm.com>
* item_updater: Use the Common.FilePath.Path to find the image filesAdriana Kobylak2017-05-311-5/+3
| | | | | | | | | The image manager implements the Common.FilePath.Path interface, make use of it to find the image files instead of hardcoding the path, since the updater shouldn't know/care where the images are. Change-Id: Ie9ec5982af1ec2ddd6d7a1b9e69d518520225ab5 Signed-off-by: Adriana Kobylak <anoo@us.ibm.com>
* Activation: Point active image to requested imageAdriana Kobylak2017-05-241-0/+17
| | | | | | | | | Once an image has been updated, point the current image to it. Closes openbmc/openbmc#1278 Change-Id: If21938283913d4b40cadf44952b2a530c9266812 Signed-off-by: Adriana Kobylak <anoo@us.ibm.com>
* Remove version codeGunnar Mills2017-05-051-5/+0
| | | | | | | | This code was moved to phosphor-bmc-code-mgmt in https://gerrit.openbmc-project.xyz/#/c/3647/ Change-Id: I0d9ed8b02a1ac8b0e795bf75a7be432c2ed64036 Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
* Activation: Create UBI volume on RequestedActivationAdriana Kobylak2017-04-271-0/+7
| | | | | | | | | When the RequestedActivation property is set to Active, call the ubimount service with the version id to create a ubi volume with the version id as its name. Change-Id: I0479cb7daa82c845ef87f319180f8c0e0d5535a5 Signed-off-by: Adriana Kobylak <anoo@us.ibm.com>
* ItemUpdater: Validate PNOR squashfs imageSaqib Khan2017-04-251-1/+5
| | | | | | | | | | | - Validate the image dir by checking its content. - Set Activation to "Ready" if validation passed or else set it to "Invalid". Resolves openbmc/openbmc#1356 Change-Id: Ica73ae5604e74db11cd58c223d82265309ea76a6 Signed-off-by: Saqib Khan <khansa@us.ibm.com>
* autotools: Silence warnings from autoreconfAndrew Jeffery2017-04-181-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously invoking ./bootstrap.sh would output: $ ./bootstrap.sh + AUTOCONF_FILES=Makefile.in aclocal.m4 ar-lib autom4te.cache compile config.guess config.h.in config.sub configure depcomp install-sh ltmain.sh missing *libtoo l test-driver + autoreconf -i libtoolize: putting auxiliary files in '.'. libtoolize: copying file './ltmain.sh' libtoolize: Consider adding 'AC_CONFIG_MACRO_DIRS([m4])' to configure.ac, libtoolize: and rerunning libtoolize and aclocal. libtoolize: Consider adding '-I m4' to ACLOCAL_AMFLAGS in Makefile.am. configure.ac:22: installing './compile' configure.ac:22: installing './config.guess' configure.ac:22: installing './config.sub' configure.ac:5: installing './install-sh' configure.ac:5: installing './missing' Makefile.am: installing './depcomp' parallel-tests: installing './test-driver' + echo Run "./configure ${CONFIGURE_FLAGS} && make" Run "./configure ${CONFIGURE_FLAGS} && make" Address the three lines: libtoolize: Consider adding 'AC_CONFIG_MACRO_DIRS([m4])' to configure.ac, libtoolize: and rerunning libtoolize and aclocal. libtoolize: Consider adding '-I m4' to ACLOCAL_AMFLAGS in Makefile.am. Change-Id: I0e4b4318ff5cd3775455e7c7514609060375f24d Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
* Read image version from the MANIFEST.Saqib Khan2017-04-091-3/+3
| | | | | | | | | According to Patrick, all information regarding the image must be read from the MANIFEST, such as version. Also we must never open/read pnor.toc. Change-Id: Icf9f83f9ec055de21e2cf13e4ab4ab4afafc2af7 Signed-off-by: Saqib Khan <khansa@us.ibm.com>
* ItemUpdater: Create dbus object with version idAdriana Kobylak2017-03-301-0/+10
| | | | | | | | | | | | | | | | Use the same version id as the version manager. For that query the object paths using the mapper and determine if an item updater object has already been created. Note: The mapper currently return the BMC version as well since the interface is the same. To avoid this, a Host-only interface can be used once those are added, and also an association once the association work is finalized. Closes: openbmc/openbmc#1277 Change-Id: I66711ac92a28b7f7ed37006ad6f40de86be1e54c Signed-off-by: Adriana Kobylak <anoo@us.ibm.com>
* Add gtestsGunnar Mills2017-03-291-1/+22
| | | | | | | | | Added gtests for getVersion() and getId() Resolves openbmc/openbmc#1276. Change-Id: I10a824ae3da426e901defc34fa7f3c6c6a8496d3 Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
* Determine the host software idGunnar Mills2017-03-291-0/+6
| | | | | | | | | | The id is determined by hashing the PNOR version. For now, assume the pnor partitions are located at /tmp/pnor. Part of openbmc/openbmc#1276. The PNOR version is read from pnor.toc Change-Id: Iddab7bb4ae5c350c60abf93057ddd997c97fa84c Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
* Create Activation dbus objectAdriana Kobylak2017-03-251-0/+3
| | | | | | | | | | | Monitor the creation of new software version dbus objects and create an activation dbus object SOFTWARE_OBJPATH/<ID>. Save them in a persistent map with the corresponding version id, add the real version id number to the map and to the dbus object path once that's available. Change-Id: I35c2f211bbefc44a066aafa1760f725399215e69 Signed-off-by: Adriana Kobylak <anoo@us.ibm.com>
* Add base support for PNOR code managementGunnar Mills2017-03-211-0/+37
This is the starting code needed to build the application. Change-Id: Ie2937ed6246b8646b9e5b4d09318bc4aa7b31c35 Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
OpenPOWER on IntegriCloud