freebsd-nq/sys/powerpc
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
..
aim powerpc: Re-merge isa3 HPT with moea64 native HPT 2019-03-22 22:14:14 +00:00
booke powerpc/booke: Depessimize MAS register updates even more 2019-03-02 20:59:18 +00:00
conf powerpc: Clamp MAXCPU for MPC85XXSPE kernel to 2 2019-02-10 20:21:20 +00:00
cpufreq powerpc: Fix cpufreq statement scoping 2019-03-08 03:59:53 +00:00
fpu powerpc: Fix FPU fsqrt emulation special case results 2019-01-16 03:52:43 +00:00
include powernv: Add Hypervisor Maintenance Interrupt handler 2019-03-23 03:23:20 +00:00
mambo sys/powerpc: further adoption of SPDX licensing ID tags. 2017-11-27 15:09:59 +00:00
mikrotik - Allow different slicers for different flash types to be registered 2017-02-22 10:21:39 +00:00
mpc85xx powerpc/mpc85xx: Synchronize timebase the platform correct way 2019-02-27 03:30:49 +00:00
ofw powerpc: Bind IRQs to only one interrupt on QorIQ SoCs 2019-02-06 03:52:14 +00:00
powermac powerpc: Add opaque 'private data' to interrupt vectors 2019-01-12 22:05:42 +00:00
powernv powernv: Add Hypervisor Maintenance Interrupt handler 2019-03-23 03:23:20 +00:00
powerpc powernv: Add Hypervisor Maintenance Interrupt handler 2019-03-23 03:23:20 +00:00
ps3 powerpc: Add opaque 'private data' to interrupt vectors 2019-01-12 22:05:42 +00:00
pseries [ppc64] llan: fix fatal kernel trap when system is low on memory 2019-02-05 18:16:14 +00:00
psim add snps IP uart support / genaralize UART 2018-08-19 21:10:21 +00:00