<feed xmlns='http://www.w3.org/2005/Atom'>
<title>openpower-pnor-code-mgmt/ubi, branch master</title>
<subtitle>OpenPOWER PNOR code management utility sources</subtitle>
<id>https://git.raptorcs.com/git/openpower-pnor-code-mgmt/atom?h=master</id>
<link rel='self' href='https://git.raptorcs.com/git/openpower-pnor-code-mgmt/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/openpower-pnor-code-mgmt/'/>
<updated>2019-10-28T19:11:08+00:00</updated>
<entry>
<title>Host.Updater.service: Move dependency on ubi service to the ubi service</title>
<updated>2019-10-28T19:11:08+00:00</updated>
<author>
<name>Adriana Kobylak</name>
<email>anoo@us.ibm.com</email>
</author>
<published>2019-10-28T18:31:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/openpower-pnor-code-mgmt/commit/?id=59d5657643c1cd24de579867abff1dcfa54d3803'/>
<id>urn:sha1:59d5657643c1cd24de579867abff1dcfa54d3803</id>
<content type='text'>
The org.open_power.Software.Host.Updater.service is a service common to the
static and ubi layout, but it had a dependency on a ubi service. It doesn't
cause a failure on the static layout because the dependency is a Wants vs
a Required, but it should not be there. Move the dependency instead to the
ubi service.

Tested: Verified on witherspoon that the
org.open_power.Software.Host.Updater.service started followed by the
obmc-flash-bios-ubipatch.service as it did before.

Change-Id: I9c850e312d0b11faaf2a08db6b3ccb17cdfcbcb6
Signed-off-by: Adriana Kobylak &lt;anoo@us.ibm.com&gt;
</content>
</entry>
<entry>
<title>Move updatesymlinks to new vpnor feature</title>
<updated>2019-10-25T14:20:20+00:00</updated>
<author>
<name>Adriana Kobylak</name>
<email>anoo@us.ibm.com</email>
</author>
<published>2019-10-08T16:35:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/openpower-pnor-code-mgmt/commit/?id=f3dfe65de8487364c21b7b49396cf912821ea339'/>
<id>urn:sha1:f3dfe65de8487364c21b7b49396cf912821ea339</id>
<content type='text'>
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 &lt;anoo@us.ibm.com&gt;
</content>
</entry>
<entry>
<title>Code Update: Host ApplyTime support</title>
<updated>2019-08-09T20:45:06+00:00</updated>
<author>
<name>Jayashankar Padath</name>
<email>jayashankar.padath@in.ibm.com</email>
</author>
<published>2019-07-24T11:16:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/openpower-pnor-code-mgmt/commit/?id=4d3d91262bcaf1afc2eee54145052106644410be'/>
<id>urn:sha1:4d3d91262bcaf1afc2eee54145052106644410be</id>
<content type='text'>
Get the requested image apply time value provided through the
UpdateService redfish schema. If the apply time value is Immediate, then
host reboot will be triggered just after the new pnor image activation. The
default apply time value is OnReset in which the new image remains at
Active state and user has to manualy reboot the host for applying the new
image.

Tested: Verified that host is getting rebooted while doing a pnor code update
if the apply time value is Immediate.  Tested this use case at server power Off
and Running scenarios. OnReset scenario was also tested in which new image
remained at Active state as pnor code update application did not trigger the
host reboot.

Note: This change is applicable to ubi based systems (Witherspoon)

Signed-off-by: Jayashankar Padath &lt;jayashankar.padath@in.ibm.com&gt;
Change-Id: I74f73172626919b225efef43d9baacd64eadbf60
</content>
</entry>
<entry>
<title>ubi: Rewrite freePriority</title>
<updated>2019-07-23T16:47:47+00:00</updated>
<author>
<name>Adriana Kobylak</name>
<email>anoo@us.ibm.com</email>
</author>
<published>2019-07-17T21:09:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/openpower-pnor-code-mgmt/commit/?id=abe862aae4527b4df569f9c664898202a073dabc'/>
<id>urn:sha1:abe862aae4527b4df569f9c664898202a073dabc</id>
<content type='text'>
freePriority is called by RedundancyPriority::priority() to ensure that
there are no duplicate priority values. Originally, freePriority would
call priority() whenever it updated a priority value, but this would call
freePriority again. This can cause the priorities stored on flash to not
match the D-Bus values. The priorities on flash are used to determine
which version to boot from so that leads to unexpected behavior.

