基于STM32MP157的GPU编程之DRM驱动调试
linux系统GPU编程之DRM编程
背景:
framebuffer大家都知道哈,打开/dev/fb0设备节点,然后开辟一段内存(即显存),再mmap,在吧图形数据填充到这段显存里面。怎么填,比如QT,有一套图形系统,他帮你填,或者ubuntu等系统。
现在安卓手机都有GPU,Linux也跟着进步,再加上人工智能,需要GPU做硬件加速。目前Linux的显示系统基本都是基于drm驱动,这点在linux 4.0 5.0以后都非常常见。
DRM驱动原理,看这篇就够了:
DRM (Direct Rendering Manager)
一 对驱动程序的几种操作方法
我们知道,Linux对驱动的操作有以下几种:
1 一种是/dev下的设备节点文件,
2 proc文件系统
3 sys文件系统。
这里讲第一种,dev下的设备节点。Linux显卡下的设备节点是:
/dev/dri/card0
二 modeset工具使用
2.1 对于DRM显卡的测试,目前比较流行的是modeset,这个源码在我的git。
https://gitee.com/caledonian_study/modeset.git
2.2 modeset其实调用了libdrm这个库,流程是这样的。
2.3 为了适配ST的交叉工具链,我对makefile做了修改,另外我对modeset.c做了修改,为的是显示4个矩形框。
docs是makefile进行编译的,
modeset-qmake是可以用qtcreak打开进行编译的。
modeset-cmake目前还没有搞定,留着以后有时间了再搞吧。
三 编译过程
https://gitee.com/caledonian_study/modeset/blob/master/README.md
四 最终效果
基于STM32MP157的GPU编程之DRM驱动调试相关推荐
- 基于Linux的Socket编程之TCP全双工Server-Client聊天程序
转载:http://blog.csdn.net/apollon_krj/article/details/53437764#0-tsina-1-58570-397232819ff9a47a7b7e80a ...
- 【实战篇】模块化编程之LCD驱动框架详解
ID:嵌入式云IOT技术圈 作者:杨源鑫 传送门:[架构篇]嵌入式编程中如何给代码的结构分层 废话不多说,理论讲太多没啥感觉,这些条条框框本质就是基于面对对象的设计模式相关的一些理论,设计模式就是前人 ...
- 树莓派模块化编程之TM1637驱动四位数码管
一.驱动TM1637的时序图 二.代码实现 #encoding:utf-8 import RPi.GPIO as GPIO import time GPIO.setwarnings(False) GP ...
- GPU编程之CUDA(三)——关于联想Y470
解决闪退问题-- 配置了几天,发现示例程序运行之后闪退 以为是显卡驱动的问题,于是去NVIDIA官网下载了最新的驱动,但是之后还是闪退 在这个过程中还尝试过禁用集成显卡,结果黑屏了...后来随意按了键 ...
- GPU编程之GUDA(四)——基础知识补充
主机函数:在CPU上调用,CPU上执行的函数 全局函数:在CPU上调用,GPU上执行的函数 设备函数:在GPU上调用,GPU上执行的函数--它的线程配置由调用关系中最近的全局函数决定 主机函数在声明时 ...
- 基于Linux的SOCKET编程之TCP半双工Client-Server聊天程序
转自:http://blog.csdn.net/apollon_krj/article/details/53398448#0-tsina-1-64987-397232819ff9a47a7b7e80a ...
- RK3288:linux系统中基于I2C的数字温度传感器TCN75A的驱动调试
CPU:RK3288 Kernel:4.4 Systerm:linux(buidroot) IC:TCN75A 下面我们来看这款芯片的介绍: 引脚介绍,一共八个引脚: 引脚描述: 我选择的是9位,0. ...
- 基于python的modbus协议编程_通往未来的网络可编程之路:Netconf协议与YANG Model
近年来,随着全球云计算领域的不断发展与业务的不断增长,促使网络技术也不断发展,SDN技术应运而生,从最初的基于Openflow的转发与控制分离的核心思想,人们不断的去扩展SDN的外延,目前,人们可以达 ...
- linux c 多显卡编程,Linux 编程之GPU计算(转)
08月11日(星期六) Linux 编程之GPU计算(转) 关于brookgpu的简要介绍看下面的链接: 本文翻译了斯坦福大学网站上的关于brookgpu语言的一篇文章,原文在: 关于brookgpu ...
最新文章
- HarmonyOS 设置图标在Text 旁边
- 2011-11-27
- 面试官:你能聊聊高并发下的接口幂等性如何实现吗?
- 文巾解题 1816. 截断句子
- idea链接oracle数据库报错:[66000][12505] Listener refused the connection with the following error:
- Exynos4412 IIC总线驱动开发(二)—— IIC 驱动开发
- 手机百度输入法的用户体验
- linux命令编译C语言程序
- SQL Server插入binary类型的数据
- 【版本控制】Github for Windows客户端的使用
- 红月3.8登入器重新设计并且支持窗口化兼容win10
- 做科普自媒体是怎么挣钱的?
- Cursor 详解及使用
- 清翔51单片机开发板及原理图-去年购买的
- 浅谈交换机和路由器的区别
- 绍耕反失败学课程(01)— —人生只做一件事
- oracle固定资产部门分摊,用友软件操作手册--固定资产--多部门使用、分摊处理...
- scrapy模拟登陆强智教务系统
- 物理机无法ping通虚拟机,虚拟机能ping通物理机
- 什么牌子的护眼灯对眼睛好?性价比最高的护眼灯
热门文章
- python翻译器怎么下载_Python实现桌面版翻译工具教程
- 电脑缺少msvcp140.dll怎么办,缺少msvcp140一键修复方法
- RGB图片隐写术免杀
- APP自动化测试框架
- Thread类源码解读1--如何创建和启动线程
- JasperReport导出excel包含公式
- jsp导出excel教程及常见问题
- 快速搭建Kerberos服务端及入门使用
- 【Android】短信应用——短信截获
- HTML5期末大作业:电影网站设计——迪斯尼公主滚动特效(7页) HTML5网页设计成品_学生DW静态网页设计代做_web课程设计网页制作