OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 3295|回复: 6

没事发个帖子,ATK-MP1开发板的GPU编译,

[复制链接]

1

主题

24

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
294
金钱
294
注册时间
2022-3-30
在线时间
44 小时
发表于 2022-6-1 16:45:58 | 显示全部楼层 |阅读模式
本帖最后由 海哥牛逼 于 2022-6-1 18:13 编辑

第一步:下载buildroot
下载最新的buildroot文件系统,链接:https://buildroot.org/downloads/buildroot-2021.11.tar.gz现有的,正点原子用的教程版本的bulidroot版本过低,所以要用新的buildroot版本
第二步:配置buildroot和内核
  选择ST官方的默认buildroot配置
  1. make stm32mp157c_dk2_defconfig
复制代码
2222.png
  选择以下配置
  1. Toolchain
  2. --> Toolchain (Custom toolchain) //使用自定义的交叉编译
  3. --> External toolchain gcc version (9.x) //编译的版本
  4. --> External toolchain C library (glibc/eglibc) //C库选择glibc
  5. --> Custom kernel headers series (4.20.x) //选择为4.20.x版本,是根据交叉编译器决定的
  6. -->  [*] Toolchain has C++ support? //使能C++库,用作编译QT
复制代码

压缩教程内核
  1. tar cvf kernel.tar ./*
  2. xz -z kernel.tar
复制代码
上面是压缩正点原子的教程源码,压缩完成后,在buildroot里面选择内核
  1. Kernel  --->
  2. -->[*] Linux Kernel
  3. --> Kernel version (Custom tarball) //选择自定义内核版本
  4. --> (/home/test/work/kernel.tar.xz) URL of custom kernel tarball //内核的压缩包路径
  5. --> (/home/test/work/defconfig) Configuration file path        //配置文件生成.config的配置
  6. --> (stm32mp157d-atk) In-tree Device Tree Source file names //设备树的默认文件
复制代码
111.png
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

1

主题

24

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
294
金钱
294
注册时间
2022-3-30
在线时间
44 小时
 楼主| 发表于 2022-6-1 16:53:42 | 显示全部楼层
本帖最后由 海哥牛逼 于 2022-6-1 18:15 编辑

第三步:配置GPU和QT(方便测试)
使能GPU配置
  1. Target packages
  2. --> Hardware handling
  3.      -->[*] gcnano-binaries //使能MP1的GPU驱动
复制代码
使能QT5配置
  1. Target packages
  2. -->Graphic libraries and applications (graphic/text)
  3.     --> [*] Qt5
  4.         --> [*]     Compile and install examples (with code)        //开启测试示例
  5.         --> [*]     gui module        //GUI模块
  6.         --> widgets module                //支持widgets
  7.         --> OpenGL support                //支持opengl
  8.         --> [*]         opengl module //使能OpenGL
  9.        --> [*]       eglfs support        //使能eglfs支持
  10.        --> [*]       fontconfig support
复制代码
在buildroot源码目录下创建dl目录,然后把刚刚创建内核的压缩包kernel.tar.xz拷贝到 dl目录,最后直接进行编译就行了
  1. make -j8
复制代码
output/images/生成内核zImage stm32mp157d-atk.dtbrootfs.tar文件。根据157的驱动教程替换这些文件就行了;当然肯定要使能LCD的
l  测试示例
  1. insmod /lib/modules/5.4.31/extra/galcore.ko
  2. cd /usr/lib/qt/examples/gui/openglwindow/
  3. export QT_QPA_EGLFS_ALWAYS_SET_MODE=1
  4. ./openglwindow
复制代码






回复 支持 反对

使用道具 举报

3

主题

36

帖子

0

精华

初级会员

Rank: 2

积分
150
金钱
150
注册时间
2020-6-11
在线时间
55 小时
发表于 2022-6-17 10:01:34 | 显示全部楼层
感谢!不编译内核,勾选
Target packages
--> Hardware handling
     -->[*] gcnano-binaries
可以吗?
回复 支持 反对

使用道具 举报

1

主题

24

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
294
金钱
294
注册时间
2022-3-30
在线时间
44 小时
 楼主| 发表于 2022-6-17 10:43:31 | 显示全部楼层
1203385078 发表于 2022-6-17 10:01
感谢!不编译内核,勾选
Target packages
--> Hardware handling

不行的,因为gpu需要内核的一些函数
回复 支持 反对

使用道具 举报

3

主题

36

帖子

0

精华

初级会员

Rank: 2

积分
150
金钱
150
注册时间
2020-6-11
在线时间
55 小时
发表于 2022-6-17 13:56:24 | 显示全部楼层
海哥牛逼 发表于 2022-6-17 10:43
不行的,因为gpu需要内核的一些函数

好的,谢谢
回复 支持 反对

使用道具 举报

2

主题

394

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2085
金钱
2085
注册时间
2012-5-8
在线时间
312 小时
发表于 2022-6-29 08:40:14 | 显示全部楼层
赞一个 继续更新
回复 支持 反对

使用道具 举报

0

主题

2

帖子

0

精华

初级会员

Rank: 2

积分
101
金钱
101
注册时间
2019-8-20
在线时间
22 小时
发表于 2022-8-11 01:35:05 | 显示全部楼层
谢谢楼主写的很好, 使用buildroot的确比yocto省事很多。小小补充一点,因为要编译gpu库所以需要用到linux内核,但是tfa、uboot、optee等是不需要的,所以menuconfig可以去掉不需要的。比如执行了官方默认配置文件(stm32mp157c_dk2_defconfig)后可以将System configuration  --->里面的Custom scripts.......填的内容去掉,Bootloaders  --->里面的全部取消勾选
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-22 12:18

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表