1. 修改I2C_4的驱动能力解决I2C通信不稳定问题。
由于I2C_4的通信不稳定导致SMB1360充电功能不正常,
解决方案是修改文件msm8916-pinctrl.dtsi 中代码:
i2c_4_active: i2c_4_active {
drive-strength = <4>; /* 4 MA */
bias-disable = <0>; /* No PULL */
};
由于I2C_4的通信不稳定导致SMB1360充电功能不正常,
解决方案是修改文件msm8916-pinctrl.dtsi 中代码:
i2c_4_active: i2c_4_active {
drive-strength = <4>; /* 4 MA */
bias-disable = <0>; /* No PULL */
};
把驱动电流改成4mA, 基本可以解决I2C通信不稳定问题。
2. 功耗相关NV项:
1027 = 0
1895 = 0
1892 = 0
1962 = 0
4679 = 16
4201 = 0
3851 = 0
3852 = 6
7157 = 1
69745 rxd_enable = 0
3. 修改系统默认时间,现在默认时间是1970-1-1, 可以改成别的时间,比如:2010-1-1
修改内核代码中文件 Rtc-lib.c 中的函数 rtc_time_to_tm ,把1970改成2010即可。
8916平台的内核rtc控制文件为 qpnp-rtc.c
4. 解决项目P9388睡眠底电流过大问题。
测试发现睡眠时底电流有9.3mA,跟踪发现系统睡眠时陀螺仪没有进入睡眠模式,
即函数 mpu3050_suspend 没有调用 mpu3050_set_power_mode 进入睡眠模式,
修改函数 mpu3050_suspend, 屏蔽掉语句if (sensor->enable) ÿ