51全志R58平台Android4.4下Camera的HAL层修改

2018/11/7 15:20

版本:V1.0

开发板:SC5806

1、系统编译:

(略)

2、全志R58平台Android4.4下Camera的HAL层在这个目录:

/home/wwt/r58_android_v4.4/android/device/softwinner/octopus-common/hardware/camera

可以使用mm编译:

BuildImg 0

Dragon execute image.cfg SUCCESS !

----------image is at----------

/home/wwt/r58_android_v4.4/lichee/tools/pack/sun8iw6p1_android_sc5806_uart0.img

pack finish

rootroot@cm88:/home/wwt/r58_android_v4.4/android$

rootroot@cm88:/home/wwt/r58_android_v4.4/android$ cd device/softwinner/octopus-common/hardware/

rootroot@cm88:/home/wwt/r58_android_v4.4/android/device/softwinner/octopus-common/hardware$ ll

总用量 20

-rwxrwxr-x 1 rootroot rootroot  682 11月  6 15:09 Android.mk

drwxrwxr-x 2 rootroot rootroot 4096 11月  6 15:09 audio

drwxrwxr-x 4 rootroot rootroot 4096 11月  7 10:10 camera

drwxrwxr-x 2 rootroot rootroot 4096 11月  6 15:09 include

drwxrwxr-x 3 rootroot rootroot 4096 11月  6 15:09 libhardware

rootroot@cm88:/home/wwt/r58_android_v4.4/android/device/softwinner/octopus-common/hardware$ cd camera/

rootroot@cm88:/home/wwt/r58_android_v4.4/android/device/softwinner/octopus-common/hardware/camera$ ll

总用量 940

-rwxrwxr-x 1 rootroot rootroot   2969 11月  6 15:09 Android.mk

-rwxrwxr-x 1 rootroot rootroot   2616 11月  6 15:09 BufferListManager.cpp

-rwxrwxr-x 1 rootroot rootroot    810 11月  6 15:09 BufferListManager.h

-rwxrwxr-x 1 rootroot rootroot  48106 11月  6 15:09 CallbackNotifier.cpp

-rwxrwxr-x 1 rootroot rootroot  12823 11月  6 15:09 CallbackNotifier.h

-rwxrwxr-x 1 rootroot rootroot   1110 11月  6 15:09 CameraDebug.cpp

-rwxrwxr-x 1 rootroot rootroot   3058 11月  6 15:09 CameraDebug.h

-rwxrwxr-x 1 rootroot rootroot 120855 11月  6 15:09 CameraHardware2.cpp

-rwxrwxr-x 1 rootroot rootroot  24391 11月  6 15:09 CameraHardware2.h

-rwxrwxr-x 1 rootroot rootroot  75852 11月  6 15:09 CameraHardware.cpp

-rwxrwxr-x 1 rootroot rootroot  19409 11月  6 15:09 CameraHardware.h

-rwxrwxr-x 1 rootroot rootroot   2356 11月  6 15:09 CameraPlatform.h

-rwxrwxr-x 1 rootroot rootroot   9748 11月  6 15:09 CCameraConfig.cpp

-rwxrwxr-x 1 rootroot rootroot   6227 11月  6 15:09 CCameraConfig.h

-rwxrwxr-x 1 rootroot rootroot  11760 11月  6 15:09 HALCameraFactory.cpp

-rwxrwxr-x 1 rootroot rootroot   3623 11月  6 15:09 HALCameraFactory.h

drwxrwxr-x 2 rootroot rootroot   4096 11月  6 15:09 libfacedetection

-rwxrwxr-x 1 rootroot rootroot  13444 11月  6 15:09 libproc.so

-rwxrwxr-x 1 rootroot rootroot   1416 11月  6 15:09 OSAL_Mutex.c

-rwxrwxr-x 1 rootroot rootroot    415 11月  6 15:09 OSAL_Mutex.h

-rwxrwxr-x 1 rootroot rootroot   4297 11月  6 15:09 OSAL_Queue.c

-rwxrwxr-x 1 rootroot rootroot    912 11月  6 15:09 OSAL_Queue.h

-rwxrwxr-x 1 rootroot rootroot  14594 11月  6 15:09 PreviewWindow.cpp

-rwxrwxr-x 1 rootroot rootroot   5540 11月  6 15:09 PreviewWindow.h

-rwxrwxr-x 1 rootroot rootroot  10318 11月  6 15:09 scaler.c

