<feed xmlns='http://www.w3.org/2005/Atom'>
<title>talos-hostboot/src/build/mkrules, branch 07-25-2019</title>
<subtitle>Talos™ II hostboot sources</subtitle>
<id>https://git.raptorcs.com/git/talos-hostboot/atom?h=07-25-2019</id>
<link rel='self' href='https://git.raptorcs.com/git/talos-hostboot/atom?h=07-25-2019'/>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-hostboot/'/>
<updated>2019-12-06T16:28:47+00:00</updated>
<entry>
<title>Automatically include config.h</title>
<updated>2019-12-06T16:28:47+00:00</updated>
<author>
<name>Dan Crowell</name>
<email>dcrowell@us.ibm.com</email>
</author>
<published>2019-11-20T18:36:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-hostboot/commit/?id=c46f1ee5b8b9f7ea7e398f373f990b6e3440a257'/>
<id>urn:sha1:c46f1ee5b8b9f7ea7e398f373f990b6e3440a257</id>
<content type='text'>
Rather than having to remember to include config.h anywhere
we reference a CONFIG variable (and usually forgetting),
this adds it to the default compiler flags so that it
gets included in every source file we build.

Change-Id: I53622ab4d46c55d942e98cae6ec03049fd5b3d08
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/87475
Tested-by: Jenkins Server &lt;pfd-jenkins+hostboot@us.ibm.com&gt;
Tested-by: Jenkins OP Build CI &lt;op-jenkins+hostboot@us.ibm.com&gt;
Tested-by: Jenkins OP HW &lt;op-hw-jenkins+hostboot@us.ibm.com&gt;
Tested-by: FSP CI Jenkins &lt;fsp-CI-jenkins+hostboot@us.ibm.com&gt;
Reviewed-by: Zachary Clark &lt;zach@ibm.com&gt;
Reviewed-by: Roland Veloz &lt;rveloz@us.ibm.com&gt;
Reviewed-by: Christian R Geddes &lt;crgeddes@us.ibm.com&gt;
Reviewed-by: Nicholas E Bofferding &lt;bofferdn@us.ibm.com&gt;
</content>
</entry>
<entry>
<title>New Optional Argument to PnorUtils.pm’s loadPnorLayout</title>
<updated>2019-10-29T16:27:59+00:00</updated>
<author>
<name>Luis Fernandez</name>
<email>Luis.Fernandez@ibm.com</email>
</author>
<published>2019-10-18T20:53:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-hostboot/commit/?id=5dd26a01eed5ee4c177c83fe0d811ffbde902a37'/>
<id>urn:sha1:5dd26a01eed5ee4c177c83fe0d811ffbde902a37</id>
<content type='text'>
New Optional Argument to PnorUtils.pm’s loadPnorLayout to
declare where to place the newly created layout file.
If argument is not given, file will not be saved.
Edited scripts and makefiles that use this function.

Change-Id: I7b9ee0f7ad33ad88be58598ddf594765eabe29ea
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/85916
Tested-by: Jenkins Server &lt;pfd-jenkins+hostboot@us.ibm.com&gt;
Tested-by: Jenkins OP Build CI &lt;op-jenkins+hostboot@us.ibm.com&gt;
Tested-by: Jenkins OP HW &lt;op-hw-jenkins+hostboot@us.ibm.com&gt;
Tested-by: FSP CI Jenkins &lt;fsp-CI-jenkins+hostboot@us.ibm.com&gt;
Reviewed-by: Nicholas E Bofferding &lt;bofferdn@us.ibm.com&gt;
Reviewed-by: Christian R Geddes &lt;crgeddes@us.ibm.com&gt;
Reviewed-by: Michael Baiocchi &lt;mbaiocch@us.ibm.com&gt;
Reviewed-by: Daniel M Crowell &lt;dcrowell@us.ibm.com&gt;
</content>
</entry>
<entry>
<title>Compile Hostboot with -Os</title>
<updated>2019-10-03T15:55:14+00:00</updated>
<author>
<name>Dean Sanner</name>
<email>dsanner@us.ibm.com</email>
</author>
<published>2019-06-17T12:14:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-hostboot/commit/?id=c4e7bcba07ccefc7f8094172def49a7e2a2cedcc'/>
<id>urn:sha1:c4e7bcba07ccefc7f8094172def49a7e2a2cedcc</id>
<content type='text'>
Hostboot currently spends a significant percentage of
time loading data from PNOR across a relatively slow LPC
bus.  This commit enables compilation of Hostboot with
-Os, optimized for space to reduce the amount of data required
to be transferred across the LPC bus

