概述
pinctrl的配置file是<project>.dts
备注:配置是以mt6735上gpio84举例的
1.配置成输入上拉
&pio {
test_pull_up: test_pull_up {
pins_cmd_dat {
pins = <PINMUX_GPIO84__FUNC_GPIO84>;
slew-rate = <0>;
bias-pull-up = <00>;
};
};
};
2.配置成输入下拉
&pio {
test_pull_down: test_pull_down {
pins_cmd_dat {
pins = <PINMUX_GPIO84__FUNC_GPIO84>;
slew-rate = <0>;
bias-pull-down = <00>;
};
};
};
3.配置成输入pull disable
&pio {
test_pull_none: test_pull_none {
pins_cmd_dat {
pins = <PINMUX_GPIO84__FUNC_GPIO84>;
slew-rate = <0>;
bias-disable;
};
};
};
4.配置成输出high
&pio {
test_out_high: test_out_high {
pins_cmd_dat {
pins = <PINMUX_GPIO84__FUNC_GPIO84>;
slew-rate = <1>;
bias-disable;
output-high;
};
};
};
5.配置成输出low
&pio {
test_out_low: test_out_low {
pins_cmd_dat {
pins = <PINMUX_GPIO84__FUNC_GPIO84>;
slew-rate = <1>;
bias-disable;
output-low;
};
};
};
6.配置成特定的mode
&pio {
test_mode: test_mode {
pins_cmd_dat {
pins = <PINMUX_GPIO84__FUNC_KCOL0>;
};
};
};
高通调试遇见过几种坑
1。dts配置不对。导致驱动没办法控制。
2。dts里面引脚被其他占用。导致控制失败
3。initrc里面的某个service启动的时候用掉了某个引脚。导致刚开始的几十秒是好的。后面不对。
最后
以上就是淡定心锁为你收集整理的kernel:dts&gpio几种常见设定的pinctrl配置的全部内容,希望文章能够帮你解决kernel:dts&gpio几种常见设定的pinctrl配置所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复