<feed xmlns='http://www.w3.org/2005/Atom'>
<title>openpower-pnor-code-mgmt/static, 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-12-20T07:23:22+00:00</updated>
<entry>
<title>Fix ECC usage of being cleaned partitions</title>
<updated>2019-12-20T07:23:22+00:00</updated>
<author>
<name>Alexander Filippov</name>
<email>a.filippov@yadro.com</email>
</author>
<published>2019-12-18T09:06:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/openpower-pnor-code-mgmt/commit/?id=fa9a6bec4bbf062f0fd670357fb7ee0731c3f241'/>
<id>urn:sha1:fa9a6bec4bbf062f0fd670357fb7ee0731c3f241</id>
<content type='text'>
Reset procedure of PNOR works improperly for our P8 based VESNIN
hardware and makes the host unbootable.

The problem is in incorrect partition cleaning.

Hostboot for P8 has no support for CLEARECC bit and PNOR flash has no
partitions with flag 'C'.

P9 based hardware is not affected until PNOR has partitions with ECC
flag only.

This commit modifies the reset procedure to make it use the flag 'E'
(ECC) instead of 'C' (CLEARECC).

 * The flag 'E' means that the partition requires ECC.
 * The flag 'C' means that the partition might be cleaned by hostboot
   when ECC is wrong.

For details see:
https://github.com/open-power/hostboot/blob/75c0908b91275dc10bd17cb0f10b452f32ce0b91/src/include/usr/pnor/pnor_const.H#L128

Tested: All PNOR partitions with enabled flags 'E' and 'F' should be
cleaned with ECC.

Change-Id: I632e90c8e256df3445fc3d1f45c830d155a1d208
Signed-off-by: Alexander Filippov &lt;a.filippov@yadro.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>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>test: Add test for getPartsToClear</title>
<updated>2019-03-13T03:01:53+00:00</updated>
<author>
<name>Lei YU</name>
<email>mine260309@gmail.com</email>
</author>
<published>2019-03-01T09:17:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/openpower-pnor-code-mgmt/commit/?id=07830764398601b38d6dea9db269a7fb8efabbc8'/>
<id>urn:sha1:07830764398601b38d6dea9db269a7fb8efabbc8</id>
<content type='text'>
Add the test for getPartsToClear(), and fix issues found by the unit
test case with malformed input.

Tested: Verify test builds and passes.

Change-Id: I67c8bbd184e7e0c0f7f0f0fca678d1952a07cd66
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>
<entry>
<title>Static layout: Do not crash on empty 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-01T06:23:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/openpower-pnor-code-mgmt/commit/?id=91add6df04d65b4cddf9458e1c223163f9ad5764'/>
<id>urn:sha1:91add6df04d65b4cddf9458e1c223163f9ad5764</id>
<content type='text'>
When PNOR is empty, or corrupted and it fails to retrieve the version,
the service throws an exception.
This is not good because it should run on a corrupted or empty PNOR,
which then could be used to re-program the PNOR.

This commit fixes the issue, by not throwing on the above case.

Tested: Verify the service does not crash on a corrupted VERSION
        partition, and could be used to do code update to fix the
        corruption.

Change-Id: Ic6a413a81ad13894a9c7f039df71fff9b9d4b2ad
Signed-off-by: Lei YU &lt;mine260309@gmail.com&gt;
</content>
</entry>
<entry>
<title>Static layout: Do not update PNOR when host is on</title>
<updated>2019-03-13T03:01:53+00:00</updated>
<author>
<name>Lei YU</name>
<email>mine260309@gmail.com</email>
</author>
<published>2019-02-28T06:26:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/openpower-pnor-code-mgmt/commit/?id=6da3dae3b40bdbe9663b94e1f36dd3e2833d9c14'/>
<id>urn:sha1:6da3dae3b40bdbe9663b94e1f36dd3e2833d9c14</id>
<content type='text'>
Static layout only has 1 active and functional PNOR. When host is
running, do not update PNOR.
This is done by checking the return value of freeSpace(), and if it
returns false, it means there is no space for PNOR because the host is
running and erase() returns false.

Tested: Verify the status becomes Failed when trying to activate a PNOR
        while host is running.

Change-Id: Ie2986b0c6fd29557685f67eb77ccc29709e1669a
Signed-off-by: Lei YU &lt;mine260309@gmail.com&gt;
</content>
</entry>
<entry>
<title>Static layout: Use pflash to get partitions to clear</title>
<updated>2019-03-13T03:01:53+00:00</updated>
<author>
<name>Lei YU</name>
<email>mine260309@gmail.com</email>
</author>
<published>2019-02-26T09:27:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/openpower-pnor-code-mgmt/commit/?id=6cecc9b4a8e11327b5c59924c2865da5865f7d7d'/>
<id>urn:sha1:6cecc9b4a8e11327b5c59924c2865da5865f7d7d</id>
<content type='text'>
Use pflash -i to get partitions that should be cleared during factory
reset, instead of hard-coded ones.

Tested: From log verify the partitions with REPROVISION flag are cleared
        during factory reset.

Change-Id: I5f1681d0c5092e89a4a964ce41991b116252b9dd
Signed-off-by: Lei YU &lt;mine260309@gmail.com&gt;
</content>
</entry>
<entry>
<title>Static layout: Implement factory reset</title>
<updated>2019-03-13T03:01:53+00:00</updated>
<author>
<name>Lei YU</name>
<email>mine260309@gmail.com</email>
</author>
<published>2019-02-25T09:49:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/openpower-pnor-code-mgmt/commit/?id=a7b4adee12a944d3d937fdf05c56ed58a1cd3cf9'/>
<id>urn:sha1:a7b4adee12a944d3d937fdf05c56ed58a1cd3cf9</id>
<content type='text'>
Tested: Verify the partitions hard-coded are cleared during factory
        reset.

Change-Id: I70febe5f8245a299d4e2a782414662dbf09e84cb
Signed-off-by: Lei YU &lt;mine260309@gmail.com&gt;
</content>
</entry>
<entry>
<title>Static layout: Implement gard reset</title>
<updated>2019-03-13T03:01:53+00:00</updated>
<author>
<name>Lei YU</name>
<email>mine260309@gmail.com</email>
</author>
<published>2019-02-25T09:05:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/openpower-pnor-code-mgmt/commit/?id=5efca58658279f78bcc73282d3f3134a395ce68d'/>
<id>urn:sha1:5efca58658279f78bcc73282d3f3134a395ce68d</id>
<content type='text'>
Use pflash to clear GUARD partition.

Tested: Verify GUARD partition is cleared on gard reset.

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