drwxrwxr-x 2 rootroot rootroot   4096 11月  6 15:09 SceneFactory

-rwxrw-r-- 1 rootroot rootroot  71864 11月  7 10:10 V4L2CameraDevice2.cpp

-rwxrwxr-x 1 rootroot rootroot  17068 11月  6 15:09 V4L2CameraDevice2.h

-rwx------ 1 rootroot rootroot  71802 10月 26 14:38 V4L2CameraDevice2 - 副本 (2).cpp

-rwx------ 1 rootroot rootroot  71802 10月 26 14:38 V4L2CameraDevice2 - 副本 (3)修改完工.cpp

-rw-rw-r-- 1 rootroot rootroot  71455 10月 26 11:01 V4L2CameraDevice2 - 副本.cpp

-rw-rw-r-- 1 rootroot rootroot  17068  5月 12  2016 V4L2CameraDevice2 - 副本.h

-rwxrwxr-x 1 rootroot rootroot  44340 11月  6 15:09 V4L2CameraDevice.cpp

-rwxrwxr-x 1 rootroot rootroot  13544 11月  6 15:09 V4L2CameraDevice.h

-rw-rw-r-- 1 rootroot rootroot  13544  5月 12  2016 V4L2CameraDevice - 副本.h

rootroot@cm88:/home/wwt/r58_android_v4.4/android/device/softwinner/octopus-common/hardware/camera$ mm

============================================

PLATFORM_VERSION_CODENAME=REL

PLATFORM_VERSION=4.4.4

TARGET_PRODUCT=octopus_sc5806

TARGET_BUILD_VARIANT=eng

TARGET_BUILD_TYPE=release

TARGET_BUILD_APPS=

TARGET_ARCH=arm

TARGET_ARCH_VARIANT=armv7-a-neon

TARGET_CPU_VARIANT=cortex-a7

HOST_ARCH=x86

HOST_OS=linux

HOST_OS_EXTRA=Linux-3.13.0-24-generic-x86_64-with-Ubuntu-14.04-trusty

HOST_BUILD_TYPE=release

BUILD_ID=KTU84Q

OUT_DIR=out

============================================

PRODUCT_COPY_FILES device/softwinner/octopus-common/hardware/audio/audio_policy.conf:system/etc/audio_policy.conf ignored.

PRODUCT_COPY_FILES device/softwinner/octopus-common/hardware/audio/phone_volume.conf:system/etc/phone_volume.conf ignored.

No private recovery resources for TARGET_DEVICE octopus-sc5806

make:进入目录'/home/wwt/r58_android_v4.4/android'

target thumb C++: camera.octopus <= device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:1108:5: warning: multi-line comment [-Wcomment]

In file included from device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:19:0:

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.h: In constructor 'android::V4L2CameraDevice::V4L2CameraDevice(android::CameraHardware*, android::PreviewWindow*, android::CallbackNotifier*)':

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.h:521:13: warning: 'android::V4L2CameraDevice::mVideoFormat' will be initialized after [-Wreorder]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.h:481:13: warning:   'int android::V4L2CameraDevice::mFrameRate' [-Wreorder]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:292:1: warning:   when initialized here [-Wreorder]

In file included from device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:19:0:

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.h:592:19: warning: 'android::V4L2CameraDevice::mCurrentV4l2buf' will be initialized after [-Wreorder]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.h:559:13: warning:   'bool android::V4L2CameraDevice::mCanBeDisconnected' [-Wreorder]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:292:1: warning:   when initialized here [-Wreorder]

In file included from device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:19:0:

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.h:584:37: warning: 'android::V4L2CameraDevice::mContinuousPictureAfter' will be initialized after [-Wreorder]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.h:572:34: warning:   'bool android::V4L2CameraDevice::mSmartPictureDone' [-Wreorder]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:292:1: warning:   when initialized here [-Wreorder]

In file included from device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:19:0:

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.h:609:19: warning: 'android::V4L2CameraDevice::mSceneMode' will be initialized after [-Wreorder]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.h:607:13: warning:   'int android::V4L2CameraDevice::mFlashMode' [-Wreorder]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:292:1: warning:   when initialized here [-Wreorder]

