23. 中断配置_dws_dts

来源:互联网 发布:mac上的sfc模拟器 编辑:程序博客网 时间:2024/06/18 00:53
一、以计步器为例平台: androidN,MTK6737芯片: qma69811. 查看硬件连接或excel表格,确定中断脚 :GPIO602. 配置dws:GPIO60:  M0  Def.Dir:IN  In  GPIO_GSE_1_EINT_PIN EINT60:  GSE_1Debounce:0  Polarity:Low  Sensitive_Level:Level  DebounceEn:disable3. 修改dts添加中断控制引脚/* sensor gpio standization */+&pio {+/*   qma6981  interrupt setting */+QMA6981_pins_eint_int: eintconfig {+pins_cmd_dat {+pins = <PINMUX_GPIO60__FUNC_GPIO60>;+slew-rate = <0>;+bias-disable;+};+};++QMA6981_pins_default: eintdefault {+};alsps_intpin_cfg: alspspincfg {..../*   qma6981  interrupt setting */+&gsensor {+pinctrl-names = "default", "qma6981_eint_as_int";  +pinctrl-0 = <&QMA6981_pins_default>;+pinctrl-1 = <&QMA6981_pins_eint_int>;+status = "okay";    +};&alsps {修改dtsi,不然编译报错-gsensor@0 {+gsensor:gsensor@0 {compatible = "mediatek,gsensor";};/*qma6981  interrupt setting (dummy nodes)*/gse_1: gse_1 {compatible = "mediatek, gse_1-eint";-status = "disabled";+status = "okay";// 使能中断};二、 中断调试1. 查看中断--  查看中断是否注册成功cat /proc/interruptsCPU0CPU1...196:          0       GIC 196  mtk-kpd298:          0   mt-eint  10   TOUCH_PANEL-eint2. 查看pin脚模式cat /sys/class/misc/mtgpio/pinPIN:MODE,PULL_SEL,DIN,DOUT,PULL EN,DIR,IES,SMT0:1 1  1  0   1   0   1   01:  0 0  0  0   1   0   1   0【DIR】0 - in  1 - out中断方向因为in,如果查看反向不对,说明在别的地方被修改了写值echo \"-w=99:0 1 0 0 0 0 0 1\" > /sys/class/misc/mygpio/pin3. 检查dts与dtsi 看中段的GPIO口是否被复用了