From 4fd58e10b2747a0287ebc067ae1d538d6a525faa Mon Sep 17 00:00:00 2001 From: Michael Reifenberger Date: Thu, 13 Jul 2006 09:15:14 +0000 Subject: [PATCH] Use the already stored VIA RNG probe information instead of probing again. Adjust style(9) somewhat in probe.c Reviewed by: pjd MFC after: 1 week --- sys/crypto/via/padlock.c | 21 +++++---------------- sys/dev/random/probe.c | 2 +- 2 files changed, 6 insertions(+), 17 deletions(-) diff --git a/sys/crypto/via/padlock.c b/sys/crypto/via/padlock.c index 01eb916ce77a..95351af42e59 100644 --- a/sys/crypto/via/padlock.c +++ b/sys/crypto/via/padlock.c @@ -58,6 +58,8 @@ __FBSDID("$FreeBSD$"); #if defined(__i386__) && !defined(PC98) #include #include +#include +#include #endif #include @@ -160,24 +162,11 @@ padlock_init(void) { struct padlock_softc *sc; #if defined(__i386__) && !defined(PC98) - u_int regs[4]; - int has_ace = 0; - - if (cpu_class < CPUCLASS_586) - return (EINVAL); - do_cpuid(1, regs); - if ((regs[0] & 0xf) >= 3) { - do_cpuid(0xc0000000, regs); - if (regs[0] == 0xc0000001) { - do_cpuid(0xc0000001, regs); - if ((regs[3] & 0xc0) == 0xc0) - has_ace = 1; - } - } - if (!has_ace) { + if (!(via_feature_xcrypt & VIA_HAS_AES)) { printf("PADLOCK: No ACE support.\n"); return (EINVAL); - } + } else + printf("PADLOCK: HW support loaded.\n"); #else return (EINVAL); #endif diff --git a/sys/dev/random/probe.c b/sys/dev/random/probe.c index 55b197498c28..5d6bd6717c50 100644 --- a/sys/dev/random/probe.c +++ b/sys/dev/random/probe.c @@ -56,7 +56,7 @@ random_ident_hardware(struct random_systat *systat) /* Then go looking for hardware */ #if defined(__i386__) && !defined(PC98) - if( via_feature_rng & VIA_HAS_RNG ) { + if(via_feature_rng & VIA_HAS_RNG) { *systat = random_nehemiah; } #endif