In file included from device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:19:0:

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.h:607:13: warning: 'android::V4L2CameraDevice::mFlashMode' will be initialized after [-Wreorder]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.h:518:13: warning:   'int android::V4L2CameraDevice::mZoomRatio' [-Wreorder]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:292:1: warning:   when initialized here [-Wreorder]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp: In member function 'android::status_t android::V4L2CameraDevice::connectDevice(android::HALCameraInfo*)':

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:556:19: warning: NULL used in arithmetic [-Wpointer-arith]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:559:15: warning: converting to non-pointer type 'int' from NULL [-Wconversion-null]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp: In member function 'android::status_t android::V4L2CameraDevice::startDevice(int, int, uint32_t, bool)':

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:659:2: warning: NULL used in arithmetic [-Wpointer-arith]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:659:2: warning: converting to non-pointer type 'int' from NULL [-Wconversion-null]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:663:2: warning: NULL used in arithmetic [-Wpointer-arith]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:663:2: warning: converting to non-pointer type 'int' from NULL [-Wconversion-null]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:668:2: warning: NULL used in arithmetic [-Wpointer-arith]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:668:2: warning: converting to non-pointer type 'int' from NULL [-Wconversion-null]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:671:2: warning: NULL used in arithmetic [-Wpointer-arith]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:671:2: warning: converting to non-pointer type 'int' from NULL [-Wconversion-null]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp: In member function 'int android::V4L2CameraDevice::getCurrentFaceFrame(void*, int*, int*)':

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:1739:3: warning: pointer of type 'void *' used in arithmetic [-Wpointer-arith]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:1741:40: warning: pointer of type 'void *' used in arithmetic [-Wpointer-arith]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp: In member function 'int android::V4L2CameraDevice::openCameraDev(android::HALCameraInfo*)':

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:1853:19: warning: NULL used in arithmetic [-Wpointer-arith]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:1856:15: warning: converting to non-pointer type 'int' from NULL [-Wconversion-null]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp: In member function 'void android::V4L2CameraDevice::closeCameraDev()':

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:1866:19: warning: NULL used in arithmetic [-Wpointer-arith]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:1869:15: warning: converting to non-pointer type 'int' from NULL [-Wconversion-null]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp: In member function 'int android::V4L2CameraDevice::v4l2QueryBuf()':

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:2030:63: warning: pointer of type 'void *' used in arithmetic [-Wpointer-arith]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp: In member function 'int android::V4L2CameraDevice::tryFmt(int)':

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:2167:30: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp: In member function 'int android::V4L2CameraDevice::getAutoFocusStatus()':

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:2506:19: warning: NULL used in arithmetic [-Wpointer-arith]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp: In member function 'int android::V4L2CameraDevice::getSnrValue()':

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:2528:19: warning: NULL used in arithmetic [-Wpointer-arith]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp: In member function 'int android::V4L2CameraDevice::getGainValue()':

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:2554:19: warning: NULL used in arithmetic [-Wpointer-arith]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp: In member function 'int android::V4L2CameraDevice::getExpValue()':

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:2579:19: warning: NULL used in arithmetic [-Wpointer-arith]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp: In member function 'int android::V4L2CameraDevice::setHDRMode(void*)':

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:2604:19: warning: NULL used in arithmetic [-Wpointer-arith]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp: In member function 'int android::V4L2CameraDevice::getAeStat(isp_stat_buf*)':

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:2622:19: warning: NULL used in arithmetic [-Wpointer-arith]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp: In member function 'int android::V4L2CameraDevice::getGammaStat(isp_stat_buf*)':

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:2639:19: warning: NULL used in arithmetic [-Wpointer-arith]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:2645:2: warning: format '%x' expects argument of type 'unsigned int', but argument 4 has type 'void*' [-Wformat]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp: In member function 'int android::V4L2CameraDevice::getHistStat(isp_stat_buf*)':

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:2657:19: warning: NULL used in arithmetic [-Wpointer-arith]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp: In member function 'int android::V4L2CameraDevice::getSensorType()':

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:2896:19: warning: NULL used in arithmetic [-Wpointer-arith]

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp: In member function 'int android::V4L2CameraDevice::getExifInfo(isp_exif_attribute*)':

device/softwinner/octopus-common/hardware/camera/V4L2CameraDevice2.cpp:2915:19: warning: NULL used in arithmetic [-Wpointer-arith]

target SharedLib: camera.octopus (out/target/product/octopus-sc5806/obj/SHARED_LIBRARIES/camera.octopus_intermediates/LINKED/camera.octopus.so)

target Symbolic: camera.octopus (out/target/product/octopus-sc5806/symbols/system/lib/hw/camera.octopus.so)

target Strip: camera.octopus (out/target/product/octopus-sc5806/obj/lib/camera.octopus.so)