Example is if A has priority 1 and B has priority 2, and the priority of
B is changed to 1, this triggers the new value of 1 to be stored on
flash, then A is bumped to 2, but then B that originally had 2 is bumped
to 3, so that at the end of the operation, B has priority 3 on flash but
the correct 1 in D-Bus.

The solution is to prevent freePriority from calling itself, by sorting
all versions by priority in ascending order, so that if a version is
bumped, then only the remaining versions need to be checked. Then
locally update the priority values on flash and on D-Bus for each
changed one.

Tested: Changed priorities multipled times and verified the mismatch is not
        seen anymore.

Change-Id: I704ee98f356a1a77f431b83e4b9d787b2671aeb2
Signed-off-by: Adriana Kobylak &lt;anoo@us.ibm.com&gt;
</content>
</entry>
<entry>
<title>Move script and systemd service files into repo</title>
<updated>2019-06-21T15:07:04+00:00</updated>
<author>
<name>Adriana Kobylak</name>
<email>anoo@us.ibm.com</email>
</author>
<published>2019-05-31T18:25:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/openpower-pnor-code-mgmt/commit/?id=10e915abf1bd31d8b1dae8d01c731ac8dd76c7c0'/>
<id>urn:sha1:10e915abf1bd31d8b1dae8d01c731ac8dd76c7c0</id>
<content type='text'>
Move the obmc-flash-bios script and systemd service files from
openbmc/openbmc to the local repo.

Tested: PNOR code update was successful on witherspoon.

Change-Id: Ibb7adba0638b8205173cb0ec4d4d61f2aeb6ce28
Signed-off-by: Adriana Kobylak &lt;anoo@us.ibm.com&gt;
</content>
</entry>
<entry>
<title>Static layout: support image verification</title>
<updated>2019-04-04T20:13:55+00:00</updated>
<author>
<name>Lei YU</name>
<email>mine260309@gmail.com</email>
</author>
<published>2019-03-18T07:22:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/openpower-pnor-code-mgmt/commit/?id=2b2d2298f5c6e9e596ed3ae84326a6ae804c46a4'/>
<id>urn:sha1:2b2d2298f5c6e9e596ed3ae84326a6ae804c46a4</id>
<content type='text'>
Add support of image verification for static layout PNOR code update.

Tested: Verify the PNOR code update succeeds with valid-signed PNOR;
        and fails with invalid-signed PNOR or a PNOR tarball without
        signature.

Change-Id: I1aafeb4e8e07eaa16c170f33f4f21940f7c9c146
Signed-off-by: Lei YU &lt;mine260309@gmail.com&gt;
</content>
</entry>
<entry>
<title>activation_ubi: Set priority in constructor</title>
<updated>2019-03-25T20:51:46+00:00</updated>
<author>
<name>Adriana Kobylak</name>
<email>anoo@us.ibm.com</email>
</author>
<published>2019-03-25T19:06:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/openpower-pnor-code-mgmt/commit/?id=df7a6157b352ed251af7e3d7b7e4ef45f6f9e740'/>
<id>urn:sha1:df7a6157b352ed251af7e3d7b7e4ef45f6f9e740</id>
<content type='text'>
The base activation class sets the priority value in its
constructor, but since the ubi class overrides this method,
need to call it in the ubi constructor as well, otherwise
the priority values won't get written to flash after a BMC
factory reset, causing the pnor updater to think there are
no pnor versions installed.

Tested: After a BMC factory reset, the ubi priority() method
was called, which restores the pnor priority files, and the
pnor symlinks were created.

Fixes: openbmc/openbmc#3507

