全志 添加PWM7参数

简介: 全志 添加PWM7参数

本文介绍如何在全志的硬件描述文件中添加PWM7的参数。这是一个针对Linux内核的设备树源文件(DTS)的修改,特定于全志的硬件平台。

以下是对修改的简要概述:

  1. 文件修改:文件路径为lichee/linux-3.10/arch/arm/boot/dts/sun8iw11p1.dtsi
添加pwm7的参数
 
diff --git a/lichee/linux-3.10/arch/arm/boot/dts/sun8iw11p1.dtsi b/lichee/linux-3.10/arch/arm/boot/dts/sun8iw11p1.dtsi
index db8d122..102d0bd 100755
--- a/lichee/linux-3.10/arch/arm/boot/dts/sun8iw11p1.dtsi
+++ b/lichee/linux-3.10/arch/arm/boot/dts/sun8iw11p1.dtsi
@@ -1254,9 +1254,9 @@
                pwm: pwm@01c23400 {
                        compatible = "allwinner,sunxi-pwm";
                        reg = <0x0 0x01c23400 0x0 0x154>;
-                       pwm-number = <1>;
+                       pwm-number = <3>;
                        pwm-base = <0x0>;
-                       pwms = <&pwm0>, <&pwm1>;
+                       pwms = <&pwm0>, <&pwm1>,<&pwm7>;
                };
 
                pwm0: pwm0@01c23400 {
@@ -1437,6 +1437,96 @@
                        reg_active_width = <0x10>;
                };
 
+               pwm7: pwm7@01c23400 {
+                       compatible = "allwinner,sunxi-pwm7";
+                       pinctrl-names = "active", "sleep";
+                       reg_base = <0x01c23400>;
+                       reg_peci_offset = <0x00>;
+                       reg_peci_shift = <0x07>;
+                       reg_peci_width = <0x01>;
+
+                       reg_pis_offset = <0x04>;
+                       reg_pis_shift = <0x07>;
+                       reg_pis_width = <0x01>;
+
+                       reg_crie_offset = <0x10>;
+                       reg_crie_shift = <0x07>;
+                       reg_crie_width = <0x01>;
+
+                       reg_cfie_offset = <0x10>;
+                       reg_cfie_shift = <0x01>;
+                       reg_cfie_width = <0x01>;
+
+                       reg_cris_offset = <0x14>;
+                       reg_cris_shift = <0x07>;
+                       reg_cris_width = <0x01>;
+
+                       reg_cfis_offset = <0x14>;
+                       reg_cfis_shift = <0x01>;
+                       reg_cfis_width = <0x01>;
+
+                       reg_clk_src_offset = <0x20>;
+                       reg_clk_src_shift = <0x07>;
+                       reg_clk_src_width = <0x02>;
+
+                       reg_bypass_offset = <0x20>;
+                       reg_bypass_shift = <0x05>;
+                       reg_bypass_width = <0x01>;
+
+                       reg_clk_gating_offset = <0x2c>;
+                       reg_clk_gating_shift = <0x04>;
+                       reg_clk_gating_width = <0x01>;
+
+                       reg_clk_div_m_offset = <0x2c>;
+                       reg_clk_div_m_shift = <0x00>;
+                       reg_clk_div_m_width = <0x04>;
+
+                       reg_pdzintv_offset = <0x3c>;
+                       reg_pdzintv_shift = <0x08>;
+                       reg_pdzintv_width = <0x08>;
+
+                       reg_dz_en_offset = <0x3c>;
+                       reg_dz_en_shift = <0x00>;
+                       reg_dz_en_width = <0x01>;
+
+                       reg_enable_offset = <0x40>;
+                       reg_enable_shift = <0x07>;
+                       reg_enable_width = <0x01>;
+
+                       reg_cap_en_offset = <0x44>;
+                       reg_cap_en_shift = <0x07>;
+                       reg_cap_en_width = <0x01>;
+
+                       reg_period_rdy_offset = <0x140>;
+                       reg_period_rdy_shift = <0x0b>;
+                       reg_period_rdy_width = <0x01>;
+
+                       reg_pul_start_offset = <0x140>;
+                       reg_pul_start_shift = <0x0a>;
+                       reg_pul_start_width = <0x01>;
+
+                       reg_mode_offset = <0x140>;
+                       reg_mode_shift = <0x09>;
+                       reg_mode_width = <0x01>;
+
+                       reg_act_sta_offset = <0x140>;
+                       reg_act_sta_shift = <0x08>;
+                       reg_act_sta_width = <0x01>;
+
+                       reg_prescal_offset = <0x140>;
+                       reg_prescal_shift = <0x00>;
+                       reg_prescal_width = <0x08>;
+
+                       reg_entire_offset = <0x144>;
+                       reg_entire_shift = <0x10>;
+                       reg_entire_width = <0x10>;
+
+                       reg_active_offset = <0x144>;
+                       reg_active_shift = <0x00>;
+                       reg_active_width = <0x10>;
+               };
+
+               
  1. PWM节点修改
  • 在原有的pwm节点中,pwm-number<1>更改为<3>,这意味着现在有3个PWMs。
  • pwms属性中,添加了对pwm7的引用。
  1. 添加PWM7节点
  • 新增了一个名为pwm7的节点,它描述了PWM7的各种属性和寄存器偏移量。
  • 这个节点包含了PWM7的兼容性、引脚控制、各种寄存器的偏移量、位移和宽度等信息。

