查看“Linux内核-RGB LCD驱动移植”的源代码
←
Linux内核-RGB LCD驱动移植
跳转至:
导航
、
搜索
因为以下原因,你没有权限编辑本页:
您所请求的操作仅限于该用户组的用户使用:
用户
您可以查看与复制此页面的源代码。
==实验原理== 前文介绍过LTDC的内容,本节只需为LTDC添加一个面板即可。内核中包含一个通用的面板驱动,驱动之包含大量各种各样的面板。<br> *驱动修改<br> 驱动路径为:drivers/gpu/drm/panel/panel-simple.c<br> 移植时可以在驱动中支持新的面板的内容,也可以找到一个与自己面板相仿的内容进行修改,本节即使用在原有面板修改的方法。如本节参考面板名称为zj070na-01p,对于一个面板最关键的内容在驱动通过drm_display_mode的结构体描述,zj070na-01p的描述如下: <pre><nowiki> static const struct drm_display_mode innolux_zj070na_01p_mode = { .clock = 51501, .hdisplay = 1024, .hsync_start = 1024 + 128, .hsync_end = 1024 + 128 + 64, .htotal = 1024 + 128 + 64 + 128, .vdisplay = 600, .vsync_start = 600 + 16, .vsync_end = 600 + 16 + 4, .vtotal = 600 + 16 + 4 + 16, .vrefresh = 60, }; </nowiki></pre> 这个结构体主要用来描述面板的时序相关信息,时序框图如下: [[Image:55-1-1-1.png]] <br> hdisplay:有效显示区水平像素数量,对应Active Width<br> hsync_start:水平同步开始,对应hdispay + HFP<br> hsync_end:水平同步结束,对应hdisplay + HFP + HSYNC width(HPW)<br> htotal:水平总像素,对应hdisplay + HFP + HSYNC width + HBP<br> vdisplay:垂直显示像素,对应Active Height<br> vsync_start:垂直同步开始,对应vdispay + VFP<br> vsync_end:垂直像素结束,对应vdisplay + VFP + VSYNC width(VPW)<br> vtotal:垂直总像素,对应vdisplay + VFP + VSYNC width + VBP<br> vrefresh:刷新率<br> 面板芯片手册中关于时序的描述如下: [[Image:55-1-1-2.png]] <br> 表中可以确认HBP=140、HPW=20、HFP=160、VBP=20、VPW=3、VFP=12,修改面板信息如下: <pre><nowiki> static const struct drm_display_mode innolux_zj070na_01p_mode = { .clock = 51501, .hdisplay = 1024, .hsync_start = 1024 + 160, .hsync_end = 1024 + 160 + 20, .htotal = 1024 + 160 + 20 + 140, .vdisplay = 600, .vsync_start = 600 + 12, .vsync_end = 600 + 12 + 3, .vtotal = 600 + 12 + 3 + 12, .vrefresh = 60, }; </nowiki></pre> *设备树修改<br> 增加ltdc输出端口: <pre><nowiki> <dc { status = "okay"; port { #address-cells = <1>; #size-cells = <0>; ltdc_ep1_out: endpoint@1 { reg = <1>; remote-endpoint = <&panel_in_rgb>; }; }; }; </nowiki></pre> 增加面板节点: <pre><nowiki> panel: panel-rgb { compatible = "innolux,zj070na-01p"; pinctrl-names = "default", "sleep"; backlight = <&panel_backlight>; status = "okay"; port { panel_in_rgb: endpoint { remote-endpoint = <<dc_ep1_out>; }; }; }; </nowiki></pre> ==实验目的== 熟悉基于Linux操作系统下的摄像头设备驱动移植配置过程。 ==实验平台== ==实验步骤==
返回至
Linux内核-RGB LCD驱动移植
。
导航菜单
个人工具
登录
命名空间
页面
讨论
变种
视图
阅读
查看源代码
查看历史
更多
搜索
导航
首页
关于我们
联系我们
资料下载
STM32F103开发板
STM32U575开发板
STM32MP157开发板
Hi3861鸿蒙开发板
HaaS EDU开发板
ESP32开发板
i.MX8M Plus开发板
图书下载
嵌入式系列图书
物联网系列图书
Android系列图书
高校教仪
嵌入式实验室产品
物联网实验室产品
人工智能实验室产品
虚拟仿真实验室产品
行业应用实训室产品
虚拟仿真
嵌入式虚拟仿真平台
物联网虚拟仿真平台
人工智能虚拟仿真
友情链接
华清远见研发中心
元宇宙实验中心
华清远见硬件商城
工具
链入页面
相关更改
特殊页面
页面信息