Rough measurements show a ~30% size reduction of the hostboot
image and a ~10% reduction (improvement) in boot time

Change-Id: Ib73863019595a24cc7d10e924bc5c92cd64af1ed
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/84436
Tested-by: Jenkins Server &lt;pfd-jenkins+hostboot@us.ibm.com&gt;
Tested-by: Jenkins OP Build CI &lt;op-jenkins+hostboot@us.ibm.com&gt;
Tested-by: Jenkins OP HW &lt;op-hw-jenkins+hostboot@us.ibm.com&gt;
Tested-by: FSP CI Jenkins &lt;fsp-CI-jenkins+hostboot@us.ibm.com&gt;
Reviewed-by: William G Hoffa &lt;wghoffa@us.ibm.com&gt;
</content>
</entry>
<entry>
<title>Patch For: Implement Static Analysis with cppcheck</title>
<updated>2019-09-19T04:14:10+00:00</updated>
<author>
<name>Luis Fernandez</name>
<email>Luis.Fernandez@ibm.com</email>
</author>
<published>2019-09-18T15:34:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-hostboot/commit/?id=08501bc6578ac2ba40cc803ac2449828ee6b1550'/>
<id>urn:sha1:08501bc6578ac2ba40cc803ac2449828ee6b1550</id>
<content type='text'>
CPPCHECK commands fail in machines that do not use bin/sh.
Wrap commands inside an if-statement to only be read
when User explicitly run the tool.

Change-Id: Ifad56b0978c8190efa033203f661daf9259a4d43
RTC: 201451
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/83938
Tested-by: Jenkins Server &lt;pfd-jenkins+hostboot@us.ibm.com&gt;
Tested-by: Jenkins OP Build CI &lt;op-jenkins+hostboot@us.ibm.com&gt;
Tested-by: FSP CI Jenkins &lt;fsp-CI-jenkins+hostboot@us.ibm.com&gt;
Tested-by: Jenkins OP HW &lt;op-hw-jenkins+hostboot@us.ibm.com&gt;
Reviewed-by: Daniel M Crowell &lt;dcrowell@us.ibm.com&gt;
</content>
</entry>
<entry>
<title>Implement Static Analysis with cppcheck</title>
<updated>2019-09-11T15:53:06+00:00</updated>
<author>
<name>Megan</name>
<email>megan.teo@ibm.com</email>
</author>
<published>2019-06-25T20:17:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-hostboot/commit/?id=1d4530dac35a6baddf60a3bfd454aac1949f69b6'/>
<id>urn:sha1:1d4530dac35a6baddf60a3bfd454aac1949f69b6</id>
<content type='text'>
Cppcheck static analysis tool can now be run when compiling
by running: make cppcheck
And it will always run when committing without stopping the
commit if an error is found.

This commit suppresses some false positives found in the code.

A false positive can be suppressed inline by placing
“// cppcheck-suppress syntaxError” in a line before the false
positive., e.g.:

char arr[5];
// cppcheck-suppress arrayIndexOutOfBounds
arr[10] = 0;

Change-Id: I9e833a153d6b04df2f8a72cd994e43922c61c2fe
RTC: 201451
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/79629
Reviewed-by: Zachary Clark &lt;zach@ibm.com&gt;
Reviewed-by: Nicholas E Bofferding &lt;bofferdn@us.ibm.com&gt;
Tested-by: Jenkins Server &lt;pfd-jenkins+hostboot@us.ibm.com&gt;
Tested-by: Jenkins OP Build CI &lt;op-jenkins+hostboot@us.ibm.com&gt;
Tested-by: Jenkins OP HW &lt;op-hw-jenkins+hostboot@us.ibm.com&gt;
Tested-by: FSP CI Jenkins &lt;fsp-CI-jenkins+hostboot@us.ibm.com&gt;
Reviewed-by: Daniel M Crowell &lt;dcrowell@us.ibm.com&gt;
</content>
</entry>
<entry>
<title>Revert "Compile Hostboot with -Os"</title>
<updated>2019-08-08T21:43:33+00:00</updated>
<author>
<name>Daniel M Crowell</name>
<email>dcrowell@us.ibm.com</email>
</author>
<published>2019-08-04T19:29:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-hostboot/commit/?id=4a6e203860f5b8cfeb7de3740b06f9bbaf2d5f1e'/>
<id>urn:sha1:4a6e203860f5b8cfeb7de3740b06f9bbaf2d5f1e</id>
<content type='text'>
This reverts commit cd1e5c91e4a15ca933c699553ece9b841825ac03.
The previous change seems to be causing problems with
thread local storage (TLS) access.

