xref: /freebsd/sys/contrib/openzfs/config/kernel-cpu_has_feature.m4 (revision 2a58b312b62f908ec92311d1bd8536dbaeb8e55b)
1*2a58b312SMartin Matuskadnl #
2*2a58b312SMartin Matuskadnl # cpu_has_feature() may referencing GPL-only cpu_feature_keys on powerpc
3*2a58b312SMartin Matuskadnl #
4*2a58b312SMartin Matuska
5*2a58b312SMartin Matuskadnl #
6*2a58b312SMartin Matuskadnl # Checking if cpu_has_feature is exported GPL-only
7*2a58b312SMartin Matuskadnl #
8*2a58b312SMartin MatuskaAC_DEFUN([ZFS_AC_KERNEL_SRC_CPU_HAS_FEATURE], [
9*2a58b312SMartin Matuska	ZFS_LINUX_TEST_SRC([cpu_has_feature], [
10*2a58b312SMartin Matuska		#include <linux/version.h>
11*2a58b312SMartin Matuska		#if LINUX_VERSION_CODE >= KERNEL_VERSION(4, 7, 0)
12*2a58b312SMartin Matuska		#include <asm/cpu_has_feature.h>
13*2a58b312SMartin Matuska		#else
14*2a58b312SMartin Matuska		#include <asm/cputable.h>
15*2a58b312SMartin Matuska		#endif
16*2a58b312SMartin Matuska	], [
17*2a58b312SMartin Matuska		return cpu_has_feature(CPU_FTR_ALTIVEC) ? 0 : 1;
18*2a58b312SMartin Matuska	], [], [ZFS_META_LICENSE])
19*2a58b312SMartin Matuska])
20*2a58b312SMartin MatuskaAC_DEFUN([ZFS_AC_KERNEL_CPU_HAS_FEATURE], [
21*2a58b312SMartin Matuska	AC_MSG_CHECKING([whether cpu_has_feature() is GPL-only])
22*2a58b312SMartin Matuska	ZFS_LINUX_TEST_RESULT([cpu_has_feature_license], [
23*2a58b312SMartin Matuska		AC_MSG_RESULT(no)
24*2a58b312SMartin Matuska	], [
25*2a58b312SMartin Matuska		AC_MSG_RESULT(yes)
26*2a58b312SMartin Matuska		AC_DEFINE(HAVE_CPU_HAS_FEATURE_GPL_ONLY, 1,
27*2a58b312SMartin Matuska		    [cpu_has_feature() is GPL-only])
28*2a58b312SMartin Matuska	])
29*2a58b312SMartin Matuska])
30