linux_dsm_epyc7002/arch/powerpc
Matt Brown e66ca3db59 powerpc/powernv: Use darn instruction for get_random_seed() on Power9
This adds powernv_get_random_darn() which utilises the darn instruction,
introduced in ISA v3.0/POWER9.

The darn instruction can potentially return an error, which is supported
by the get_random_seed() API, in normal usage if we see an error we just
return that to the caller.

However when detecting whether darn is functional at boot we try up to
10 times, before deciding that darn doesn't work and failing the
registration of get_random_seed(). That way an intermittent failure
at boot doesn't deprive the system of randomness until the next reboot.

Signed-off-by: Matt Brown <matthew.brown.dev@gmail.com>
[mpe: Move init into a function, tweak change log]
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
2017-08-08 19:37:03 +10:00
..
boot powerpc updates for 4.13 2017-07-07 13:55:45 -07:00
configs powerpc/configs: Add a powernv_be_defconfig 2017-07-31 16:56:37 +10:00
crypto Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 2017-05-02 15:53:46 -07:00
include powerpc/powernv: Use darn instruction for get_random_seed() on Power9 2017-08-08 19:37:03 +10:00
kernel powerpc/32: Fix boot failure on non 6xx platforms 2017-08-08 19:35:34 +10:00
kvm powerpc/mm: Update definitions of DSISR bits 2017-08-03 16:06:43 +10:00
lib powerpc fixes for 4.13 #2 2017-07-14 15:33:15 -07:00
math-emu Replace <asm/uaccess.h> with <linux/uaccess.h> globally 2016-12-24 11:46:01 -08:00
mm powerpc: Remove old unused icswx based coprocessor support 2017-08-03 16:06:52 +10:00
net bpf: Add jited_len to struct bpf_prog 2017-06-06 15:41:24 -04:00
oprofile ktime: Cleanup ktime_set() usage 2016-12-25 17:21:22 +01:00
perf powerpc/perf: Add thread IMC PMU support 2017-07-25 22:55:46 +10:00
platforms powerpc/powernv: Use darn instruction for get_random_seed() on Power9 2017-08-08 19:37:03 +10:00
purgatory kexec, x86/purgatory: Unbreak it and clean it up 2017-03-10 20:55:09 +01:00
sysdev powerpc/ipic: Support edge on IRQ0 2017-07-24 21:20:31 +10:00
tools powerpc/64: Tool to check head sections location sanity 2017-05-30 14:59:51 +10:00
xmon powerpc/xmon: Add patch_instruction() support for xmon 2017-07-03 23:12:19 +10:00
Kconfig include/linux/string.h: add the option of fortified string.h functions 2017-07-12 16:26:03 -07:00
Kconfig.debug powerpc/xmon: Enable disassembly files (compilation changes) 2017-02-15 20:02:42 +11:00
Makefile powerpc/configs: Add a powernv_be_defconfig 2017-07-31 16:56:37 +10:00
Makefile.postlink powerpc/64: Tool to check head sections location sanity 2017-05-30 14:59:51 +10:00