<feed xmlns='http://www.w3.org/2005/Atom'>
<title>talos-hostboot/src/include/arch, 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>2020-01-07T19:14:40+00:00</updated>
<entry>
<title>Force a Hostboot dump on any TI in Simics</title>
<updated>2020-01-07T19:14:40+00:00</updated>
<author>
<name>Dan Crowell</name>
<email>dcrowell@us.ibm.com</email>
</author>
<published>2019-12-18T14:33:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-hostboot/commit/?id=4198ffbc2ae5404b05baff55be8e6f39578389cc'/>
<id>urn:sha1:4198ffbc2ae5404b05baff55be8e6f39578389cc</id>
<content type='text'>
Execute a magic instruction in the TI path to force a hostboot
dump to be collected on any TI while running in Simics.

Change-Id: I8aeffb2b646bbe8480568e8af33a658400fa01a5
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/88831
Reviewed-by: Nicholas E Bofferding &lt;bofferdn@us.ibm.com&gt;
Reviewed-by: Matt Derksen &lt;mderkse1@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: William G Hoffa &lt;wghoffa@us.ibm.com&gt;
</content>
</entry>
<entry>
<title>Handle processor swap between slots to 1-socket system</title>
<updated>2019-08-05T20:33:09+00:00</updated>
<author>
<name>Dan Crowell</name>
<email>dcrowell@us.ibm.com</email>
</author>
<published>2019-07-16T20:51:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-hostboot/commit/?id=7a758c4ef4c69abf1510271e437d250e4691f1ac'/>
<id>urn:sha1:7a758c4ef4c69abf1510271e437d250e4691f1ac</id>
<content type='text'>
If a processor was booted in the second slot, it will be programmed
to use the memory for that slot.  When it is installed in the first
slot it will then get reprogrammed to use the data for slot0.
However, if the new system only contains data for that 1 slot, we
won't be able to find a match to do the initial part of the boot.

This change will force some values into good enough shape to get
the boot far enough to do the SBE update to reprogram the memory
map.

Change-Id: I9b88d4181272104a8c680e9b5e84c4d204fdea05
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/80680
Reviewed-by: Matt Derksen &lt;mderkse1@us.ibm.com&gt;
Reviewed-by: Christian R Geddes &lt;crgeddes@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>Assembly for DARN instruction inconsistent</title>
<updated>2019-06-22T00:13:49+00:00</updated>
<author>
<name>Corey Swenson</name>
<email>cswenson@us.ibm.com</email>
</author>
<published>2019-06-20T18:40:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-hostboot/commit/?id=4b81399d6441708373f5694e5db21fa35633405a'/>
<id>urn:sha1:4b81399d6441708373f5694e5db21fa35633405a</id>
<content type='text'>
Sometimes generating incorrect L value for the darn instruction.
Removed the L variable and hard-coded into the instruction.

Change-Id: I5b478d2c220858942320f6fea3cb09d0ba6aee42
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/79278
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: Roland Veloz &lt;rveloz@us.ibm.com&gt;
Reviewed-by: Daniel M. Crowell &lt;dcrowell@us.ibm.com&gt;
</content>
</entry>
<entry>
<title>NVDIMM encryption HW function support</title>
<updated>2019-06-03T15:26:25+00:00</updated>
<author>
<name>Corey Swenson</name>
<email>cswenson@us.ibm.com</email>
</author>
<published>2019-05-02T20:20:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-hostboot/commit/?id=5fd22b47f8d633b118265bae079793e8d90a51c1'/>
<id>urn:sha1:5fd22b47f8d633b118265bae079793e8d90a51c1</id>
<content type='text'>
Update random number generation, IPL and runtime.
Write encryption regs to enable nvdimm encryption,
crypto-erase, disable encryption. Read config-status
reg to verify encryption state.

