sensor调试

来源:互联网 发布:网络广告数据 编辑:程序博客网 时间:2024/06/01 10:24

现在要在msm8917平台调试gsensor和psensor,FAE给了公版驱动代码。

1.添加i2c-4:在msm8917.dtsi添加如下代码:

// add 0909
i2c_4: i2c@78b5000 { /* BLSP1 QUP4 */
compatible = "qcom,i2c-msm-v2";
#address-cells = <1>;
#size-cells = <0>;
reg-names = "qup_phys_addr";
reg = <0x78b5000 0x1000>;
interrupt-names = "qup_irq";
interrupts = <0 98 0>;
clocks = <&clock_gcc clk_gcc_blsp1_ahb_clk>,
<&clock_gcc clk_gcc_blsp1_qup4_i2c_apps_clk>;
clock-names = "iface_clk", "core_clk";
qcom,clk-freq-out = <100000>;
qcom,clk-freq-in  = <19200000>;
pinctrl-names = "i2c_active", "i2c_sleep";
pinctrl-0 = <&i2c_4_active>;
pinctrl-1 = <&i2c_4_sleep>;
qcom,noise-rjct-scl = <0>;
qcom,noise-rjct-sda = <0>;
dmas = <&dma_blsp1 10 64 0x20000020 0x20>,
<&dma_blsp1 11 32 0x20000020 0x20>;
dma-names = "tx", "rx";
qcom,master-id = <87>;


elan@49 {
compatible = "qcom,epl259x";
reg = <0x49>;
interrupts = <43 0x2>;
//vdd-supply = <&pm8917_l6>;
//vio-supply = <&pm8917_l6>;
//vi2c-supply = <&pm8917_l6>;
};
stk8baxx@18 {
compatible = "stk,stk8baxx";
reg = <0x18>;
};
};

在aliases {
/* smdtty devices */
smd1 = &smdtty_apps_fm;
smd2 = &smdtty_apps_riva_bt_acl;
smd3 = &smdtty_apps_riva_bt_cmd;
smd4 = &smdtty_mbalbridge;
smd5 = &smdtty_apps_riva_ant_cmd;
smd6 = &smdtty_apps_riva_ant_data;
smd7 = &smdtty_data1;
smd8 = &smdtty_data4;
smd11 = &smdtty_data11;
smd21 = &smdtty_data21;
smd36 = &smdtty_loopback;
spi3 = &spi_3;
i2c2 = &i2c_2;
i2c5 = &i2c_5;
i2c3 = &i2c_3;
i2c4 = &i2c_4;
sdhc1 = &sdhc_1; /* SDC1 eMMC slot */
sdhc2 = &sdhc_2; /* SDC2 for SD card */
};

添加i2c4 = &i2c_4;

2.在文件msm8917-pmi8937-qrd-sku5.dtsi里添加如下代码:

#if 1
i2c@78b5000{   // BLSP1 QUP1 
stk8baxx@18 {
compatible = "stk,stk8baxx";
reg = <0x18>;
pinctrl-names = "default";
//pinctrl-0 = <&stk8baxx_default>;
//pinctrl-1 = <&stk8baxx_sleep>;
interrupt-parent = <&tlmm>;
interrupts = <44 0x2>;
vdd-supply = <&pm8917_l6>;
vio-supply = <&pm8917_l6>;
vi2c-supply = <&pm8917_l6>;
stk8baxx,irq-gpio = <&tlmm 44 0x02>;
stk,direction = <1>;
};

epl259x@49 {
       compatible = "epl,epl259x";
reg = <0x49>;
//interrupt-parent = <&msm_gpio>;
interrupts = <43 0x2>;
vdd-supply = <&pm8917_l10>;
vi2c-supply = <&pm8917_l6>;
//epl,irq-gpio = <&msm_gpio 43 0x02>;
}; 
        };
#endif  

3.在msm8917-pinctrl.dtsi文件里添加如下代码:

i2c_4 {
i2c_4_active: i2c_4_active {
/* active state */
mux {
pins = "gpio14", "gpio15";
function = "blsp_i2c4";
};


config {
pins = "gpio14", "gpio15";
drive-strength = <2>;
bias-disable;
};
};


i2c_4_sleep: i2c_4_sleep {
/* suspended state */
mux {
pins = "gpio14", "gpio15";
function = "gpio";
};


config {
pins = "gpio14", "gpio15";
drive-strength = <2>;
bias-disable;
};
};
};

在adb sys/bus/i2c/device下查看,i2c-4已注册。


原创粉丝点击