立即注册
查看: 1077|回复: 7

[软件资料] 全志T3 PINCTRL模块使用说明文档

已绑定手机
发表于 2022-7-8 10:25:06 | 显示全部楼层 |阅读模式 来自 广东省深圳市
1.概述
1.1.编写目的
本文档对Linux3.10平台的GPIO接口使用进行详细的阐述,让用户明确掌握GPIO配置、申请等操作的编程方法。
1.2.适用范围
本文档适用于linux3.10内核,T3平台。
1.3.相关人员
本文档适用于所有需要在 Linux3.10+T3平台上开发设备驱动的人员。

2. 模块介绍
Pinctrl框架是 linux 系统为统一各 SOC 厂商 pin 管理,避免各 SOC 厂商各自实现相同 pin 管理子 系统而提出的。目的是为了减少 SOC 厂商系统移植工作量。
2.1. 模块功能介绍
许多SoC 内部都包含pin 控制器,通过pin 控制器,我们可以配置一个或一组引脚的功能和特性。 在软件上,Linux 内核pinctrl驱动可以操作pin 控制器为我们完成如下工作:
●枚举并且命名pin控制器可控制的所有引脚;
●提供引脚的复用能力
●提供配置引脚的能力,如驱动能力、上拉下拉、数据属性等。
●与 gpio 子系统的交互
●实现 pin 中断

2.2. 相关术语介绍
sunxi: Allwinner 的 SOC 硬件平台。
Pincontroller: 是对硬件模块的软件抽象,通常用来表示硬件控制器。能够处理引脚复用、属性 配置等功能。
Pin: 根据芯片不同的封装方式,可以表现为球形、针型等。软件上采用常用一组无符号的整数 [0-maxpin]来表示。
Pin groups: 外围设备通常都不只一个引脚,比如 SPI,假设接在 soc 的{0,8,16,24}管脚,而另一 个设备 I2C 接在 SOC 的{24,25}管脚。我们可以说这里有两个 pin groups。很多控制器都需要处理 pin groups。因此管脚控制器子系统需要一个机制用来枚举管脚组且检索一个特定组中实际枚举的管脚。
Pinconfig: 管脚可以被软件配置成多种方式,多数与它们作为输入/输出时的电气特性相关。例如, 可以设置一个输出管脚处于高阻状态,或是“三态”(意味着它被有效地断开连接)。或者可以通过设 置将一个输入管脚与 VDD 或 GND 相连(上拉/下拉),以便在没有信号驱动管脚时可以有个确定的值。
Pinmux: 引脚复用功能,使用一个特定的物理管脚(ball/pad/finger/等等)进行多种扩展复用,以 支持不同功能的电气封装的习惯。
Device tree: 犹如它的名字,是一颗包括 cpu 的数量和类别,内存基地址,总线与桥,外设连接\ 中断控制器和、gpio 以及 clock 器等系统资源的树,Pinctrl 驱动支持从 device tree 中定义的设备节点 获取 pin 的配置信息。
Script 脚本: 指的是打包到 img 中的 sys_config.fex 文件. 包含系统各模块配置参数。

2.3. 模块配置介绍
在命令行中进入内核根目录,执行 make ARCH=arm64 menuconfig 进入配置主界面,并按以下步 骤操作:
首先,选择 Device Drivers 选项进入下一级配置,如下图所示:
1.jpg

2.4 源码结构介绍
linux3.10
|-- drivers
| |-- pinctrl
| | |-- Kconfig
| | |-- Makefile
| | |-- core.c
| | |-- core.h
| | |-- devicetree.c
| | |-- devicetree.h
| | |-- pinconf.c
| | |-- pinconf.h
| | |-- pinmux.c
| | `-- pinmux.h
| `-- sunxi
| |-- pinctrl-sunxi-test.c
| |-- pinctrl-sun50iw1p1.c
| |-- pinctrl-sun50iw1p1-r.c
`-- include
`-- linux
`-- pinctrl
|-- consumer.h
|-- devinfo.h
......

更多详细内容请下载附件查看
游客,如果您要查看本帖隐藏内容请回复
已绑定手机
发表于 2022-8-3 15:15:20 | 显示全部楼层 来自 北京市
感谢大佬分享,学习一下
发表于 2022-8-12 09:20:15 | 显示全部楼层 来自 上海市嘉定区
感谢分享好资料
已绑定手机
发表于 2022-9-8 03:35:30 | 显示全部楼层 来自 河南省郑州市

谢谢分享全志技术资料
已绑定手机
发表于 2022-9-13 10:42:54 | 显示全部楼层 来自 山东省烟台市
谢谢老板分享
已绑定手机
发表于 2023-6-26 10:32:45 | 显示全部楼层 来自 广东省深圳市
感谢分享
已绑定手机
发表于 2023-12-12 14:09:20 | 显示全部楼层 来自 广东省清远市
学习学习
已绑定手机
发表于 2024-2-29 14:41:47 | 显示全部楼层 来自 天津市
看看看11
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

合作/建议

TEL: 19168984579

工作时间:
周一到周五 9:00-11:30 13:30-19:30
  • 扫一扫关注公众号
  • 扫一扫打开小程序
Copyright © 2013-2024 一牛网 版权所有 All Rights Reserved. 帮助中心|隐私声明|联系我们|手机版|粤ICP备13053961号|营业执照|EDI证
在本版发帖搜索
扫一扫添加微信客服
QQ客服返回顶部
快速回复 返回顶部 返回列表