freebsd-skq/sys/powerpc
Justin Hibbits 0d69f00b4d powerpc/mpc85xx: Synchronize timebase the platform correct way
Summary:
To safely synchronize timebase we need to disable the timebase on all
cores, set timebase, and resynchronize.  This adds two new devices, mutually
exclusive, which attach on the SoC simplebus, to freeze and unfreeze the
timebase.  The devices are singletons, and platform-specific, so no reason
to make them optional and in separate files.

This was found to be necessary for top(1) to work correctly on an AmigaOne
X5000 (P5020 SoC).  It also fixes bufdaemon and bufspacedaemon hangs at
shutdown.

Test Plan: Regression test on various Book-E hardware.

Reviewed by:	nwhitehorn
Tested by:	Brandon Bergren (git_bdragon.rtk0.net)
MFC after:	2 weeks
Differential Revision: https://reviews.freebsd.org/D19208
2019-02-27 03:30:49 +00:00
..
aim [ppc64] prevent infinite loop on icache sync 2019-02-12 11:29:03 +00:00
booke powerpc/booke: Fix 32-bit build 2019-02-16 04:47:33 +00:00
conf powerpc: Clamp MAXCPU for MPC85XXSPE kernel to 2 2019-02-10 20:21:20 +00:00
cpufreq pmcr: Fix pstate setting on Power8 2018-12-01 21:37:47 +00:00
fpu powerpc: Fix FPU fsqrt emulation special case results 2019-01-16 03:52:43 +00:00
include Add kernel support for Intel userspace protection keys feature on 2019-02-20 09:51:13 +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 powerpc/powernv: Add a driver for the POWER9 XIVE interrupt controller 2019-02-02 04:15:16 +00:00
powerpc [PPC64] Fix mismatch between thread flags and MSR 2019-02-14 15:15:32 +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