blob: 0a62546ef35932ecce887585984825450831093c [file] [log] [blame]
.. _skiboot-5.0:
===========
skiboot 5.0
===========
Skiboot 5.0 was released Friday 10th April 2015.
Changes in 5.0 (since rc3):
- Fix chip id for nx coprocessors.
- hw/ipmi: Fix FW Boot Progress sensor
- bt: Add a temporary workaround for bmc dropping messages
- FSP/CUPD: Fix lock issue
Changes in rc3 (since rc2):
- add support for cec_power_down on mambo
- external/opal-prd: Use link register for cross-endian branch
- opal header file rework, Linux and skiboot now very closely match (API
in opal-api.h)
- libflash: don't use the low level interface if it doesn't exist
- libflash/file: add file abstraction for libflash
- external: create a GUARD partition parsing utility
Changes in rc2 (since rc1):
- opal: Fix an issue where partial LID load causes opal to hang.
- nx: use proc_gen instead of param
- use chip id for NX engine Coproc Instance num
- Fix (hopefully) missing dot symbols in skiboot.map
- exceptions: Catch exceptions at boot time
- exceptions: Remove deprecated exception patching stuff
- mambo: Make mambo_utils.tcl optional
- mambo: Exit mambo when the simulation is stopped
- add NX register defines
- set NX crb input queues to 842 only
- core: Catch attempts to branch through a NULL pointer
- plat/firestone: Add missing platform hooks
- plat/firestone: Add missing platform hooks
- elog: Don't call uninitialized platform elog_commit
- external/opal-prd: Use "official" switch-endian syscall
- hw/ipmi: Rework sensors and fix boot count sensor
Changes in rc1 (since 4.1.1):
General:
* big OPAL API documentation updates
We now document around 19 OPAL calls. There's still ~100 left to doc
though :)
* skiboot can load FreeBSD kernel payload (thanks to Nathan Whitehorn)
* You can now run sparse by setting C=1 when building
* PSI: Revert the timeout for PSI link recovery to architected value
now 30mins (prev 15)
* cpuidle: Add validated metrics for idle states
* core/flash: Add flash API
OPAL_FLASH_(READ|WRITE|ERASE)
* capi: Dynamically calculate which CAPP port to use
no longer hardwired to PHB0
* vpd: Use slca parent-child relationship to create vpd tree
* opal: Do not overwrite same HMI event for multiple HMI errors.
Now Linux will get a HMI event for each HMI error
* HMI event v2 now includes information about checkstop
* HMI improvements, handle more conditions gracefully:
* TB residue error
* TFMR firmware control error
* TFMR parity
* TFMR HDEC parity error
* TFMR DEC parity error
* TFMR SPURR/PURR parity error
* TB residue and HDEC parity HMI errors on split core
* hostservices: Cache lids prior to first load request
* Warn when pollers are called with a lock held
and keep track of lock depth.
**NOTE:** This means we will get backtraces in skiboot msglog on FSP machines
This is a KNOWN ISSUE and is largely harmless.
There's still a couple that we haven't yet cleaned, these
messages can be thought of as a TODO list for developers.
* Don't run pollers in time_wait if lock held
* pci: Don't hang if we have only one CPU
* Detect recursive poller entry
* General cleanup
* Cleanup of opal.h so that we can have Linux and skiboot match
* add sparse annotations to opal.h
* Platform hooks for loading and preloading resources (LIDs)
This lays the groundwork for cutting 4-20 seconds off boot in a
future skiboot release.
* Fix potential race when clearing OCC interrupt status
* Add platform operation for reading sensors
* add support to read core and memory buffer temperatures
Mambo/POWER8 Functional Simulator:
* Replace is_mambo_chip() with a better quirks mechanism.
* Don't hang if we only have one CPU and PCI.
BMC systems:
* BMC can load payload from flash
* IPMI on BMC systems: graceful poweroff and reboot
* IPMI on BMC systems: watchdog timer support
* IPMI on BMC systems: PNOR locking
* Support for IPMI progress sensor
* IPMI boot count sensor
* capi: Rework microcode flash download and CAPP upload
load microcode on non-fsp systems
* NEW opal-prd userspace tool that handles PRD on non-FSP systems.
and OPAL PRD calls to support it.
* Improvements to opal-prd, libflash, and ipmi
* ECC support in libflash
* Load CAPI micro code, enabling CAPI on OpenPower systems.
* Dynamically calculate which CAPP port to use, don't hardcode to PHB0
* memboot flash backend
POWER8
* add nx-842 coproc support
FSP systems:
* Make abort() update sp attn area (like assert does)
On FSP systems this gives better error logs/dumps when abort() is hit
* FSP/LEDS: Many improvements and bug fixes
* LED support for FSP machines
Adds OPAL_LEDS_(GET|SET)_INDICATOR and device-tree bindings
* Refactor of fsp-rtc
* OCC loading fixes, including possible race condition where we would
fail to IPL.
POWER7
* Fix unsupported return code of OPAL_(UN)REGISTER_DUMP_REGION on P7
* occ: Don't do bad XSCOMs on P7
The OCC interrupt register only exists on P8, accessing it on P7 causes
not only error logs but also causes PRD to eventually gard chips.
* cpu: Handle opal_reinit_cpus() more gracefully on P7
no longer generate error logs
* libflash updates for openpower
* misc code cleanup
* add nx-842 coproc support