基于高通MSM8953平台的android系统GPIO驱动开发
一、GPIO驱动:
1.1、注册设备:
1.1.1、创建文件:
1)、在kernel/msm-4.9/drivers/下创建july文件夹。
2)、在july文件夹下创建Kconfig、Makefile、ledctrl.c文件。
3)、修改Kconfine文件:
添加 source "drivers/july/Kconfig"
4)、修改Makefile文件:
添加 obj-y += july/
1.1.2、添加编译选项:
1)、修改kernel/msm-4.9/drivers/leds下Makefile文件:
obj-y +=ledctrl.o
2)、修改kernel/msm-4.9/drivers/leds下Kconfig文件:
config LEDCTRL
bool
help
gpio controls the LED.
1.1.3、修改驱动配置文件,驱动编译进系统:
修改kernel/msm-4.9/arch/arm64/configs下的msm8953_defconfig文件:
CONFGI_LEDCTRL=y
1.2、注册驱动:
1.2.1、修改dts设备树文件:
1)、文件名:msm8953-mtp.dtsi。
2)、文件路径:kernel/msm-4.9/arch/arm64/boot/dts/qcom/msm8953-mtp.dtsi
3)、在&soc下添加:
&soc {
led_ctrl_gpio {
status = "okay";
compatible = "led_ctrl_gpio";
led_ctrl_gpio,gpio = <&tlmm 97 0x1>;
qcom,num-grp-pins = <1>;
qcom,pin-func = <0>;
pinctrl-names = "led_ctrl_gpio";
pinctrl-0 = <&gpio_led_active>;
label = "led_ctrl_gpio";
};
};
1.2.2、修改pinctrl文件:
1)、文件名:msm8953-pinctrl.dtsi。
2)、文件路径:kernel/msm-4.9/arch/arm64/boot/dts/qcom/msm8953-mtp-dtsi
3)、在&soc下添加:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!