1.. _skiboot-5.0:
2
3===========
4skiboot 5.0
5===========
6
7Skiboot 5.0 was released Friday 10th April 2015.
8
9Changes in 5.0 (since rc3):
10
11 - Fix chip id for nx coprocessors.
12 - hw/ipmi: Fix FW Boot Progress sensor
13 - bt: Add a temporary workaround for bmc dropping messages
14 - FSP/CUPD: Fix lock issue
15
16Changes in rc3 (since rc2):
17
18 - add support for cec_power_down on mambo
19 - external/opal-prd: Use link register for cross-endian branch
20 - opal header file rework, Linux and skiboot now very closely match (API
21   in opal-api.h)
22 - libflash: don't use the low level interface if it doesn't exist
23 - libflash/file: add file abstraction for libflash
24 - external: create a GUARD partition parsing utility
25
26Changes in rc2 (since rc1):
27
28 - opal: Fix an issue where partial LID load causes opal to hang.
29 - nx: use proc_gen instead of param
30 - use chip id for NX engine Coproc Instance num
31 - Fix (hopefully) missing dot symbols in skiboot.map
32 - exceptions: Catch exceptions at boot time
33 - exceptions: Remove deprecated exception patching stuff
34 - mambo: Make mambo_utils.tcl optional
35 - mambo: Exit mambo when the simulation is stopped
36 - add NX register defines
37 - set NX crb input queues to 842 only
38 - core: Catch attempts to branch through a NULL pointer
39 - plat/firestone: Add missing platform hooks
40 - plat/firestone: Add missing platform hooks
41 - elog: Don't call uninitialized platform elog_commit
42 - external/opal-prd: Use "official" switch-endian syscall
43 - hw/ipmi: Rework sensors and fix boot count sensor
44
45Changes in rc1 (since 4.1.1):
46
47General:
48
49  * big OPAL API documentation updates
50    We now document around 19 OPAL calls. There's still ~100 left to doc
51    though :)
52  * skiboot can load FreeBSD kernel payload (thanks to Nathan Whitehorn)
53  * You can now run sparse by setting C=1 when building
54  * PSI: Revert the timeout for PSI link recovery to architected value
55    now 30mins (prev 15)
56  * cpuidle: Add validated metrics for idle states
57  * core/flash: Add flash API
58    OPAL_FLASH_(READ|WRITE|ERASE)
59  * capi: Dynamically calculate which CAPP port to use
60    no longer hardwired to PHB0
61  * vpd: Use slca parent-child relationship to create vpd tree
62  * opal: Do not overwrite same HMI event for multiple HMI errors.
63    Now Linux will get a HMI event for each HMI error
64  * HMI event v2 now includes information about checkstop
65  * HMI improvements, handle more conditions gracefully:
66
67    * TB residue error
68    * TFMR firmware control error
69    * TFMR parity
70    * TFMR HDEC parity error
71    * TFMR DEC parity error
72    * TFMR SPURR/PURR parity error
73    * TB residue and HDEC parity HMI errors on split core
74  * hostservices: Cache lids prior to first load request
75  * Warn when pollers are called with a lock held
76    and keep track of lock depth.
77
78    **NOTE:** This means we will get backtraces in skiboot msglog on FSP machines
79    This is a KNOWN ISSUE and is largely harmless.
80    There's still a couple that we haven't yet cleaned, these
81    messages can be thought of as a TODO list for developers.
82
83  * Don't run pollers in time_wait if lock held
84  * pci: Don't hang if we have only one CPU
85  * Detect recursive poller entry
86  * General cleanup
87  * Cleanup of opal.h so that we can have Linux and skiboot match
88  * add sparse annotations to opal.h
89  * Platform hooks for loading and preloading resources (LIDs)
90    This lays the groundwork for cutting 4-20 seconds off boot in a
91    future skiboot release.
92  * Fix potential race when clearing OCC interrupt status
93  * Add platform operation for reading sensors
94
95    * add support to read core and memory buffer temperatures
96
97Mambo/POWER8 Functional Simulator:
98
99  * Replace is_mambo_chip() with a better quirks mechanism.
100  * Don't hang if we only have one CPU and PCI.
101
102BMC systems:
103
104  * BMC can load payload from flash
105  * IPMI on BMC systems: graceful poweroff and reboot
106  * IPMI on BMC systems: watchdog timer support
107  * IPMI on BMC systems: PNOR locking
108  * Support for IPMI progress sensor
109  * IPMI boot count sensor
110  * capi: Rework microcode flash download and CAPP upload
111    load microcode on non-fsp systems
112  * NEW opal-prd userspace tool that handles PRD on non-FSP systems.
113    and OPAL PRD calls to support it.
114  * Improvements to opal-prd, libflash, and ipmi
115  * ECC support in libflash
116  * Load CAPI micro code, enabling CAPI on OpenPower systems.
117  * Dynamically calculate which CAPP port to use, don't hardcode to PHB0
118  * memboot flash backend
119
120POWER8
121
122  * add nx-842 coproc support
123
124FSP systems:
125
126  * Make abort() update sp attn area (like assert does)
127    On FSP systems this gives better error logs/dumps when abort() is hit
128  * FSP/LEDS: Many improvements and bug fixes
129  * LED support for FSP machines
130    Adds OPAL_LEDS_(GET|SET)_INDICATOR and device-tree bindings
131  * Refactor of fsp-rtc
132  * OCC loading fixes, including possible race condition where we would
133    fail to IPL.
134
135POWER7
136
137  * Fix unsupported return code of OPAL_(UN)REGISTER_DUMP_REGION on P7
138  * occ: Don't do bad XSCOMs on P7
139    The OCC interrupt register only exists on P8, accessing it on P7 causes
140    not only error logs but also causes PRD to eventually gard chips.
141  * cpu: Handle opal_reinit_cpus() more gracefully on P7
142    no longer generate error logs
143  * libflash updates for openpower
144  * misc code cleanup
145  * add nx-842 coproc support
146