Date: Tue, 21 Jul 2015 12:15:01 +0000 (UTC) From: Zbigniew Bodek <zbb@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r285743 - head/sys/arm64/include Message-ID: <201507211215.t6LCF19n036169@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
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[];
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201507211215.t6LCF19n036169>