代码下载

  • repo init -u gitadmin@gitmirror.spreadtrum.com:android/platform/manifest.git -b sprdroid9.0_trunk
  • repo sync -dcq -j4

代码编译

  • source ./build/envsetup.sh
  • lunch 12
  • kheader
  • make bootimage -j4
  • make systemimage -j4

Android Q

  • cd bsp; source build/envsetup.sh; lunch 2; make headers;make modules
  • cd ${CodeBase}; source build/envsetup.sh; lunch 31;make bootimage -j4 ; cd vendor/sprd/modules/libcamera; mma -j4

烧写kernel & camear动态库

  • sudo ./out/host/linux-x86/bin/fastboot flash boot ./out/target/product/sp9861e_1h10/boot.img
  • adb push ./out/target/product/s9863a1h10/vendor/lib /vendor/lib

adb操作

  • adb root
  • adb remount
  • adb kill-server
  • adb start-server

git操作

  • git blame
  • git show
  • git diff
  • git log
  • git status
  • git checkout
  • git branch -a
  • git gui
  • git push ssh://frank.zhou@10.0.0.160:29418/vendor/sprd/modules/libcamera HEAD:refs/for/9.0_camera_trunk
  • git push ssh://frank.zhou@10.0.0.160:29418/kernel/common HEAD:refs/for/sprdlinux4.4

property

  • raw capture
    adb shell setprop persist.vendor.cam.raw.mode raw
  • test pattern
    adb shell setprop debug.camera.test.mode 1

log capture

  • open kernel log
    • adb shell “echo 7> /proc/sys/kernel/printk”
    • adb shell “cat /proc/sys/kernel/printk”
  • user log
    ~/mk.sh 12 ~/Workspace/log/sharkl3/klog_20190411_01.txt
    adb logcat -c && adb shell logcat -v time | tee ~/Workspace/log/sharkl3/ulog_20190411_01.txt
  • kernel log
    ~/mk.sh 13 ~/Workspace/log/sharkl3/ulog_20190411_01.txt
    adb shell cat /proc/kmsg | tee ~/Workspace/log/sharkl3/klog_20190411_01.txt

关闭selinux

adb shell setenforce 0
adb shell getenforce

关闭zsl

adb shell setprop persist.sys.cam.zsl false
停止/开启cameraserver
adb shell stop cameraserver
adb shell start cameraserver

crash分析

./crash/crash_arm64 -m phys_offset=0x80000000 vmlinux sysdump --cpus 8

关键文件位置

BoardConfig.mk ${codebase}/device/sprd/iwhale2/sp9861e_1h10/BoardConfig.mk
KernelConfig ${codebase}/kernel/arch/arm64/configs/sprd_sharklj1_defconfig
DTS ${codebase}/kernel/arch/arm64/boot/dts/sprd/sharklJ1.dtsi

双摄校准

adb shell setprop persist.vendor.cam.bokeh.dump capdepth

常见问题

  • couldn’t create file: Read-only file system
    adb shell “mount -o rw,remount /mnt/vendor/socko”

持载ssh目录至本地

sudo sshfs -o cache=yes,allow_other frank.zhou@shcompiler.unisoc.com:/home12/frank.zhou /home/local/SPREADTRUM/frank.zhou/Workspace/shcompiler

open debug print

  • adb root
  • adb shell
  • echo -n ‘file isp_core.c +p’ > /sys/kernel/debug/dynamic_debug/control
  • echo -n ‘fille cam_core.c +p’ > /sys/kernel/debug/dynamic_debug/control
  • 清除所有pr_debug输出的log:
    echo -n ‘file *.c -p’ > /sys/kernel/debug/dynamic_debug/control
  • 查看Linux所有线程
    ps -AT | grep zoom

AndroidR

  • open ISP_LOGV打印
    adb shell setprop persist.vendor.cam.mlog.loglevel 555555
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