编程\_LCD驱动程序框架\_使用设备树
Posted 韦东山
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了编程\_LCD驱动程序框架\_使用设备树相关的知识,希望对你有一定的参考价值。
编程_LCD驱动程序框架_使用设备树
参考资料,GIT仓库里:
-
基于这个程序修改:
IMX6ULL\\source\\03_LCD\\03_lcd_drv_qemu_ok
STM32MP157\\source\\A7\\03_LCD\\03_lcd_drv_qemu_ok
-
参考:内核自带的示例驱动程序
- Linux驱动源码:
drivers/video/fbdev/simplefb.c
- 设备树:
arch/arm/boot/dts/sun4i-a10.dtsi
- Linux驱动源码:
-
本节视频编写好的代码
IMX6ULL\\source\\03_LCD\\06_lcd_drv_framework_use_devicetree
STM32MP157\\source\\A7\\03_LCD\\06_lcd_drv_framework_use_devicetree
1. 说明
Linux驱动程序 = 驱动程序框架 + 硬件编程。
在前面已经基于QEMU编写了LCD驱动程序,对LCD驱动程序的框架已经分析清楚。
核心就是:
- 分配fb_info
- 设置fb_info
- 注册fb_info
- 硬件相关的设置
本节课程我们基于设备树来编写驱动程序。
2. 入口函数注册platform_driver
3. 设备树有对应节点
framebuffer-mylcd {
compatible = "100ask,lcd_drv";
};
4. 编写probe函数
- 分配fb_info
- 设置fb_info
- 注册fb_info
- 硬件相关的设置
- 引脚设置
- 时钟设置
- LCD控制器设置
以上是关于编程\_LCD驱动程序框架\_使用设备树的主要内容,如果未能解决你的问题,请参考以下文章
__Kernel专栏文章导航与优秀笔记整理(2021.08.14更新)
i.MX6ULL驱动开发 | 34 - 基于SPI框架驱动spi lcd(st7789)