一、下载OpenSTLinux BSP 官网下载地址:https://www.st.com/en/embedded-software/stm32mp1dev.html#get-software 二、解压文件 将下载的文件复制到ubuntu系统解压 解压命令:root@ubuntu:/opt/st/source# tar xvf en.sources-stm32mp1-openstlinux-6.1-yocto-mickledore-mp1-v23.06.21.tar.gz 解压后的文件 三、编译linux内核 3.1、进入linux内核文件夹linux-stm32mp-6.1.28-stm32mp-r1-r0/ 3.2、解压linux内核 root@ubuntu:/opt/st/source/stm32mp1-openstlinux-6.1-yocto-mickledore-mp1-v23.06.21/sources/arm-ostl-linux-gnueabi/linux-stm32mp-6.1.28-stm32mp-r1-r0# tar xvf linux-6.1.28.tar.xz 解压后的内核文件 3.3、打补丁 root@ubuntu:/opt/st/source/stm32mp1-openstlinux-6.1-yocto-mickledore-mp1-v23.06.21/sources/arm-ostl-linux-gnueabi/linux-stm32mp-6.1.28-stm32mp-r1-r0/linux-6.1.28# for p in 3.4、编译内核 root@ubuntu:/opt/st/source/stm32mp1-openstlinux-6.1-yocto-mickledore-mp1-v23.06.21/sources/arm-ostl-linux-gnueabi/linux-stm32mp-6.1.28-stm32mp-r1-r0/linux-6.1.28# make ARCH=arm uImage vmlinux dtbs LOADADDR=0xC2000040 3.5、编译模块 root@ubuntu:/opt/st/source/stm32mp1-openstlinux-6.1-yocto-mickledore-mp1-v23.06.21/sources/arm-ostl-linux-gnueabi/linux-stm32mp-6.1.28-stm32mp-r1-r0/linux-6.1.28# make ARCH=arm modules 3.6、构建模块 root@ubuntu:/opt/st/source/stm32mp1-openstlinux-6.1-yocto-mickledore-mp1-v23.06.21/sources/arm-ostl-linux-gnueabi/linux-stm32mp-6.1.28-stm32mp-r1-r0/linux-6.1.28# mkdir -p $PWD/install_artifact/ root@ubuntu:/opt/st/source/stm32mp1-openstlinux-6.1-yocto-mickledore-mp1-v23.06.21/sources/arm-ostl-linux-gnueabi/linux-stm32mp-6.1.28-stm32mp-r1-r0/linux-6.1.28# make ARCH=arm INSTALL_MOD_PATH="$PWD/install_artifact" modules_install 四、复制文件到开发板 4.1、复制Linux内核到开发板 4.2、复制设备树到开发板 4.3、复制内核模块到开发板 root@ubuntu:/opt/st/source/stm32mp1-openstlinux-6.1-yocto-mickledore-mp1-v23.06.21/sources/arm-ostl-linux-gnueabi/linux-stm32mp-6.1.28-stm32mp-r1-r0/linux-6.1.28# rm install_artifact/lib/modules/6.1.28/build install_artifact/lib/modules/6.1.28/source root@ubuntu:/opt/st/source/stm32mp1-openstlinux-6.1-yocto-mickledore-mp1-v23.06.21/sources/arm-ostl-linux-gnueabi/linux-stm32mp-6.1.28-stm32mp-r1-r0/linux-6.1.28# find install_artifact/ -name "*.ko" | xargs $STRIP --strip-debug --remove-section=.comment --remove-section=.note --preserve-dates root@ubuntu:/opt/st/source/stm32mp1-openstlinux-6.1-yocto-mickledore-mp1-v23.06.21/sources/arm-ostl-linux-gnueabi/linux-stm32mp-6.1.28-stm32mp-r1-r0/linux-6.1.28# scp -r install_artifact/lib/modules/* root@192.168.1.105:/lib/modules 五、同步数据 在开发板上执行: root@stm32mp1:~# /sbin/depmod -a 重新构建模块项 root@stm32mp1:~# sync 将磁盘的数据与内存同步 root@stm32mp1:~# reboot 重启系统 以上就是编译和同步系统内核的步骤 |
STM32开发板推荐 | 支持裸跑的米尔STM32MP135开发板,响应硬实时需求
最新消息:意法半导体最具性价比、速度最快的单核MPU STM32MP13现已支持运行RTOS!意法半导体兑现了之前的承诺!
STM32MP135F-DK开发板 -- wifi连接网络
STM32MP135F-DK开发板 -- 搭建交叉编译环境
STM32MP135F-DK开发板评测-开箱亮屏
【STM32MP135-DK】裸机开发适配Llittlefs
STM32MP135F-DK 开箱&开发环境搭建&硬件设计分析
意法半导体扩展STM32Cube开发环境,简化单核STM32MP1裸机软件开发
1月18日有奖直播 | 如何在STM32MP13x上实现FOTA升级?
STM32MP135F-DK开发板 -- 摄像头测试