Yocto: agregando la receta del módulo de kernel a la imagen, pero no se carga en el arranque

Para fines de prueba, estoy usando la receta de ejemplo proporcionada por yocto para demostrar cómo construir módulos de kernel.

SUMMARY = "Example of how to build an external Linux kernel module"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e"

inherit module

PR = "r0"
PV = "0.1"

SRC_URI = "file://Makefile \
           file://hello.c \
           file://COPYING \
          "

S = "${WORKDIR}"

# The inherit of module.bbclass will automatically name module packages with
# "kernel-module-" prefix as required by the oe-core build environment.

loshello.c El archivo es muy simple.

#include <linux/module.h>

int init_module(void)
{
    printk("Hello World!\n");
    return 0;
}

void cleanup_module(void)
{
    printk("Goodbye Cruel World!\n");
}

MODULE_LICENSE("GPL");

Ahora, agregué este módulo a mi receta de imagen.

SUMMARY = "A console-only image that fully supports the target device \
hardware."

IMAGE_FEATURES += "splash package-management"

IMAGE_INSTALL += "test-mod autoconf automake binutils make busybox"

LICENSE = "MIT"

inherit core-image

Cuando inicio la imagen, veo la prueba "hello.ko" en el directorio / lib / modules, pero cuando verificodmesg, No veo la salida que indica el módulo del kernel cargado.

Cuando corro manualmenteinsmod enhello.ko, Me sale la salida. Además, cuando corrormmod, Me sale la salida.

¿Qué estoy haciendo mal? Necesito este módulo para cargar automáticamente en el arranque.

editar:

Aquí la salida, verificando que el módulo no está cargado en el arranque, sino que es un módulo válido.

/ # dmesg | grep "Hello"
/ # insmod hello.ko 
[   68.503689] Hello World!
/ # rmmod hello.ko 
[   72.702035] Goodbye Cruel World!

Respuestas a la pregunta(1)

Su respuesta a la pregunta