8056

代码更新

短的没有日期的分支是封闭流,长的有日期的分支是每日流,注意hal层和camera层的分支和版本要一致。

代码编译

ISP层

  1. cd到第二个ispctrl目录下

    source makerulers/build/tools/init.sh

  2. cd 到第三个ispctrl目录下

  3. sys-build config依次选择1 3 2

  4. sys-build

    由于每次上电初始化都会将/system/stc中的updata.bz2解压,

    覆盖掉ispctrl的编译,所以我们可以将updata.bz2重命名,

    让设备找不到,防止覆盖

hal和camera层

  1. 在根目录设置环境:source build/envsetup.sh 将用到的命令加在到环境变量里去
  2. 选择编译目标:lunch
  3. 选择s618-eng然后选择ipc_8056
  4. mm –j24

生成代码位置

  • hal层: 生成out\target\product\s618\obj_arm\lib\camera.sdm660.so –>通过adb push推送到/system/lib/hw

  • camera层:在此目录下生成的其他动态库文件通过adb push推送到/system/vendor/lib(对文件生成时间排序,可以知道哪些是新生成的文件)

  • ispctrl层:

    由于每次上电初始化都会将/system/stc中的updata.bz2解压,

    覆盖掉ispctrl的编译,所以我们可以将updata.bz2重命名,

    让设备找不到,防止覆盖

17230端口及网络ADB设置

网络ADB及17230端口设置

可以将其配置成xshell中的脚本,以IP:10.82.1.123举例:

  • 17230端口连接:

    首先在web界面上确认打开了配置->系统->用户安全->安全服务->ssh登录

    telnet 10.82.1.123 17230
    admin
    admin123
    openssh
  • 23端口连接及root:

    需要首先打开17230端口

    telnet 10.82.1.123
    admin
    admin123
    setprop service.adb.tcp.port 5555 && stop adbd && start adbd
    setprop service.ipc.root 1

    adb连接及root

    adb connect 10.82.1.123
    adb root
    adb remount

USB adb 打开root

当推入某个动态库,设备挂掉,连不上网络的时候,可以用usb线进行adb push:

setprop service.ipc.root 1
  • USB adb 打开root:

    setprop service.ipc.root 1

升级过程

pkg:

  • txt文档中对应了每个设备的安装包;

  • 在17230端口中输入ipcsetpkghead 8056_185;不同的设备需

    要不同的升级包,改下这个,让其匹配才能升级(不需要这一步了)

  • 在IE浏览器中输入IP,用户名是admin,密码是admin123

    进入摄像机的界面,在配置->系统->系统维护->升级

fastboot

  • 如果正常开机模式下,通过adb进入fastboot模式:adb reboot-bootloader
fastboot flash boot C:\work\ROM\boot.img
fastboot flash persist C:\work\ROM\persist.img
fastboot flash system C:\work\ROM\system.img
fastboot flash userdata C:\work\ROM\userdata.img
fastboot flash recovery C:\work\ROM\recovery.img

fastboot reboot

fastboot reboot重启设备并进去正常启动模式(退出fastboot)

  • 需要用IPCSearch重新设置IP

    • 设备激活(密码设置为admin123)

    • 网络参数修改

      IP:10.82.x.xxx

      子网掩码:255.255.0.0

      网关:10.82.255.254

版本地址

pkg

  • 用户名密码都是:kdm

  • pkg: \\10.9.0.99\ReleaseVersions\KDM\Mobile\S618\IPC2255_L6.0\ROM_Release\IPC2255_ROM_20190228_IPC-8056-V1.0.549-rel-user\ota


执法记录仪

打开17230端口

adb forward tcp:17230 tcp:17230

在xshell中连接17230端口:

telnet 127.0.0.1 17230

代码编译

hal和camera层

  • 进入工程的根目录下进行编译环境配置

    $source build/envsetup.sh

    Lunch 37

  • 进入对应的文件夹下mm –j24

isp层

android-ispctrl/android-isp1/下执行:

source makerulers/build/tools/init.sh      
sys-build config  132
sys-build 
sys-build TARGET_PRODUCT=sdm660_mobile

这里的TARGET_PRODUCT,可以在make.mk里修改默认定义(只在调试时用,不要提交代码)

推库

获取权限

adb shell 
setprop service.user.test 1    
setenforce 0
Kdb remount

生成代码位置

  • hal层: 生成out\target\product\u2p\system\lib\hw\camera.sdm660.so –>通过adb push推送到/system/lib/hw

  • camera层:在此目录下生成的其他动态库文件通过adb push推送到/system/vendor/lib

  • ispctrl层:生成android-ispctrl\android-isp1\packages\android-ispctrl\release\cbb\ispctrl\lib\linux_android\release\sdm660_mobile\libispctrl.so –>通过adb push推送到/data/app/com.kedacom.ptt-1/lib/arm

    修改ispctrl中的代码,要将APK进程杀死,不能重启设备,不然又被覆盖掉了。Kdb shell pkill ptt

升级过程

fastboot

adb reboot-bootloader 
fastboot flash boot boot.img
fastboot flash cache cache.img
fastboot flash persist persist.img
fastboot flash recovery recovery.img
fastboot flash system system.img
fastboot flash userdata userdata.img
REM 最后一个system比较大
fastboot flash -S 500000K system system.img
fastboot flash aboot aboot emmc_appsboot.mbn

变砖后进入fastboot:
拔电池,再放上,按住音量下连USB线,会进到fastboot

版本地址

APK:

\\172.16.0.99\ReleaseVersions\KDM\Solution\VS-P-a0\YDPT_ANDROID\20180810_DSJ_SDM660_APK\20180828\DSJ_SDM660_APK_R8250#0958\apk


660IPC

门禁设备PKG:

\10.9.0.99\ReleaseVersions\system\android\android-rom\SDM660\KSCA120