freebsd-dev/sys/powerpc/powernv
Justin Hibbits 8af4cc4d5a powernv: Add Hypervisor Maintenance Interrupt handler
Attempting to build www/firefox on POWER9 resulted in a HMI exception being
thrown, a fatal trap currently.  This is typically caused by timer facility
errors, but examination of the Hypervisor Maintenance Exception Register
(HMER) yielded only that an exception had recovered, with no information of
the actual exception cause.

When an HMI occurs, OPAL_HANDLE_HMI or OPAL_HANDLE_HMI2 must be called to
handle the exception at the firmware level.  If the exception is handled, we
can continue.

This adds only the preliminary handler, enough to prevent package building
from panicking.  An enhancement in the future is to use the flags returned
by OPAL_HANDLE_HMI2 to print more useful error messages, and log maintenance
events.

Reviewed by:	luporl
MFC after:	1 week
Differential Revision:	https://reviews.freebsd.org/D19634
2019-03-23 03:23:20 +00:00
..
opal_async.c powerpc/powernv: Add asynchronous token management for powernv 2019-03-01 02:49:47 +00:00
opal_console.c Support multiple OPAL consoles, and don't crash if uart is not stdout 2018-06-29 19:35:25 +00:00
opal_dev.c powerpc/powernv: Add asynchronous token management for powernv 2019-03-01 02:49:47 +00:00
opal_flash.c powerpc/powernv: Add OPAL flash device driver 2019-03-01 04:36:55 +00:00
opal_hmi.c powernv: Add Hypervisor Maintenance Interrupt handler 2019-03-23 03:23:20 +00:00
opal_i2c.c powerpc/powernv: Add asynchronous token management for powernv 2019-03-01 02:49:47 +00:00
opal_i2cm.c Reverting r330925 for now 2018-03-15 06:19:45 +00:00
opal_pci.c powerpc: Add opaque 'private data' to interrupt vectors 2019-01-12 22:05:42 +00:00
opal_sensor.c powerpc/powernv: Add asynchronous token management for powernv 2019-03-01 02:49:47 +00:00
opal.c
opal.h powernv: Add Hypervisor Maintenance Interrupt handler 2019-03-23 03:23:20 +00:00
opalcall.S
platform_powernv.c powerpc/powernv: Add a driver for the POWER9 XIVE interrupt controller 2019-02-02 04:15:16 +00:00
powernv_centaur.c Reverting r330925 for now 2018-03-15 06:19:45 +00:00
powernv_xscom.c Reverting r330925 for now 2018-03-15 06:19:45 +00:00
xive.c powerpc/powernv: Add a driver for the POWER9 XIVE interrupt controller 2019-02-02 04:15:16 +00:00