Change-Id: I25625b53f90eeb542767fa729ebb47f8f8455a4b
RTC:201474
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/77321
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: 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: Matthew Raybuck &lt;matthew.raybuck@ibm.com&gt;
Reviewed-by: Daniel M. Crowell &lt;dcrowell@us.ibm.com&gt;
</content>
</entry>
<entry>
<title>Developer Improvement: Get code coverage tool working with Hostboot</title>
<updated>2019-05-13T14:10:45+00:00</updated>
<author>
<name>Zach Clark</name>
<email>zach@ibm.com</email>
</author>
<published>2019-05-01T16:18:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-hostboot/commit/?id=6a2bedba84d0cc0b4a8837341e516a491218b729'/>
<id>urn:sha1:6a2bedba84d0cc0b4a8837341e516a491218b729</id>
<content type='text'>
This commit fixes GCOV code coverage for P9 with GCC 4.9.2

Change-Id: Ie1e7c35f67414531dbd6e7a771ac1529a9ebd59d
RTC: 208351
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/76812
Tested-by: Jenkins Server &lt;pfd-jenkins+hostboot@us.ibm.com&gt;
Reviewed-by: Nicholas E. Bofferding &lt;bofferdn@us.ibm.com&gt;
Reviewed-by: Ilya Smirnov &lt;ismirno@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>General Improvement: Get HB standalone + op-build working with GCC8</title>
<updated>2019-05-02T15:52:37+00:00</updated>
<author>
<name>Luis Fernandez</name>
<email>Luis.Fernandez@ibm.com</email>
</author>
<published>2019-04-26T18:23:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-hostboot/commit/?id=49d81ec6a770e74cd2a41acb15bcc4efc3434261'/>
<id>urn:sha1:49d81ec6a770e74cd2a41acb15bcc4efc3434261</id>
<content type='text'>
Fix issue where when compiling with GCC 8, illegal instruction of value
0x0 is placed instead of the expected "blr" instrusction.

Change-Id: I2ff28d5549689d541ea24d102230cbfc22cbbbff
RTC: 163075
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/76650
Tested-by: Jenkins Server &lt;pfd-jenkins+hostboot@us.ibm.com&gt;
Reviewed-by: Nicholas E. Bofferding &lt;bofferdn@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: Zachary Clark &lt;zach@ibm.com&gt;
Reviewed-by: Daniel M. Crowell &lt;dcrowell@us.ibm.com&gt;
</content>
</entry>
<entry>
<title>Validate OMI INBAND BAR offset attributes against calculated values</title>
<updated>2019-04-18T15:38:28+00:00</updated>
<author>
<name>Christian Geddes</name>
<email>crgeddes@us.ibm.com</email>
</author>
<published>2019-04-05T20:58:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-hostboot/commit/?id=e583424484de98e8be66549370fb28453ccb98e4'/>
<id>urn:sha1:e583424484de98e8be66549370fb28453ccb98e4</id>
<content type='text'>
While setting up the virtual memory mapped IO to the OCMB chips we
make some assumptions that the OCMB MMIO spaces will be contiguous.
The p9a_omi_setup_bars HWP uses OMI_INBAND_BAR_BASE_ADDR_OFFSET to
set the scom registers that determine the physical offset mapped
to the IO. When setting up the Virtual addresses hostboot uses to
represent the physical mmio address, we must validate that the attribute
matches with what we calculated. While doing this we found that the
virtual address attribute was being calculated incorrectly. It was
not localizing the OCMB position relative to the MC which is required
when calculating the offset into the MC bar.

Change-Id: I0ebbcd38e19a238e2cc16791bb0595536788bb7f
RTC: 201493
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/75631
Reviewed-by: Matthew Raybuck &lt;matthew.raybuck@ibm.com&gt;
Reviewed-by: Michael Baiocchi &lt;mbaiocch@us.ibm.com&gt;
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: 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>Add simics exit_cache_contained mode call</title>
<updated>2019-04-08T17:46:42+00:00</updated>
<author>
<name>Matt Derksen</name>
<email>mderkse1@us.ibm.com</email>
</author>
<published>2019-04-03T17:20:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-hostboot/commit/?id=e0fc8dd0b2640b985b27ad80925ae288812ff53e'/>
<id>urn:sha1:e0fc8dd0b2640b985b27ad80925ae288812ff53e</id>
<content type='text'>
In istep14, need to call magic instruction 8021
in order to exit cache contained mode when running
simics.

