常用编译指令:
./mk MSM_14021 new_module (选10)编译kernel
./mk MSM_14021 new 全编译
./mk MSM_14021 remake 编译库,apk
./mk listp 查看有什么版本型号
./mk_all_msm.sh MSM_14021编译msm文件夹
单独编译adsp代码:
./build.sh 6 MSM_14021
生成的adsp文件:
msm8974/adsp_proc/obj/qdsp6v5_ReleaseG/LA/system/etc/firmware
单独刷adsp代码:
把文件"adsp更新.bat"放到生成adsp文件的文件夹,双击即可做单独操作。
//----------------------------------
用svn上取下来的out来编译hardware库:(如果代码版本不同,编译有时候会有问题,特别是编译kernel)
source mk_setenv.sh
mmm hardware/qcom/audio
用svn上取下来的out来编译kernel:
./build/tools/mk `pwd`
10
//----------------------------------
N3机型选用型号:MSM_FIND7
生成刷机包命令:
1. 在msm8974上运行命令 "./get_AllImage.sh MSM_14021" 生成的包在 msm8974的bin包下;
且每一包刷机包和刷机工具是配套的
2. kernel的.config .o文件位置 out_MSM_14021/target/product/msm8974/obj/KERNEL_OBJ/
单独刷boot:
adb reboot bootloader
fastboot flash boot Z:\14021\MSM8974.LA.3.0.30806.2_DEV_ROM\android\out_MSM_14021\target\product\msm8974\boot.img
fastboot reboot
查看更改的网站:http://192.168.15.88:8080/(提交的revision)
例:http://192.168.15.88:8080/D7898
源文件位置:
/hardware/qcom/audio/hal
/work/android/vendor/qcom/proprietary/mm-audio/audcal/family-b/acdbdata/8974/MTP_14021 acdb文件(database)
/work/android/vendor/qcom/proprietary/mm-audio/audio-acdb-util/acdb-loader/ acdb 源码
替换库:
adb remount
adb push Z:\android\out_MSM_14021\target\product\msm8974\system\lib\hw\audio.primary.msm8974.so /system/lib/hw
adb push Z:\14021\MSM8974.LA.3.0.30806.2_DEV_ROM\android\out_MSM_14021\target\product\msm8974\system\lib\hw\audio.primary.msm8974.so /system/lib/hw
adb push Z:\14021\MSM8974.LA.3.0.30806.2_DEV_ROM\android\out_MSM_14021\target\product\msm8974\system\lib\hw\audio_policy.default.so /system/lib/hw
动态打印log指令:
mount -t debugfs debugfs /sys/kernel/debug/
echo -n "file msm8974.c +p" > /sys/kernel/debug/dynamic_debug/control
echo -n "file wcd9320.c +p" > /sys/kernel/debug/dynamic_debug/control
echo -n "file wcd9xxx-core.c +p" > /sys/kernel/debug/dynamic_debug/control
echo -n "file wcd9xxx-irq.c +p" > /sys/kernel/debug/dynamic_debug/control
echo -n "file wcd9xxx-mbhc.c +p" > /sys/kernel/debug/dynamic_debug/control
echo -n "file wcd9xxx-resmgr.c +p" > /sys/kernel/debug/dynamic_debug/control
echo -n "file wcd9xxx-common.c +p" > /sys/kernel/debug/dynamic_debug/control
echo -n "file msm-pcm-routing-v2.c +p" > /sys/kernel/debug/dynamic_debug/control
mount -t debugfs debugfs /sys/kernel/debug/
echo -n "file q6adm.c +p" > /sys/kernel/debug/dynamic_debug/control
echo -n "file q6afe.c +p" > /sys/kernel/debug/dynamic_debug/control
echo -n "file msm-dai-q6-v2.c +p" > /sys/kernel/debug/dynamic_debug/control
echo -n "file soc-dapm.c +p" > /sys/kernel/debug/dynamic_debug/control
echo -n "file soc-pcm.c +p" > /sys/kernel/debug/dynamic_debug/control
echo -n "file msm8974.c +p" > /sys/kernel/debug/dynamic_debug/control
echo -n "file wcd9320.c +p" > /sys/kernel/debug/dynamic_debug/control
echo -n "file msm-dai-q6.c +p" > /sys/kernel/debug/dynamic_debug/control
echo -n "file msm-pcm-routing-v2.c +p" > /sys/kernel/debug/dynamic_debug/control
打印log:
1 .dmesg -c 打印当前log,并且清除缓冲区
2. 重启后,在/sdcard/admin可看到上次的完整log
logcat -s -vtime hardware_info msm8974_platform audio_hw_primary Mixer audio_route listen_hal_loader voice audio_hw_fm hfp_enable audio_hw_extn str_params voice_extn audio_hw_hfp compress_voip ACDB-LOADER&
可选 :audio_hw_fm hfp_enable audio_hw_extn str_params
查看耳机状态路径:
cat /sys/devices/virtual/switch/h2w/state
改变cpu状态:
echo performance > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
更改cpu频率(全部最高频率):
echo 1 > /sys/devices/system/cpu/cpu0/online
echo 1 > /sys/devices/system/cpu/cpu1/online
echo 1 > /sys/devices/system/cpu/cpu2/online
echo 1 > /sys/devices/system/cpu/cpu3/online
echo performance > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
echo performance > /sys/devices/system/cpu/cpu1/cpufreq/scaling_governor
echo performance > /sys/devices/system/cpu/cpu2/cpufreq/scaling_governor
echo performance > /sys/devices/system/cpu/cpu3/cpufreq/scaling_governor
语音助手log:
SpeechAccepterManagement
查看耳机上层状态:
logcat -s WiredHeadsetManager WiredAccessoryManager&
回路测试:
logcat -s audio_echo_test&
在java里打印堆栈的方法:
Log.d(TAG,Log.getStackTraceString(new Throwable()));
提交时候加的宏和注释规范:
1.----------更改时-----------
//#ifdef VENDOR_EDIT
/*OPPO 2014-10-27 yuanyan@PhoneSW.Driver add ,fix sound delay too long when changing ringtone with headset pluged (PATCH)*/
#ifdef CONFIG_OPPO_MSM_14021
adm_params.token = port_id;
#else
adm_params.token = copp_id;
#endif
/*OPPO 2014-10-27 yuanyan@PhoneSW.Driver Add end*/
2.----------添加时-----------
#ifdef VENDOR_EDIT
/*OPPO 2014-10-27 yuanyan@PhoneSW.Driver add ,fix sound delay too long when changing ringtone with headset pluged (PATCH)*/
#ifdef CONFIG_OPPO_MSM_14021
#endif
#endif
更改CPU performance:
echo performance > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
echo performance > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor