前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Linux系统驱动之编程_配置时钟_基于IMX6ULL

Linux系统驱动之编程_配置时钟_基于IMX6ULL

作者头像
韦东山
发布2021-12-08 10:35:02
8500
发布2021-12-08 10:35:02
举报
文章被收录于专栏:韦东山嵌入式

资料下载

coding无法使用浏览器打开,必须用git工具下载:

代码语言:javascript
复制
git clone https://e.coding.net/weidongshan/linux/doc_and_source_for_drivers.git

视频观看

百问网驱动大全

资料下载

coding无法使用浏览器打开,必须用git工具下载:

代码语言:javascript
复制
git clone https://e.coding.net/weidongshan/linux/doc_and_source_for_drivers.git

视频观看

百问网驱动大全

编程_配置时钟_基于IMX6ULL

参考资料,GIT仓库里:

  • 芯片资料
    • IMX6ULL\开发板配套资料\datasheet\Core_board\CPU\IMX6ULLRM.pdf
      • 《Chapter 34 Enhanced LCD Interface (eLCDIF)》
  • IMX6ULL的LCD裸机程序
    • IMX6ULL\source\03_LCD\05_参考的裸机源码\03_font_test
  • 内核自带的IMX6ULL LCD驱动程序
    • 驱动源码:Linux-4.9.88\drivers\video\fbdev\mxsfb.c
    • 设备树:
      • arch/arm/boot/dts/imx6ull.dtsi
      • arch/arm/boot/dts/100ask_imx6ull-14x14.dts
  • 本节视频编写好的代码
    • IMX6ULL\source\03_LCD\08_lcd_drv_clk_config_use_devicetree
  • 引脚配置工具/设备树生成工具
    • 打开:http://download.100ask.net/
    • 找到开发板:“100ASK_IMX6ULL_PRO开发板”
    • 下载开发板配套资料
    • 下载完后,工具在如下目录里:
在这里插入图片描述
在这里插入图片描述

1. 硬件相关的操作

LCD驱动程序的核心就是:

  • 分配fb_info
  • 设置fb_info
  • 注册fb_info
  • 硬件相关的设置

硬件相关的设置又可以分为3部分:

  • 引脚设置
  • 时钟设置
  • LCD控制器设置

2. 分析内核自带的驱动程序

2.1 芯片手册
在这里插入图片描述
在这里插入图片描述
2.2 设备树

参考:arch/arm/boot/dts/imx6ull.dtsi

代码语言:javascript
复制
                       lcdif: lcdif@021c8000 {
                                compatible = "fsl,imx6ul-lcdif", "fsl,imx28-lcdif";
                                reg = <0x021c8000 0x4000>;
                                interrupts = <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH>;
                                clocks = <&clks IMX6UL_CLK_LCDIF_PIX>,
                                         <&clks IMX6UL_CLK_LCDIF_APB>,
                                         <&clks IMX6UL_CLK_DUMMY>;
                                clock-names = "pix", "axi", "disp_axi";
                                status = "disabled";
                        };

定义了3个时钟:

  • pix:Pixel clock,用于LCD接口,设置为LCD手册上的参数
  • axi:AXI clock,用于传输数据、读写寄存器,使能即可
  • disp_axi:一个虚拟的时钟,可以不用设置
2.3 代码

3. 自己写代码

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021/08/25 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 资料下载
  • 视频观看
  • 资料下载
  • 视频观看
  • 编程_配置时钟_基于IMX6ULL
    • 1. 硬件相关的操作
      • 2. 分析内核自带的驱动程序
        • 2.1 芯片手册
        • 2.2 设备树
        • 2.3 代码
      • 3. 自己写代码
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档