Change-Id: I277f07420111c0383a7d9b61bf4d1750e39126f2
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/75473
Reviewed-by: Christian R. Geddes &lt;crgeddes@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: Corey V. Swenson &lt;cswenson@us.ibm.com&gt;
Reviewed-by: William G. Hoffa &lt;wghoffa@us.ibm.com&gt;
</content>
</entry>
<entry>
<title>Add msgsync to doorbell wakeup logic to avoid weak consistency bug</title>
<updated>2019-01-21T14:54:51+00:00</updated>
<author>
<name>Dan Crowell</name>
<email>dcrowell@us.ibm.com</email>
</author>
<published>2019-01-18T19:50:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-hostboot/commit/?id=17ba81ec0a525707be8539d12ec0e2050227c354'/>
<id>urn:sha1:17ba81ec0a525707be8539d12ec0e2050227c354</id>
<content type='text'>
POWER9 added a new sync mode called 'msgsync' that is required
to avoid weak consistency issues when you are using doorbell
(msgsnd) functions.

See POWER ISA Section 5.9.2 for details, excerpt here:
The ordering done by sync (and ptesync) provides
the appearance of "causality" across a sequence of
msgsnd instructions, as in the following example.
"msgsnd-&gt;T1" means "msgsnd instruction target-
ting thread T1". "&lt;DHDI 0&gt;" means "occurrence of
Directed Hypervisor Doorbell interrupt caused by
msgsnd executed on T0". On T0, register r1 is
assumed to contain the value 1.
  T0           T1           T2
  std r1,X     &lt;DHDI 0&gt;     &lt;DHDI 1&gt;
  sync         msgsnd-&gt;T2   msgsync
  msgsnd-&gt;T1                ld r1,X
In this example, T2's load from X must return 1.

The change here adds the msgsync call to the code that executes
any time we handle a doorbell interrupt.  In addition there is a
POWER9 DD2 errata that indicates we also require a lwsync to
ensure consistency.

Change-Id: Ib0f3571926d71efcbffa205093278e2a1d58df85
CQ: SW454611
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/70648
Reviewed-by: Nicholas E. Bofferding &lt;bofferdn@us.ibm.com&gt;
Reviewed-by: Dean Sanner &lt;dsanner@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: 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: William G. Hoffa &lt;wghoffa@us.ibm.com&gt;
</content>
</entry>
<entry>
<title>Elevate log levels for simics during PSU ops</title>
<updated>2018-10-18T17:42:10+00:00</updated>
<author>
<name>Christian Geddes</name>
<email>crgeddes@us.ibm.com</email>
</author>
<published>2018-10-11T16:30:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/talos-hostboot/commit/?id=74812c31b9e586d7842509146155060fba1c847c'/>
<id>urn:sha1:74812c31b9e586d7842509146155060fba1c847c</id>
<content type='text'>
This commit introduces some new magic instructions one which will
temporarily elevate the log levels for given components and another
which will start and stop collection of these simics logs. This
was added so we can temporarily increase log levels during PSU
operations in hopes of catching a timeout we have been seeing
in simics and getting more info for the simics teams.

Change-Id: I990a4b5413f7ff14796dee36e39199f785aef458
Reviewed-on: http://rchgit01.rchland.ibm.com/gerrit1/67359
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: Ilya Smirnov &lt;ismirno@us.ibm.com&gt;
Reviewed-by: Hieu C. Nguyen &lt;hieu.nguyen@us.ibm.com&gt;
Reviewed-by: William G. Hoffa &lt;wghoffa@us.ibm.com&gt;
</content>
</entry>
</feed>