Change-Id: I5d234ab232c91ac01d5c15c1c6ae87408c73b99c
Signed-off-by: Adriana Kobylak &lt;anoo@us.ibm.com&gt;
</content>
</entry>
<entry>
<title>Refactor: Use hiomapd instead of mboxd</title>
<updated>2019-03-18T03:25:47+00:00</updated>
<author>
<name>Lei YU</name>
<email>mine260309@gmail.com</email>
</author>
<published>2019-03-14T06:41:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/openpower-pnor-code-mgmt/commit/?id=e499446423d6ebe96f74e079de36a8929d47277b'/>
<id>urn:sha1:e499446423d6ebe96f74e079de36a8929d47277b</id>
<content type='text'>
mbox service is renamed to hiomapd and provides "Suspend" and
"Resume" method calls, which is more appropriate for raw "cmd" calls.

Use the new methods to suspend and resume hiomapd.
Move "getService()" function into utils so it is shared by multiple
files.

Tested: Verify the reset works on Romulus

Change-Id: I8f89de134b13126697bfc69a21a3148a01c34cca
Signed-off-by: Lei YU &lt;mine260309@gmail.com&gt;
</content>
</entry>
<entry>
<title>Refactor: Fix issues found by cppcheck</title>
<updated>2019-03-13T03:01:53+00:00</updated>
<author>
<name>Lei YU</name>
<email>mine260309@gmail.com</email>
</author>
<published>2019-03-05T08:02:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/openpower-pnor-code-mgmt/commit/?id=1db9adf37900c8503b3c9fa3fe39eef9406a30ff'/>
<id>urn:sha1:1db9adf37900c8503b3c9fa3fe39eef9406a30ff</id>
<content type='text'>
Resolve several issues found by cppcheck:

    [msl_verify.hpp:28]: (style) Class 'MinimumShipLevel' has a constructor with 1 argument that is not explicit.
    [ubi/watch.hpp:21]: (warning) Assignment of function parameter has no effect outside the function. Did you forget dereferencing it?
    [item_updater_main.cpp:22] -&gt; [item_updater_main.cpp:49]: (style) Local variable rc shadows outer symbol
    [serialize.cpp:19]: (performance) Function parameter 'versionId' should be passed by const reference.
    [ubi/watch.hpp:43]: (style) Struct 'CustomFd' has a constructor with 1 argument that is not explicit.
    [serialize.cpp:52]: (performance) Function parameter 'versionId' should be passed by const reference.
    [serialize.cpp:116]: (performance) Function parameter 'versionId' should be passed by const reference.
    [activation.cpp:115] -&gt; [activation.cpp:152]: (style) Local variable mapperResponseMsg shadows outer symbol
    [version.hpp:114]: (performance) Variable 'eraseCallback' is assigned in constructor body. Consider performing initialization in initialization list.
    [image_verify.hpp:53]: (style) Struct 'CustomFd' has a constructor with 1 argument that is not explicit.
    [ubi/item_updater_ubi.cpp:192]: (performance) Function parameter 'versionId' should be passed by const reference.
    [ubi/item_updater_ubi.cpp:203]: (performance) Function parameter 'versionId' should be passed by const reference.

Tested: Verify the code compiles and cppcheck does not report the above
        issues.

Change-Id: I096392a2a7a283fe198c9c29185125e61295e10f
Signed-off-by: Lei YU &lt;mine260309@gmail.com&gt;
</content>
</entry>
<entry>
<title>test: Add sources of static PNOR</title>
<updated>2019-03-13T03:01:53+00:00</updated>
<author>
<name>Lei YU</name>
<email>mine260309@gmail.com</email>
</author>
<published>2019-03-01T08:03:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/openpower-pnor-code-mgmt/commit/?id=716de5b8e3867fb829a2c1e39ade2b8f6aa1fa39'/>
<id>urn:sha1:716de5b8e3867fb829a2c1e39ade2b8f6aa1fa39</id>
<content type='text'>
Add sources in static dir to test.
It generates a link error about duplcated GardReset::reset().

Then an issue is found that GardReset::~GardReset() is not virtual,
this will casuse the destructor not calling its super class' dtor.

To fix the above link error, add GardReset[Ubi|Static] to make
ubi/static specific implementation in its own class.

Tested: Verify the test build works fine.

Change-Id: I41bd4d522e8b9c4053283c0cf4373807ef4f2d1c
Signed-off-by: Lei YU &lt;mine260309@gmail.com&gt;
</content>
</entry>
</feed>
