[Skiboot] skiboot 6.0.5 released

Stewart Smith stewart at linux.ibm.com
Wed Jul 11 15:22:31 AEST 2018


skiboot-6.0.5
*************

skiboot 6.0.5 was released on Wednesday July 11th, 2018. It replaces
skiboot-6.0.4 as the current stable release in the 6.0.x series.

It is recommended that 6.0.5 be used instead of any previous 6.0.x
version.

Over skiboot-6.0.4 we have several bug fixes, including important ones
for NVLINK2 and NX.


PCI/PHB4
========

* phb4: Delay training till after PERST is deasserted

  This helps some cards train on the second PERST (ie fast-reboot).
  The reason is not clear why but it helps, so YOLO!

* pci: Fix PCI_DEVICE_ID()

  The vendor ID is 16 bits not 8. This error leaves the top of the
  vendor ID in the bottom bits of the device ID, which resulted in
  e.g. a failure to run the PCI quirk for the AST VGA device.

  Fixes: 2b841bf0ef1b (present in v5.7-rc1)


PHB4/CAPI
=========

* phb4/capp: Calculate STQ/DMA read engines based on link-width for
  PEC

  Presently in CAPI mode the number of STQ/DMA-read engines allocated
  on PEC2 for CAPP is fixed to 6 and 0-30 respectively irrespective of
  the PCI link width. These values are only suitable for x8 cards and
  quickly run out if a x16 card is plugged to a PEC2 attached slot.
  This usually manifests as CAPP reporting TLBI timeout due to these
  messages getting stalled due to insufficient STQs.

  To fix this we update enable_capi_mode() to check if PEC2 chiplet is
  in x16 mode and if yes then we allocate 4/0-47 STQ/DMA-read engines
  for the CAPP traffic.

* capi: Select the correct IODA table entry for the mbt cache.

  With the current code, the capi mmio window is not correctly
  configured in the IODA table entry. The first entry (generally the
  non-prefetchable BAR) is overwrriten. This patch sets the capi
  window bar at the right place.


Sensors
=======

* occ: sensors: Fix the size of the phandle array ‘sensors’ in DT

  Fixes: 99505c03f493 (present in v5.10-rc4)


NPU2/NVLINK2
============

* npu2/hw-procedures: Fence bricks via NTL instead of MISC

  There are a couple of places we can set/unset fence for a brick:

  1. MISC register: NPU2_MISC_FENCE_STATE

  2. NTL register for the brick: NPU2_NTL_MISC_CFG1(ndev)

  Recent testing of ATS in combination with GPU reset has exposed a
  side effect of using (1); if fence is set for all six bricks, it
  triggers a sticky nmmu latch which prevents the NPU from getting ATR
  responses. This manifests as a hang in the tests.

  We have npu2_dev_fence_brick() which uses (1), and only two calls to
  it. Replace the call which sets fence with a write to (2). Remove
  the corresponding unset call entirely. It’s unneeded because the
  procedures already do a progression from full fence to half to idle
  using (2).

* opal/hmi: Display correct chip id while printing NPU FIRs.

  HMIs for NPU xstops are broadcasted to all chips. All cores on all
  the chips receive HMI. HMI handler correctly identifies and extracts
  the NPU FIR details from affected chip, but while printing FIR data
  it prints chip id and location code details of this_cpu()->chip_id
  which may not be correct. This patch fixes this issue.

  Fixes: 7bcbc78c (present in v6.0.1)


VPD
===

* vpd: Add vendor property to processor node

  Processor FRU vpd doesn’t contain vendor detail. We have to parse
  module VPD to get vendor detail.

* vpd: Sanitize VPD data

  On OpenPower system, VPD keyword size tells us the maximum size of
  the data. But they fill trailing end with space (0x20) instead of
  NULL. Also spec doesn’t stop user to have space (0x20) within actual
  data.

  This patch discards trailing spaces before populating device tree.


NX/VAS for POWER9
=================

* NX: Add NX coprocessor init opal call

  The read offset (4:11) in Receive FIFO control register is
  incremented by FIFO size whenever CRB read by NX. But the index in
  RxFIFO has to match with the corresponding entry in FIFO maintained
  by VAS in kernel. VAS entry is reset to 0 when opening the receive
  window during driver initialization. So when NX842 is reloaded or in
  kexec boot, possibility of mismatch between RxFIFO control register
  and VAS entries in kernel. It could cause CRB failure / timeout from
  NX.

  This patch adds nx_coproc_init opal call for kernel to initialize
  readOffset (4:11) and Queued (15:23) in RxFIFO control register.

  Fixes: 3b3c5962f432 (present in v5.8-rc1)

-- 
Stewart Smith
OPAL Architect, IBM.



More information about the Skiboot mailing list