上锁
(adb reboot bootloader 进的才是fastboot模式
adb reboot fastboot,进的是fastbootd模式)
fastboot -w
fastboot oem lock
fastboot reboot bootloader
fastboot reboot
qcom
1.开venus log 8550, 看venus版本, 更新venus(signed)
adb shell "echo 0x103f101f > /sys/module/msm_video/parameters/msm_vidc_debug"
adb shell setprop persist.dbg.keep_debugfs_mounted true
adb shell mount -t debugfs none /d
adb shell cat /d/msm_vidc/core/info
adb push "D:\downloads\vpu_old\vpu30_4v.mbn" /vendor/firmware
Pease check kernel log for firmware on SM8550、SM8650 ,the key words is "QC_IMAGE_VERSION_STRING=video-firmware"
替换venus,找到ap.sh的编译位置, 并执行,
function build_vendor()
{
**$repo_root/amss/Kailua.LA.1.0/common/sectoolsv2/ext/Linux/sign_vendor_qc_fw.sh**
echo "build_vendor: lunch ${combo/_factory/}"
source build/envsetup.sh
lunch ${combo/_factory/}
bash build.sh -j$(nproc) dist --target_only
}
sign_vendor_qc_fw.sh
CURRENT_DIR=$(cd $(dirname $0); pwd)
TEST_SIGNER_VAR="--security-profile $CURRENT_DIR/../../kailua_security_profile.xml --sign --signing-mode TEST"
IMAGE_ID="VENUS-FW"
mbn_path=$CURRENT_DIR/../../../../../../vendor/qcom/proprietary/vfw-vpu-20/vpu20_4v.mbn
$CURRENT_DIR/sectools secure-image $mbn_path --image-id=$IMAGE_ID --outfile $mbn_path $TEST_SIGNER_VAR
IMAGE_ID="VENUS-FW"
mbn_path=$CURRENT_DIR/../../../../../../vendor/qcom/proprietary/vfw-vpu-20/vpu30_4v.mbn
$CURRENT_DIR/sectools secure-image $mbn_path --image-id=$IMAGE_ID --outfile $mbn_path $TEST_SIGNER_VAR
IMAGE_ID="VENUS-FW"
mbn_path=$CURRENT_DIR/../../../../../../vendor/qcom/proprietary/vfw-vpu-20/vpu33_4v.mbn
$CURRENT_DIR/sectools secure-image $mbn_path --image-id=$IMAGE_ID --outfile $mbn_path $TEST_SIGNER_VAR
8250
omx log开关
hardware/qcom/media/mm-video-v4l2/vidc/vdec/src/omx_vdec_v4l2.cpp
vendor.vidc.debug.level 0x3f
关闭ubwc
vendor.gralloc.disable_ubwc
vendor.vidc.dec.log.in
vendor.vidc.dec.log.out
vendor.vidc.dec.log.cc.out
venus loglevel
<8350
adb shell "echo 0x3f00ffff > /d/msm_vidc/debug_level"
>8450
adb shell "echo 0x303f373f > /sys/module/msm_video/parameters/msm_vidc_debug"
hal log all
(1)you can set vendor.qc2.log.stats.delay to control this. for example “set prop vendor.qc2.log.stats.delay 1000”, we will output this log every one second
(2)above log will not output by default. only setprop vendor.qc2.log.msg 0x30 will output these log.
adb shell setprop vendor.qc2.log.msg 0xFF0000FF
adb shell setprop persist.vendor.debug.av.logs.lvl 2
trace:
Debug = 0x01
Verbose = 0x02
QC2Component = 0x10
QC2V4l2Codec = 0x20
QC2Event = 0x40
adb shell setprop vendor.qc2.log.trace 0x73
stats pending 统计间隔
adb shell setprop vendor.qc2.log.stats.delay 1000
qc2 dump
Type of buffer Mask
Decoder Input(Bitstream) 0x00000001
Decoder Output(YUV) 0x00000002
Decoder Output after color conversion(YUV) 0x00000004
Encoder Input(YUV) 0x00000010
Encoder Output(Bitstream) 0x00000020
Encoder Input before Conversion(RGB/YUV) 0x00000040
Metadata 0x00000100
Filter input 0x00000200
Filter output 0x00000400
Force YUV Dump to non-UBWC(linear) format 0x00001000
adb shell setprop vendor.qc2.log.buffers 0x1077
■ Dump files are at /data/vendor/media/qc2/
■ Command to dump decoder input alone – adb shell setprop vendor.qc2.log.buffers 0x01
■ Command to dump decoder input and decoder output – adb shell setprop vendor.qc2.log.buffers 0x03
■ Command to dump decoder output in linear format – adb shell setprop vendor.qc2.log.buffers 0x1002
■ Command to dump encoder input alone – adb shell setprop vendor.qc2.log.buffers 0x10
■ Command to dump encoder input and encoder output – adb shell setprop vendor.qc2.log.buffers 0x30
■ Command to dump decoder output and encoder input – adb shell setprop vendor.qc2.log.buffers 0x12
■ Command to dump all types of buffers – adb shell setprop vendor.qc2.log.buffers 0x77
Capture Bit Stream and YUV at QC2 Video HAL
NOTE: Ensure to disable SELinux before capturing the dumps. Use command: adb shell setenforce 0
venus 定频
adb shell "echo 366000000 > /d/msm_vidc/core_clock_voting”
kalama-vidc.dtsi/kalama-vidc-v2.dtsi
qcom,allowed-clock-rates = <240000000 338000000 366000000 444000000 481000000>;
qcom,allowed-clock-rates = <240000000 338000000 366000000 444000000 533333333>;
qcom ninja编译
./prebuilts/build-tools/linux-x86/bin/ninja -f ./out/combined-kalama.ninja libcodec2_hidl_plugin