diff --git a/kernel/prebuilt_kernel_modules.go b/kernel/prebuilt_kernel_modules.go index 5bcca047e..e200ee2c1 100644 --- a/kernel/prebuilt_kernel_modules.go +++ b/kernel/prebuilt_kernel_modules.go @@ -50,6 +50,9 @@ type prebuiltKernelModulesProperties struct { // Kernel version that these modules are for. Kernel modules are installed to // /lib/modules/ directory in the corresponding partition. Default is "". Kernel_version *string + + // Whether this module is directly installable to one of the partitions. Default is true + Installable *bool } // prebuilt_kernel_modules installs a set of prebuilt kernel module files to the correct directory. @@ -62,6 +65,10 @@ func prebuiltKernelModulesFactory() android.Module { return module } +func (pkm *prebuiltKernelModules) installable() bool { + return proptools.BoolDefault(pkm.properties.Installable, true) +} + func (pkm *prebuiltKernelModules) KernelVersion() string { return proptools.StringDefault(pkm.properties.Kernel_version, "") } @@ -71,6 +78,9 @@ func (pkm *prebuiltKernelModules) DepsMutator(ctx android.BottomUpMutatorContext } func (pkm *prebuiltKernelModules) GenerateAndroidBuildActions(ctx android.ModuleContext) { + if !pkm.installable() { + pkm.SkipInstall() + } modules := android.PathsForModuleSrc(ctx, pkm.properties.Srcs) depmodOut := runDepmod(ctx, modules)