Install: out/target/product/octopus-sc5806/system/lib/hw/camera.octopus.so

make:离开目录“/home/wwt/r58_android_v4.4/android”

rootroot@cm88:/home/wwt/r58_android_v4.4/android/device/softwinner/octopus-common/hardware/camera$

在R58的开发板sc5806上面查找camera.octopus.so的位置:

[   10.761187] lowmemorykiller: oom_adj 1 => oom_score_adj 58

[   10.767400] lowmemorykiller: oom_adj 2 => oom_score_adj 117

[   10.773701] lowmemorykiller: oom_adj 3 => oom_score_adj 176

[   10.780092] lowmemorykiller: oom_adj 9 => oom_score_adj 529

[   10.786361] lowmemorykiller: oom_adj 15 => oom_score_adj 1000

[   11.288052] acc_open

[   11.290593] acc_release

[   11.743295] init: no such service 'fuse_sdcard'

[   13.488068] init: sys_prop: permission denied uid:1003  name:service.bootanim.exit

[   13.783140] [dsm] Scene:0 "init" (pid:1)

[   15.982241] [dsm] Scene:1 "init" (pid:1)

[   15.986744] [ddrfreq] DDR: 672000KHz->456000KHz start

[   15.992460] [ddrfreq] current cpu is cpu7

[   15.997031] [ddrfreq] mdfs in cfs mode

[   16.001709] [ddrfreq] elapsed: 280us

[   16.005861] [ddrfreq] DDR: 672000KHz->456000KHz ok!

[   26.647983] [ddrfreq] DDR: 456000KHz->672000KHz start

[   26.660197] [ddrfreq] current cpu is cpu0

[   26.664794] [ddrfreq] mdfs in cfs mode

[   26.674157] [ddrfreq] elapsed: 223us

[   26.678192] [ddrfreq] DDR: 456000KHz->672000KHz ok!

[   27.365067] [dsm] Scene:0 "init" (pid:1)

shell@octopus-sc5806:/ $

shell@octopus-sc5806:/ $ lsmod

sunxi_schw 13015 0 - Live 0x00000000 (O)

cdc_ether 3163 0 - Live 0x00000000

rtl8150 9023 0 - Live 0x00000000

mcs7830 5644 0 - Live 0x00000000

qf9700 5904 0 - Live 0x00000000

asix 13590 0 - Live 0x00000000

usbnet 14128 4 cdc_ether,mcs7830,qf9700,asix, Live 0x00000000

bcm_btlpm 7658 0 - Live 0x00000000

bcmdhd 618780 0 - Live 0x00000000

uvcvideo 61280 0 - Live 0x00000000

videobuf2_vmalloc 2308 1 uvcvideo, Live 0x00000000

videobuf2_memops 1802 1 videobuf2_vmalloc, Live 0x00000000

videobuf2_core 18902 1 uvcvideo, Live 0x00000000

pvrsrvkm 279443 26 - Live 0x00000000 (O)

hdmi 38647 0 - Live 0x00000000

disp 1053993 6 hdmi, Live 0x00000000

sunxi_tr 9348 1 disp, Live 0x00000000

nand 299839 0 - Live 0x00000000 (O)

shell@octopus-sc5806:/ $ cd /dev

shell@octopus-sc5806:/dev $ ll v*

crw------- root     root       7,   0 1970-01-02 08:09 vcs

crw------- root     root       7,   1 1970-01-02 08:09 vcs1

crw------- root     root       7, 128 1970-01-02 08:09 vcsa

crw------- root     root       7, 129 1970-01-02 08:09 vcsa1

crwxrwx--- media    media     81,   0 1970-01-02 08:09 video0

shell@octopus-sc5806:/dev $

shell@octopus-sc5806:/dev $ cd /

shell@octopus-sc5806:/ $ find . -name camera.octopus.so

/system/bin/sh: find: not found

127|shell@octopus-sc5806:/ $ busybox

/system/bin/sh: busybox: not found

127|shell@octopus-sc5806:/ $ su

shell@octopus-sc5806:/ # busybox

BusyBox v1.18.3 (2012-12-03 15:06:10 CST) multi-call binary.

Copyright (C) 1998-2009 Erik Andersen, Rob Landley, Denys Vlasenko

and others. Licensed under GPLv2.

See source distribution for full notice.

Usage: busybox [function] [arguments]...

or: busybox --list[-full]

or: function [arguments]...