CQ: SW471547
Change-Id: Ic6f43fbba2a3d5abe94ea73e8e5fd03702b84365
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/81652
Reviewed-by: Daniel M Crowell &lt;dcrowell@us.ibm.com&gt;
Tested-by: Daniel M Crowell &lt;dcrowell@us.ibm.com&gt;
</content>
</entry>
<entry>
<title>Remove MVPD,MEMD and CENHWIMG section from Axone pnor layout</title>
<updated>2019-07-30T20:19:58+00:00</updated>
<author>
<name>Christian Geddes</name>
<email>crgeddes@us.ibm.com</email>
</author>
<published>2019-07-11T16:14:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-hostboot/commit/?id=b3c0accfea52da03ec2b31fecc4271655aaa68f0'/>
<id>urn:sha1:b3c0accfea52da03ec2b31fecc4271655aaa68f0</id>
<content type='text'>
This commit removes the MVPD, MEMD and CENHWIMG sections from the axone
pnor layout as they are not being used and pnor space is limited.
Along with removing the defintion in the pnor layout xml some code
changes were required to no longer attempt to load the MVPD/MEMD sections.

Change-Id: I20739e30ad497737c0a30b66cc36052c08c11de2
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/80295
Reviewed-by: Glenn Miles &lt;milesg@ibm.com&gt;
Tested-by: Jenkins Server &lt;pfd-jenkins+hostboot@us.ibm.com&gt;
Reviewed-by: Matt Derksen &lt;mderkse1@us.ibm.com&gt;
Tested-by: Jenkins OP Build CI &lt;op-jenkins+hostboot@us.ibm.com&gt;
Tested-by: Jenkins OP HW &lt;op-hw-jenkins+hostboot@us.ibm.com&gt;
Tested-by: FSP CI Jenkins &lt;fsp-CI-jenkins+hostboot@us.ibm.com&gt;
Reviewed-by: Daniel M Crowell &lt;dcrowell@us.ibm.com&gt;
</content>
</entry>
<entry>
<title>Compile Hostboot with -Os</title>
<updated>2019-07-25T18:59:23+00:00</updated>
<author>
<name>Dean Sanner</name>
<email>dsanner@us.ibm.com</email>
</author>
<published>2019-06-17T12:14:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-hostboot/commit/?id=cd1e5c91e4a15ca933c699553ece9b841825ac03'/>
<id>urn:sha1:cd1e5c91e4a15ca933c699553ece9b841825ac03</id>
<content type='text'>
Hostboot currently spends a significant percentage of
time loading data from PNOR across a relatively slow LPC
bus.  This commit enables compilation of Hostboot with
-Os, optimized for space to reduce the amount of data required
to be transferred across the LPC bus

Rough measurements show a ~30% size reduction of the hostboot
image and a ~10% reduction (improvement) in boot time

