Dear Weidong sun,
Thank you for your reply.
I am also experimenting with the contents of Karangajar.
However, I do not know if that method is correct.
I took the following steps:
1. After installing ToolChain, I changed the contents of the environment-setup-cortexa9hf-neon-poky-linux-gnueabi file from hard to softfp.
Toolchain -> environment-setup-cortexa9hf-neon-poky-linux-gnueabi
>> export CC="arm-poky-linux-gnueabi-gcc -mfpu=neon -mfloat-abi=softfp -mcpu=cortex-a9 --sysroot=$SDKTARGETSYSROOT"
2.Then I ran the source command to check CC.
xxxxxx@xxxxxx-HP-EliteDesk-800-G3-SFF:~/yocto/tool/populate_sdk$ source environment-setup-cortexa9hf-neon-poky-linux-gnueabi
xxxxxx@xxxxxx-HP-EliteDesk-800-G3-SFF:~/yocto/tool/populate_sdk$ echo $CC
arm-poky-linux-gnueabi-gcc -mfpu=neon -mfloat-abi=softfp -mcpu=cortex-a9 --sysroot=/home/xxxxxx/yocto/tool/populate_sdk/sysroots/cortexa9hf-neon-poky-linux-gnueabi
3.Then compiled.
*Executing the make command gives the same warning as before.
xxxxxx@xxxxxx-HP-EliteDesk-800-G3-SFF:~/yocto/Kerne_driver/bme280_driver$ make
make ARCH=arm CROSS_COMPILE=arm-poky-linux-gnueabi- -C /home/xxxxxx/yocto/imx-yocto-bsp/build-x11/tmp/work/imx6qsabresd-poky-linux-gnueabi/linux-imx/4.19.35-r0/build M=/home/xxxxxx/yocto/Kerne_driver/bme280_driver modules
make[1]: ディレクトリ '/home/xxxxxx/yocto/imx-yocto-bsp/build-x11/tmp/work/imx6qsabresd-poky-linux-gnueabi/linux-imx/4.19.35-r0/build' に入ります
CC [M] /home/xxxxxx/yocto/Kerne_driver/bme280_driver/bme280_driver.o
Building modules, stage 2.
MODPOST 1 modules
WARNING: "__aeabi_f2d" [/home/xxxxxx/yocto/Kerne_driver/bme280_driver/bme280_driver.ko] undefined!
WARNING: "__aeabi_fdiv" [/home/xxxxxx/yocto/Kerne_driver/bme280_driver/bme280_driver.ko] undefined!
WARNING: "__aeabi_i2f" [/home/xxxxxx/yocto/Kerne_driver/bme280_driver/bme280_driver.ko] undefined!
CC /home/xxxxxx/yocto/Kerne_driver/bme280_driver/bme280_driver.mod.o
LD [M] /home/xxxxxx/yocto/Kerne_driver/bme280_driver/bme280_driver.ko
4. Finally, I'm loading the kernel module the way you taught me.
root@imx6qsabresd:/# cd /lib/modules/4.19.35-1.1.0+g0f9917c56d59/
root@imx6qsabresd:/lib/modules/4.19.35-1.1.0+g0f9917c56d59# ls
bme280_driver.ko modules.alias.bin modules.dep.bin modules.symbols
extra modules.builtin modules.devname modules.symbols.bin
kernel modules.builtin.bin modules.order
modules.alias modules.dep modules.softdep
root@imx6qsabresd:/lib/modules/4.19.35-1.1.0+g0f9917c56d59# modinfo bme280_driver.ko
filename: /lib/modules/4.19.35-1.1.0+g0f9917c56d59/bme280_driver.ko
license: Dual BSD/GPL
author: Takumi Ono
srcversion: 54CFC6B0D34B45253A0E89B
alias: i2c:AE_BME280_Driver
depends:
name: bme280_driver
vermagic: 4.19.35-1.1.0+g0f9917c56d59 SMP preempt mod_unload modversions ARMv7 p2v8
parm: i2c_channel:int
parm: sampling_time:int
root@imx6qsabresd:/lib/modules/4.19.35-1.1.0+g0f9917c56d59# modprobe bme280_driver.ko
modprobe: FATAL: Module bme280_driver.ko not found in directory /lib/modules/4.19.35-1.1.0+g0f9917c56d59
Is it the right way?
Best regards,
takumi ono