高通开发笔记二
16. 组合键进入fastboot模式: bootable/bootloader/lk/app/aboot/aboot.c--->aboot_init()
17. app通过driver创建的开关控制节点device/qcom/d801/system.prop----->>>persist.sys.elecscreen.path=/sys/class/hanvon/hanvon0868/hanvon_state
19. 修改device/qcom/d801/overly/frameworks/base/core/res/res/values/config.xml
使用命令:mmm frameworks/base/core/res/ 编译生成out/target/product/d801/system/framework/framework-res.apk
push到手机:adb push framework-res.apk system/framework/
重启
21 sensor测试命令 sns_cm_test -r 20 -d 1 -s 40 -t 0
22. Setting添加新选项device/qcom/d801/overlay/packages/apps/Settings/res/values/bools.xml
编译: mmm packages/apps/Settings/
下载: adb push system/priv-app/Settings.apk system/priv-app/
23. otg设备树在msm8226.dtsi usb_otg: usb@f9a55000
24.
sudo vim /etc/udev/rules.d/70-Android.rules
sudo chmod a+rx /etc/udev/rules.d/70-Android.rules
手机Permission
adb shell setprop service.adb.root 1
vi ~/.android/adb_usb.ini
sudo adb kill-server
adb shell
修改SELinux 命令adb remount;adb shell;setenforce 0 查看命令getenforce. 如果root下仍不能向手机push,可以关闭SELinux试试
25. GPS代码hardware/qcom/gps/etc
26. 添加fastboot模式logo
进入fastboot模式是从bootable/bootloader/lk/app/aboot/aboot.c fastboot_init()函数开始进入的,只要在这个函数中添加图片即可。
添加图片code:
struct fbimage *fbimg= NULL;
struct fbimage default_fbimg = {0};
fbcon_clear();//清屏
fbimg = &default_fbimg;
fbimg->header.width = SPLASH_IMAGE_HEIGHT;
fbimg->header.height = SPLASH_IMAGE_WIDTH;
fbimg->image = (unsigned char *)imageBuffer_rgb888;
fbcon_putImage(fbimg, false);//可以在代码中搜一下,参考其它地方的用法使用;
27.抓log
ADB log (adb logcat -v time)
radio log (adb logcat -b radio -v time)
event log (adb logcat -b events -v time)
adb shell cat proc/kmsg > ~/log/kernel.log
adb shell logcat -v time > adb.log
adb shell logcat -b events -v time > event.log
cat proc/kmsg > /data/nt35596.txt &
28.触摸屏自动旋转
驱动probe函数中添加
#ifdef INPUT_PROP_DIRECT
__set_bit(INPUT_PROP_DIRECT, input->propbit);
#endif
在framesworks/base/services/input/InputReader.cpp中TouchInputMapper::configureParameters()中会根据它将
deviceType设置成DEVICE_TYPE_TOUCH_SCREEN
29. 串口测试:
把mytty 放到手机system/bin/
执行命令mytty ttyHSL1 RW //RW是随便写的,r只读,w只写,为空会错误,其它不为空就行
30. 高通sim卡热插拔
配置GPIO的文件,Non-HLOS/modem_proc/uim/uimdrv/src/hw/gpio_tlmm/uimdrv_gpio.c,搜索CARD_DETECT_GPIO
Please first make sure your HW detect GPIO work normal.
Then this NV70210 need match HW detect GPIO.
Set NV70210
hw_config.uim[0].ENABLE_UIM_HOTSWAP: TRUE
hw_config.UIM[0].UIM_HOTSWAP_POLARITY: ACTIVE_HIGH
hw_config.UIM[0].UIM_CARD_DETECT_GPIO_NUM:1----->This your detect GPIO num
hw_config.UIM[0].UIM_CARD_DETECT_GPIO_FUNC_SELECTION:0
hw_config.UIM[0].UIM_CARD_DETECT_GPIO_DRV_STRENGTH: 2MA
hw_config.UIM[0].UIM_CARD_DETECT_PULL_SETTING: No pull