Author: zbb Date: Tue Jul 21 12:15:00 2015 New Revision: 285743 URL: https://svnweb.freebsd.org/changeset/base/285743
Log: Improve ARM64 CPU_MATCH Add a method to identify CPU based on RAW MIDR value. Obtained from: Semihalf Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D3117 Modified: head/sys/arm64/include/cpu.h Modified: head/sys/arm64/include/cpu.h ============================================================================== --- head/sys/arm64/include/cpu.h Tue Jul 21 10:52:05 2015 (r285742) +++ head/sys/arm64/include/cpu.h Tue Jul 21 12:15:00 2015 (r285743) @@ -92,10 +92,17 @@ #define CPU_VAR_MASK (0xf << 20) #define CPU_REV_MASK (0xf << 0) -#define CPU_MATCH(mask, impl, part, var, rev) \ - (((mask) & PCPU_GET(midr)) == (CPU_IMPL_TO_MIDR((impl)) | \ - CPU_PART_TO_MIDR((part)) | CPU_VAR_TO_MIDR((var)) | \ - CPU_REV_TO_MIDR((rev)))) +#define CPU_ID_RAW(impl, part, var, rev) \ + (CPU_IMPL_TO_MIDR((impl)) | \ + CPU_PART_TO_MIDR((part)) | CPU_VAR_TO_MIDR((var)) | \ + CPU_REV_TO_MIDR((rev))) + +#define CPU_MATCH(mask, impl, part, var, rev) \ + (((mask) & PCPU_GET(midr)) == \ + ((mask) & CPU_ID_RAW((impl), (part), (var), (rev)))) + +#define CPU_MATCH_RAW(mask, devid) \ + (((mask) & PCPU_GET(midr)) == ((mask) & (devid))) extern char btext[]; extern char etext[]; _______________________________________________ [email protected] mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "[email protected]"