BusyBox is a multi-call binary that combines many common Unix

utilities into a single executable.  Most people will create a

link to busybox for each function they wish to use and BusyBox

will act like whatever it was invoked as.

Currently defined functions:

[, [[, addgroup, adduser, ar, arping, ash, awk, basename, bunzip2,

bzcat, cat, catv, chattr, chgrp, chmod, chown, chroot, chrt, chvt,

cksum, clear, cmp, cp, cpio, crond, crontab, cut, date, dc, dd,

deallocvt, delgroup, deluser, devmem, df, diff, dirname, dmesg, dnsd,

dnsdomainname, dos2unix, du, dumpkmap, echo, egrep, eject, env,

ether-wake, expr, false, fdflush, fdformat, fdisk, fgrep, find, fold,

free, freeramdisk, fsck, fuser, getopt, getty, grep, gunzip, gzip,

halt, hdparm, head, hexdump, hostid, hostname, hwclock, id, ifconfig,

ifdown, ifup, inetd, init, insmod, install, ionice, iostat, ip, ipaddr,

ipcrm, ipcs, iplink, iproute, iprule, iptunnel, kill, killall,

killall5, klogd, last, length, less, linux32, linux64, linuxrc, ln,

loadfont, loadkmap, logger, login, logname, losetup, ls, lsattr, lsmod,

lspci, lsusb, lzcat, lzma, makedevs, md5sum, mdev, mesg, microcom,

mkdir, mkdosfs, mke2fs, mkfifo, mkfs.ext2, mkfs.vfat, mknod, mkswap,

mktemp, modinfo, modprobe, more, mount, mountpoint, mpstat, mt, mv,

nameif, netstat, nice, nohup, nslookup, od, openvt, passwd, patch,

pidof, ping, pipe_progress, pivot_root, poweroff, printenv, printf, ps,

pwd, rdate, readahead, readlink, readmbr, readprofile, realpath,

reboot, renice, reset, resize, rm, rmdir, rmmod, route, run-parts,

runlevel, sed, seq, setarch, setconsole, setkeycodes, setlogcons,

setsid, sh, sha1sum, sha256sum, sha512sum, sleep, sort,

start-stop-daemon, strings, stty, su, sulogin, swapoff, swapon,

switch_root, sync, sysctl, syslogd, tail, tar, tee, telnet, test, tftp,

time, top, touch, tr, traceroute, true, tty, udhcpc, umount, uname,

uniq, unix2dos, unlzma, unxz, unzip, uptime, usleep, uudecode,

uuencode, vconfig, vi, vlock, watch, watchdog, wc, wget, which, who,

whoami, xargs, xz, xzcat, yes, zcat

shell@octopus-sc5806:/ # find . -name camera.octopus.so

sh: find: not found

127|shell@octopus-sc5806:/ # busybox find . -name camera.octopus.so

./system/lib/hw/camera.octopus.so

find: ./proc/158/task/212/fdinfo/45: No such file or directory

find: ./proc/158/task/212/fdinfo/64: No such file or directory

find: ./proc/158/task/495/fd/77: No such file or directory

find: ./proc/158/fd/57: No such file or directory

find: ./proc/1290/task/1290/fd/80: No such file or directory

find: ./proc/1290/task/1299/fdinfo/79: No such file or directory

find: ./proc/1290/task/1324/fd/80: No such file or directory

find: ./proc/1290/task/1324/fdinfo/71: No such file or directory

find: ./proc/1290/task/1370/fdinfo/71: No such file or directory

find: ./proc/1290/task/1435/fdinfo/71: No such file or directory

find: ./proc/1290/task/1435/fdinfo/77: No such file or directory

find: ./proc/2121: No such file or directory

find: ./proc/2122: No such file or directory

find: ./proc/2123: No such file or directory

1|shell@octopus-sc5806:/ #

通过adb将修改过的camera.octopus.so文件推送到开发板SC5806上。(注意修改权限)

Microsoft Windows [版本 6.1.7600]

版权所有 (c) 2009 Microsoft Corporation。保留所有权利。

C:\Users\Administrator>adb shell

root@octopus-sc5806:/ # cd /dev

cd /dev

root@octopus-sc5806:/dev # ll v*

ll v*

crw------- root     root       7,   0 1970-01-01 09:07 vcs

crw------- root     root       7,   1 1970-01-01 09:07 vcs1

crw------- root     root       7, 128 1970-01-01 09:07 vcsa

crw------- root     root       7, 129 1970-01-01 09:07 vcsa1

crwxrwx--- media    media     81,   0 1970-01-02 08:02 video0

root@octopus-sc5806:/dev #

C:\Users\Administrator>cd W:\r58_android_v4.4\android\out\target\product\octopus-sc5806\system\lib\hw

C:\Users\Administrator>w:

W:\r58_android_v4.4\android\out\target\product\octopus-sc5806\system\lib\hw>dir

驱动器 W 中的卷是 rootroot

卷的序列号是 940F-E71D

W:\r58_android_v4.4\android\out\target\product\octopus-sc5806\system\lib\hw 的目录

2018/11/06  16:20    <DIR>          .

2018/11/06  16:23    <DIR>          ..

2018/11/06  16:17             9,540 audio.a2dp.default.so

2018/11/06  16:16             5,396 local_time.default.so

2018/11/06  16:17             9,484 keystore.exdroid.so

2018/11/06  16:16             9,820 gralloc.default.so

2018/11/06  16:17            30,204 audio.primary.octopus.so

2018/11/06  16:16             5,400 audio.primary.default.so

2018/11/06  16:16             5,396 power.default.so

2018/11/06  16:17             5,436 audio.usb.default.so

2018/11/06  16:16           130,932 sensors.exdroid.so

2018/11/06  16:17            26,460 hwcomposer.octopus.so

2018/11/06  16:16             5,388 lights.octopus.so

2018/11/07  10:11           136,760 camera.octopus.so

2018/11/06  16:17            75,272 audio_policy.default.so

2018/11/06  16:17             5,392 keystore.default.so

2018/11/06  16:20            17,800 audio.r_submix.default.so

2018/11/06  16:17         1,073,172 bluetooth.default.so

16 个文件      1,551,852 字节

2 个目录 96,538,443,776 可用字节

W:\r58_android_v4.4\android\out\target\product\octopus-sc5806\system\lib\hw>adb push camera.octopus.so /system/lib/hw/

failed to copy 'camera.octopus.so' to '/system/lib/hw//camera.octopus.so': Read-only file system

W:\r58_android_v4.4\android\out\target\product\octopus-sc5806\system\lib\hw>adb remount

remount succeeded

W:\r58_android_v4.4\android\out\target\product\octopus-sc5806\system\lib\hw>adb push camera.octopus.so /system/lib/hw/

661 KB/s (136760 bytes in 0.202s)

修改权限:

1|shell@octopus-sc5806:/ #

1|shell@octopus-sc5806:/ # cd /system/lib/hw/

shell@octopus-sc5806:/system/lib/hw #

(通过adb推入camera.octopus.so之前的权限:)

shell@octopus-sc5806:/system/lib/hw # ll

-rw-r--r-- root     root         9540 2018-11-06 16:17 audio.a2dp.default.so

-rw-r--r-- root     root         5400 2018-11-06 16:16 audio.primary.default.so

-rw-r--r-- root     root        30204 2018-11-06 16:17 audio.primary.octopus.so

-rw-r--r-- root     root        17800 2018-11-06 16:20 audio.r_submix.default.so

-rw-r--r-- root     root         5436 2018-11-06 16:17 audio.usb.default.so

-rw-r--r-- root     root        75272 2018-11-06 16:17 audio_policy.default.so

-rw-r--r-- root     root      1073172 2018-11-06 16:17 bluetooth.default.so

-rw-r--r-- root     root       136760 2018-11-06 16:17 camera.octopus.so

-rw-r--r-- root     root         9820 2018-11-06 16:16 gralloc.default.so

-rw-r--r-- root     root        26460 2018-11-06 16:17 hwcomposer.octopus.so

-rw-r--r-- root     root         5392 2018-11-06 16:17 keystore.default.so

-rw-r--r-- root     root         9484 2018-11-06 16:17 keystore.exdroid.so

-rw-r--r-- root     root         5388 2018-11-06 16:16 lights.octopus.so

-rw-r--r-- root     root         5396 2018-11-06 16:16 local_time.default.so

-rw-r--r-- root     root         5396 2018-11-06 16:16 power.default.so

-rw-r--r-- root     root       130932 2018-11-06 16:16 sensors.exdroid.so

shell@octopus-sc5806:/system/lib/hw #

shell@octopus-sc5806:/system/lib/hw # [  354.337386] EXT4-fs (mmcblk0p7): re-mounted. Opts: (null)

shell@octopus-sc5806:/system/lib/hw #

(通过adb推入camera.octopus.so之后的权限:)

shell@octopus-sc5806:/system/lib/hw # ll

-rw-r--r-- root     root         9540 2018-11-06 16:17 audio.a2dp.default.so

-rw-r--r-- root     root         5400 2018-11-06 16:16 audio.primary.default.so

-rw-r--r-- root     root        30204 2018-11-06 16:17 audio.primary.octopus.so

-rw-r--r-- root     root        17800 2018-11-06 16:20 audio.r_submix.default.so

-rw-r--r-- root     root         5436 2018-11-06 16:17 audio.usb.default.so

-rw-r--r-- root     root        75272 2018-11-06 16:17 audio_policy.default.so

-rw-r--r-- root     root      1073172 2018-11-06 16:17 bluetooth.default.so

-rw-rw-rw- root     root       136760 2018-11-07 10:11 camera.octopus.so

-rw-r--r-- root     root         9820 2018-11-06 16:16 gralloc.default.so

-rw-r--r-- root     root        26460 2018-11-06 16:17 hwcomposer.octopus.so

-rw-r--r-- root     root         5392 2018-11-06 16:17 keystore.default.so

-rw-r--r-- root     root         9484 2018-11-06 16:17 keystore.exdroid.so

-rw-r--r-- root     root         5388 2018-11-06 16:16 lights.octopus.so

-rw-r--r-- root     root         5396 2018-11-06 16:16 local_time.default.so

-rw-r--r-- root     root         5396 2018-11-06 16:16 power.default.so

-rw-r--r-- root     root       130932 2018-11-06 16:16 sensors.exdroid.so

shell@octopus-sc5806:/system/lib/hw # chmod 644 camera.octopus.so

shell@octopus-sc5806:/system/lib/hw #

shell@octopus-sc5806:/system/lib/hw # sync

shell@octopus-sc5806:/system/lib/hw # ll

-rw-r--r-- root     root         9540 2018-11-06 16:17 audio.a2dp.default.so

-rw-r--r-- root     root         5400 2018-11-06 16:16 audio.primary.default.so

-rw-r--r-- root     root        30204 2018-11-06 16:17 audio.primary.octopus.so

-rw-r--r-- root     root        17800 2018-11-06 16:20 audio.r_submix.default.so

-rw-r--r-- root     root         5436 2018-11-06 16:17 audio.usb.default.so

-rw-r--r-- root     root        75272 2018-11-06 16:17 audio_policy.default.so

-rw-r--r-- root     root      1073172 2018-11-06 16:17 bluetooth.default.so

-rw-r--r-- root     root       136760 2018-11-07 10:11 camera.octopus.so

-rw-r--r-- root     root         9820 2018-11-06 16:16 gralloc.default.so

-rw-r--r-- root     root        26460 2018-11-06 16:17 hwcomposer.octopus.so

-rw-r--r-- root     root         5392 2018-11-06 16:17 keystore.default.so

-rw-r--r-- root     root         9484 2018-11-06 16:17 keystore.exdroid.so

-rw-r--r-- root     root         5388 2018-11-06 16:16 lights.octopus.so

-rw-r--r-- root     root         5396 2018-11-06 16:16 local_time.default.so

-rw-r--r-- root     root         5396 2018-11-06 16:16 power.default.so

-rw-r--r-- root     root[  366.771164] healthd: battery l=100 v=0 t=30.0 h=2 st=5 c=0 chg=au

130932 2018-11-06 16:16 sensors.exdroid.so

shell@octopus-sc5806:/system/lib/hw #

重启即生效。

可以看见LOGV的打印生效,文件名、行号以及函数名都可以打印出来,但是printf无效。

printf("**** %s-%d-%s \n", __FILE__, __LINE__, __func__);

LOGV("**** %s-%d-%s ", __FILE__, __LINE__, __func__);

51全志R58平台Android4.4下Camera的HAL层修改的更多相关文章

  1. 31全志r58平台Android4.4.2下打开USB摄像头

    31全志r58平台Android4.4.2下打开USB摄像头 2018/10/26 16:00 版本:V1.0 开发板:SC5806 1.系统编译:(略) 2.需要修改的文件: W:\r58_andr ...

  2. 02全志r58平台Android4.4.4下关闭内核中的CPU的开启关闭提示

    02全志r58平台Android4.4.4下关闭内核中的CPU的开启关闭提示 2017/8/18 13:53 版本:V1.0 开发板:SC5806(全志R58平台) SDK:android4.4.4 ...

  3. 全志R58平台调通s5k5eya(RAW+MIPI)

    全志R58平台调通s5k5eya(RAW+MIPI) 2017/5/31 10:30 版本:V1.1 1.前期使用的是s5k5eyx的ISP的固件/tuning 文件 Y:\s5k5eya_r58_d ...

  4. 全志R58平台的GPIO引脚控制

    全志R58平台的GPIO引脚控制 2017/8/18 15:50 版本:V1.0 开发板:SC5806(全志R58平台) SDK:android4.4.4 本文以GPIO引脚PD24为例,在开发板的背 ...

  5. 009全志R16平台tinav3.0下编译不过的问题

    009全志R16平台tinav3.0下编译不过的问题 2018/11/13 11:39 版本:V1.0 开发板:SC3817R SDK:tina v3.0 1.01原始编译全志r16平台tinav3. ...

  6. 04全志R58平台编译内核需要选择的配置

    04全志R58平台编译内核需要选择的配置 2018/11/6 14:19 版本:V1.0 开发板:SC5806 1.系统编译:(略) 每次系统编译/内核的时候都需要选3次N: * * Xtables ...

  7. ZT Android4.2关于bluetooth在HAL层的分析(1)

    我的电子杂烩饭 http://blog.sina.com.cn/wuchuchu2012 [订阅][手机订阅] 首页 博文目录 图片 关于我 正文 字体大小:大 中 小 Android4.2关于blu ...

  8. 461在全志r16平台tinav3.0系统下使用地磁计QMC5883L

    461在全志r16平台tinav3.0系统下使用地磁计QMC5883L 2018/9/7 14:08 版本:V1.0 开发板:SC3817R SDK:tina v3.0 (基本确认全志tina v3. ...

  9. 460在全志r16平台tinav3.0系统下使用i2c-tools

    460在全志r16平台tinav3.0系统下使用i2c-tools 2018/9/6 19:05 版本:V1.0 开发板:SC3817R SDK:tina v3.0 1.01原始编译全志r16平台ti ...

随机推荐

  1. 怎样将查询到的数据显示在DataGridView中

    背景介绍: 数据库中的T_Line_Info表中存放着学生上机的记录,也就是我们须要查询上机记录的表.当中详细内容为: 界面设计例如以下: watermark/2/text/aHR0cDovL2Jsb ...

  2. UVA 1400 1400 - &quot;Ray, Pass me the dishes!&quot;(线段树)

    UVA 1400 - "Ray, Pass me the dishes!" option=com_onlinejudge&Itemid=8&page=show_pr ...

  3. 2016/2/29 html 思维导图

  4. Koa2学习(二)async/await

    Koa2学习(二)async/await koa2中用到了大量的async/await语法,要学习koa2框架,首先要好好理解async/await语法. async/await顾名思义是一个异步等待 ...

  5. “千千静听”滚动标题栏,非常简单!(时间器控制窗口标题栏文字,然后赋值给Application.Title)

    记得曾写过类似功能,但由于对Delphi数据类型不清楚,要花不少代码去处理中文被切半而出现乱码的尴尬.后来知道只需把字符串定义成 WideString 即可解决半个中文的问题了. 实现过程:不停地剪切 ...

  6. __setup 在内核中的作用【转】

    本文转载自:http://blog.csdn.net/lanmanck/article/details/7613305 本文来自: http://blog.chinaunix.net/uid-1379 ...

  7. YTU 2975: 我的编号

    2975: 我的编号 时间限制: 1 Sec  内存限制: 128 MB 提交: 42  解决: 15 题目描述 建立一个学生链表,每个链表结点含有学生的基本信息,编号和姓名.现在n个学生站成一列,根 ...

  8. 循环冗余检验 (CRC) 算法原理

    Cyclic Redundancy Check循环冗余检验,是基于数据计算一组效验码,用于核对数据传输过程中是否被更改或传输错误. 算法原理 假设数据传输过程中需要发送15位的二进制信息g=10100 ...

  9. E20170523-hm

    parse   vt. 从语法上描述或分析(词句等); escape character  エスケープ文字 转义符 arity  [计] 数量; analyzevt. <美>分析; 分解; ...

  10. python 面向对象五 获取对象信息 type isinstance getattr setattr hasattr

    一.type()函数 判断基本数据类型可以直接写int,str等: >>> class Animal(object): ... pass ... >>> type( ...