Change-Id: Ib140e6f07b112ae95a901f49b75416ef91c94a9d
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/79059
Reviewed-by: Nicholas E Bofferding &lt;bofferdn@us.ibm.com&gt;
Tested-by: Jenkins Server &lt;pfd-jenkins+hostboot@us.ibm.com&gt;
Tested-by: FSP CI Jenkins &lt;fsp-CI-jenkins+hostboot@us.ibm.com&gt;
Tested-by: Jenkins OP Build CI &lt;op-jenkins+hostboot@us.ibm.com&gt;
Tested-by: Jenkins OP HW &lt;op-hw-jenkins+hostboot@us.ibm.com&gt;
Reviewed-by: Zachary Clark &lt;zach@ibm.com&gt;
Reviewed-by: Michael Baiocchi &lt;mbaiocch@us.ibm.com&gt;
Reviewed-by: William G Hoffa &lt;wghoffa@us.ibm.com&gt;
</content>
</entry>
<entry>
<title>Update buildBpmFlashImages.pl to support configuration data binary generation</title>
<updated>2019-07-23T16:43:16+00:00</updated>
<author>
<name>Matthew Raybuck</name>
<email>matthew.raybuck@ibm.com</email>
</author>
<published>2019-07-09T19:01:23+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-hostboot/commit/?id=72f32c4cb878036921ee1228e71abb7ba21adcbc'/>
<id>urn:sha1:72f32c4cb878036921ee1228e71abb7ba21adcbc</id>
<content type='text'>
Currently, buildBpmFlashImages.pl will only generate the firmware
binaries for the BPM update for firmware versions less than 1.05. This
commit adds support for the configuration portion of the update for
version 1.05 and updates the script so that the generated firmware
binaries are compliant with v1.05 requirements.

Change-Id: I29b80b01fc8af85ffdefe8c4ad486206e557306e
RTC:212446
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/80198
Reviewed-by: Roland Veloz &lt;rveloz@us.ibm.com&gt;
Tested-by: Jenkins Server &lt;pfd-jenkins+hostboot@us.ibm.com&gt;
Tested-by: Jenkins OP Build CI &lt;op-jenkins+hostboot@us.ibm.com&gt;
Tested-by: Jenkins OP HW &lt;op-hw-jenkins+hostboot@us.ibm.com&gt;
Tested-by: FSP CI Jenkins &lt;fsp-CI-jenkins+hostboot@us.ibm.com&gt;
Reviewed-by: Matt Derksen &lt;mderkse1@us.ibm.com&gt;
Reviewed-by: Daniel M Crowell &lt;dcrowell@us.ibm.com&gt;
</content>
</entry>
<entry>
<title>Cache objdump output for build performance</title>
<updated>2019-07-18T21:01:54+00:00</updated>
<author>
<name>Zach Clark</name>
<email>zach@ibm.com</email>
</author>
<published>2019-07-08T20:42:20+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-hostboot/commit/?id=5091387d6c7862585b00d813208dc3ef020b3083'/>
<id>urn:sha1:5091387d6c7862585b00d813208dc3ef020b3083</id>
<content type='text'>
Hostboot uses the objdump tool to disassemble modules and the genlist
program to create the listing files (*.list.bz2) for each binary blob
generated by the build process (hbibl, hbicore, etc). The hundreds of
objdump invocations account for a majority of the build time when
recompiling hostboot after a small number of files have been changed
because all the shared objects for a binary must be dumped again
regardless of whether they have been modified.

This commit causes the genlist program and the makefiles to cache the
(compressed) disassembly when the BUILD_FAST flag is set so that only
modified ELF files need to be redumped. Also several binaries include
the same modules, which means that a given module may be dumped
multiple times needlessly.

Benchmarks for recompilation after modifying small numbers of files
show at least a 5x speedup as compared with the original build system.

Using BUILD_FAST comes with a cost of about 35 MB of disk space. When
compiling all of hostboot (i.e. all libraries must be dumped), using
BUILD_FAST is not slower than a vanilla build. The cached objdump
output is stored in the img/objdump/ folder.

Example:

make BUILD_FAST=1 -j32

Change-Id: I65be7b29cec953950bfa664a5ee04e3a711007b5
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/80115
Tested-by: Jenkins Server &lt;pfd-jenkins+hostboot@us.ibm.com&gt;
Tested-by: Jenkins OP Build CI &lt;op-jenkins+hostboot@us.ibm.com&gt;
Tested-by: FSP CI Jenkins &lt;fsp-CI-jenkins+hostboot@us.ibm.com&gt;
Reviewed-by: Luis P Fernandez &lt;luis.fernandez@ibm.com&gt;
Tested-by: Jenkins OP HW &lt;op-hw-jenkins+hostboot@us.ibm.com&gt;
Reviewed-by: Nicholas E Bofferding &lt;bofferdn@us.ibm.com&gt;
Reviewed-by: Daniel M Crowell &lt;dcrowell@us.ibm.com&gt;
</content>
</entry>
</feed>
