linux-uconsole/scripts/mod
Ard Biesheuvel 197028d295 cpu: add generic support for CPU feature based module autoloading
This patch adds support for advertising optional CPU features over udev
using the modalias, and for declaring compatibility with/dependency upon
such a feature in a module.

The mapping between feature numbers and actual features should be provided
by the architecture in a file called <asm/cpufeature.h> which exports the
following functions/macros:
- cpu_feature(FEAT), a preprocessor macro that maps token FEAT to a
  numeric index;
- bool cpu_have_feature(n), returning whether this CPU has support for
  feature #n;
- MAX_CPU_FEATURES, an upper bound for 'n' in the previous function.

The feature can then be enabled by setting CONFIG_GENERIC_CPU_AUTOPROBE
for the architecture.

For instance, a module that registers its module init function using

  module_cpu_feature_match(FEAT_X, module_init_function)

will be probed automatically when the CPU's support for the 'FEAT_X'
feature is advertised over udev, and will only allow the module to be
loaded by hand if the 'FEAT_X' feature is supported.

Change-Id: Icae8e3ff347235fc72a5b41279f0afdb34fb161a
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2014-08-28 10:22:26 -07:00
..
.gitignore mod/file2alias: make modalias generation safe for cross compiling 2013-01-24 22:48:04 +01:00
devicetable-offsets.c cpu: add generic support for CPU feature based module autoloading 2014-08-28 10:22:26 -07:00
empty.c
file2alias.c cpu: add generic support for CPU feature based module autoloading 2014-08-28 10:22:26 -07:00
Makefile Fix cleaning in scripts/mod 2013-05-06 23:40:54 +02:00
mk_elfconfig.c module: make MODULE_SYMBOL_PREFIX into a CONFIG option 2009-12-15 16:28:26 +10:30
modpost.c modpost: fix unwanted VMLINUX_SYMBOL_STR expansion 2013-04-29 11:41:42 +09:30
modpost.h modpost: Fix modpost license checking of vmlinux.o 2012-04-09 20:52:56 -07:00
sumversion.c kbuild: Fix computing srcversion for modules 2011-03-13 15:59:58 -07:00