Pinctrl调试指南
Pinctrl使用
S100芯片中3个sys包含可软件控制的pin脚,根据用户的需要,可以对pin脚进行功能复用,属性设置和电压域设置。
Pinmux功能
soc中的pin脚可以被设置为不同的功能,通过pinmux设置可以根据用户需要配置为相应的功能,每个引脚有四种复用功能可选。
Pinconf功能
soc中的pin脚可以被设置为不同的状态,共包含以下几种属性:
- 上下拉设置
- 驱动强度设置
- 电压模式设置
- 输入使能设置
- 施密特设置
- 压摆率选择
io-domain功能
S100中共存在两种电压域,分别为1.8v和3.3v,不同的pin脚需要工作在合适的电压域中。手册中将pin脚划分入power group中,在手册中可以看到每个power group控制着一组pin脚。
源码说明
pinctrl-hobot.c文件中包含了所有S100系列pinctrl的主逻辑代码,向pinctrl注册S100的pinctrl设备,并向下提供S100 pinctrl设备的注册。
/* 路径 */
hobot-drivers/pinctrl/pinctrl-hobot.c #pinctrl 驱动代码源文件
hobot-drivers/pinctrl/pinctrl-hobot.h #pinctrl 驱动代码头文件
pinctrl-hobot-s100.c文件中包含了所有s100的pin,pin group,pin function信息。
/* 路径 */
hobot-drivers/pinctrl/pinctrl-hobot-s100.c # S100 驱动数据代码