这些修改意味着现在系统可以识别和使用PWM7,并且为其配置了正确的参数。这对于需要调试使用PWM7的驱动程序来说是必要的。

相关文章
|
存储 监控 Linux
【Linux IO多路复用 】 Linux下select函数全解析:驾驭I-O复用的高效之道
【Linux IO多路复用 】 Linux下select函数全解析:驾驭I-O复用的高效之道
2600 0
|
算法 SoC
在写PWM风扇驱动之前:如何透过FG信号,获取风扇转速?
本文介绍了如何通过PWM风扇的FG信号线获取风扇转速的方法,包括风扇规格的解读、FG信号的公式推导、软件算法的解析,以及在全志H713平台上实现风扇转速获取的驱动代码示例。
2097 2
在写PWM风扇驱动之前:如何透过FG信号,获取风扇转速?
|
索引
【Qt 学习笔记】Qt常用控件 | 多元素控件 | List Widget的说明及介绍
【Qt 学习笔记】Qt常用控件 | 多元素控件 | List Widget的说明及介绍
1260 3
如何撰写一份清晰有效的说明文档
在软件开发、产品开发以及各种工作任务中,编写一份清晰有效的说明文档是至关重要的。一份好的说明文档能够帮助读者理解事物的背景、目标和操作步骤,提高工作效率,减少沟通成本。
|
算法 API 开发工具
ArcFace
ArcFace 是虹软公司开发的一款人脸识别 SDK,它具有高性能、高精度、高鲁棒性等特点,支持多种人脸检测、识别和跟踪技术,可用于多种场景,如手机解锁、身份认证、人脸支付等。
682 1
我们需要安装`websockets`库(如果尚未安装)
我们需要安装`websockets`库(如果尚未安装)
|
Web App开发 移动开发 编解码
FFmpeg开发笔记(三十二)利用RTMP协议构建电脑与手机的直播Demo
本文讨论了实时数据传输在互联网中的重要性,如即时通讯和在线直播。一对一通信通常使用WebRTC技术,但一对多直播需要流媒体服务器和特定协议,如RTSP、RTMP、SRT或RIST。RTMP由于其稳定性和早期普及,成为国内直播的主流。文章通过实例演示了如何使用OBS Studio和RTMP Streamer进行RTMP推流,并对比了不同流媒体传输协议的优缺点。推荐了两本关于FFmpeg和Android开发的书籍以供深入学习。
455 0
FFmpeg开发笔记(三十二)利用RTMP协议构建电脑与手机的直播Demo
|
安全 前端开发 Linux
显示子系统、显示子前后端、LinuxFB与Wayland的区别分析
显示子系统、显示子前后端、LinuxFB与Wayland的区别分析
|
C++ Windows
Qt configure脚本说明
configure脚本功能非常强大,可以通过它对qt进行配置裁剪, 为了编译更快一点可以使用下面参数: -fast 快速配置 -nomake 可以不编译不需要的文件夹,根目录下面的目录都可以过滤 比如 -nomake examples -nomake demos  -nomake tools 等等 另外就是一些不需要的模块也可以通过配置脚本来启用或者禁用,除了一些必须的模块像gui,corelib等,都是根据配置环境监测的,如果检测到不能编译,那么就自动禁用,否则就启用。
1922 0
|
运维 Linux Go
嵌入式linux下的c语言日志log模块,功能增强(二)
嵌入式linux下的c语言日志log模块,功能增强(二)

热门文章

最新文章