[Miscellaneous Android Development] cybojenix:
p350 working hal with source

our dev managed to get camera hal working a while ago, we've only just realised that it was working

E/CameraHAL( 2656): CameraHAL_GetNum_Cameras:

D/CameraHAL( 2656): CameraHAL_GetNum_Cameras: loading libcamera at 0xb000e448

D/CameraHAL( 2656): CameraHAL_GetNum_Cameras: numCameras:1

this is hal compiled from source

https://github.com/antdking/ics-pecan-device-folder-fixing

this is the log we get when we load from camera app

I/ActivityManager( 1462): START {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.android.camera/.Camera bnds=[0,214][60,273]} from pid 1810

D/memalloc( 1462): /dev/pmem: Allocated buffer base:0x50b24000 size:327680 offset:2760704 fd:242

W/WindowManager( 1462): Failure taking screenshot for (180x240) to layer 21005

I/ActivityManager( 1462): Start proc com.android.camera for activity com.android.camera/.Camera: pid=2630 uid=10030 gids={1006, 1015}

W/NetworkManagementSocketTagger( 1462): setKernelCountSet(10030, 1) failed with errno -2

W/WindowManager( 1462): Layout repeat skipped after too many iterations

W/WindowManager( 1462): Layout repeat skipped after too many iterations

W/WindowManager( 1462): Layout repeat skipped after too many iterations

W/WindowManager( 1462): Animation repeat aborted after too many iterations

D/memalloc( 1462): /dev/pmem: Freeing buffer base:0x50c7c000 size:327680 offset:1409024 fd:177

D/memalloc( 1810): /dev/pmem: Unmapping buffer base:0x506a0000 size:1736704 offset:1409024

D/memalloc( 1462): /dev/pmem: Freeing buffer base:0x50c2c000 size:327680 offset:1081344 fd:101

D/memalloc( 1810): /dev/pmem: Unmapping buffer base:0x50548000 size:1409024 offset:1081344

I/CameraHAL( 2411): CameraHAL_GetCam_Info:

D/CameraHAL( 2411): CameraHAL_GetNum_Cameras: loading libcamera at 0xb000e448

V/CameraHolder( 2630): open camera 0

I/CameraHAL( 2411): CameraHAL_GetCam_Info:

D/CameraHAL( 2411): CameraHAL_GetNum_Cameras: loading libcamera at 0xb000e448

I/CameraService( 2411): Opening camera 0

D/CameraHAL( 2411): qcamera_device_open: name:0 device:0x1375c cameraId:0

D/CameraHAL( 2411): loading libcamera at 0xb000e448

D/QualcommCameraHardware( 2411): createInstance: E

I/Process ( 1462): Sending signal. PID: 2630 SIG: 3

I/dalvikvm( 2630): threadid=3: reacting to signal 3

I/dalvikvm( 2630): Wrote stack traces to '/data/anr/traces.txt'

I/QualcommCameraHardware( 2411): startCamera: camsensor name isx005, flash 0

I/QualcommCameraHardware( 2411): Parameter Rolloff is not supported for this sensor

I/QualcommCameraHardware( 2411): Parameter Rolloff is not supported for this sensor

D/QualcommCameraHardware( 2411): createInstance: X created hardware=0x2f150

I/CameraHAL( 2411): qcamera_set_callbacks: notify_cb: 0x405a4545, data_cb: 0x405a50e5 data_cb_timestamp: 0x405a5055, get_memory: 0x405a65ed, user :0x13758

I/CameraHAL( 2411): qcamera_enable_msg_type: msg_type:0xd

I/AwesomePlayer( 2411): setDataSource_l('/system/media/audio/ui/camera_click.ogg')

E/OMXCodec( 2411): Attempting to allocate OMX node 'OMX.google.vorbis.decoder'

E/OMXCodec( 2411): Successfully allocated OMX node 'OMX.google.vorbis.decoder'

I/AwesomePlayer( 2411): setDataSource_l('/system/media/audio/ui/VideoRecord.ogg')

E/OMXCodec( 2411): Attempting to allocate OMX node 'OMX.google.vorbis.decoder'

E/OMXCodec( 2411): Successfully allocated OMX node 'OMX.google.vorbis.decoder'

I/CameraHAL( 2411): qcamera_get_parameters

I/CameraHAL( 2411): qcamera_get_parameters: after calling qCamera->getParameters()

I/CameraHAL( 2411): camera_get_parameters: returning rc:0x26388 :antibanding=off;antibanding-values=off,50hz,60hz,auto;auto-exposure=frame-average;auto-exposure-values=frame-average,center-weighted,spot-metering;contrast=3;contrast-def=3;contrast-max=4;effect=none;effect-values=none,mono,negative,solarize,sepia,posterize,whiteboard,blackboard,aqua;exposure-compensation=0;exposure-compensation-step=1;focus-mode=auto;focus-mode-values=auto,infinity,normal,macro;iso=auto;iso-values=auto,ISO_HJR,ISO100,ISO200,ISO400,ISO800;jpeg-quality=85;jpeg-thumbnail-height=384;jpeg-thumbnail-quality=90;jpeg-thumbnail-width=512;lensshade=enable;luma-adaptation=3;max-exposure-compensation=5;max-zoom=6;min-exposure-compensation=-2;picture-format=jpeg;picture-format-values=jpeg,raw;picture-size=1024x768;picture-size-values=2048x1536,1600x1200,1024x768;preview-format=yuv420sp;preview-format-values=yuv420sp;preview-frame-rate=15;preview-frame-rate-values=10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25;preview-size=640x480;preview-size-values=800x480,

I/CameraHAL( 2411): qcamera_put_parameters: params:0x26388 antibanding=off;antibanding-values=off,50hz,60hz,auto;auto-exposure=frame-average;auto-exposure-values=frame-average,center-weighted,spot-metering;contrast=3;contrast-def=3;contrast-max=4;effect=none;effect-values=none,mono,negative,solarize,sepia,posterize,whiteboard,blackboard,aqua;exposure-compensation=0;exposure-compensation-step=1;focus-mode=auto;focus-mode-values=auto,infinity,normal,macro;iso=auto;iso-values=auto,ISO_HJR,ISO100,ISO200,ISO400,ISO800;jpeg-quality=85;jpeg-thumbnail-height=384;jpeg-thumbnail-quality=90;jpeg-thumbnail-width=512;lensshade=enable;luma-adaptation=3;max-exposure-compensation=5;max-zoom=6;min-exposure-compensation=-2;picture-format=jpeg;picture-format-values=jpeg,raw;picture-size=1024x768;picture-size-values=2048x1536,1600x1200,1024x768;preview-format=yuv420sp;preview-format-values=yuv420sp;preview-frame-rate=15;preview-frame-rate-values=10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25;preview-size=640x480;preview-size-values=800x480,768x43

I/CameraHAL( 2411): qcamera_get_parameters

I/CameraHAL( 2411): qcamera_get_parameters: after calling qCamera->getParameters()

I/CameraHAL( 2411): camera_get_parameters: returning rc:0x20d50 :antibanding=off;antibanding-values=off,50hz,60hz,auto;auto-exposure=frame-average;auto-exposure-values=frame-average,center-weighted,spot-metering;contrast=3;contrast-def=3;contrast-max=4;effect=none;effect-values=none,mono,negative,solarize,sepia,posterize,whiteboard,blackboard,aqua;exposure-compensation=0;exposure-compensation-step=1;focus-mode=auto;focus-mode-values=auto,infinity,normal,macro;iso=auto;iso-values=auto,ISO_HJR,ISO100,ISO200,ISO400,ISO800;jpeg-quality=85;jpeg-thumbnail-height=384;jpeg-thumbnail-quality=90;jpeg-thumbnail-width=512;lensshade=enable;luma-adaptation=3;max-exposure-compensation=5;max-zoom=6;min-exposure-compensation=-2;picture-format=jpeg;picture-format-values=jpeg,raw;picture-size=1024x768;picture-size-values=2048x1536,1600x1200,1024x768;preview-format=yuv420sp;preview-format-values=yuv420sp;preview-frame-rate=15;preview-frame-rate-values=10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25;preview-size=640x480;preview-size-values=800x480,

I/CameraHAL( 2411): qcamera_put_parameters: params:0x20d50 antibanding=off;antibanding-values=off,50hz,60hz,auto;auto-exposure=frame-average;auto-exposure-values=frame-average,center-weighted,spot-metering;contrast=3;contrast-def=3;contrast-max=4;effect=none;effect-values=none,mono,negative,solarize,sepia,posterize,whiteboard,blackboard,aqua;exposure-compensation=0;exposure-compensation-step=1;focus-mode=auto;focus-mode-values=auto,infinity,normal,macro;iso=auto;iso-values=auto,ISO_HJR,ISO100,ISO200,ISO400,ISO800;jpeg-quality=85;jpeg-thumbnail-height=384;jpeg-thumbnail-quality=90;jpeg-thumbnail-width=512;lensshade=enable;luma-adaptation=3;max-exposure-compensation=5;max-zoom=6;min-exposure-compensation=-2;picture-format=jpeg;picture-format-values=jpeg,raw;picture-size=1024x768;picture-size-values=2048x1536,1600x1200,1024x768;preview-format=yuv420sp;preview-format-values=yuv420sp;preview-frame-rate=15;preview-frame-rate-values=10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25;preview-size=640x480;preview-size-values=800x480,768x43

D/Camera ( 2630): app passed NULL surface

I/CameraHAL( 2411): CameraHAL_GetCam_Info:

D/CameraHAL( 2411): CameraHAL_GetNum_Cameras: loading libcamera at 0xb000e448

I/CameraHAL( 2411): qcamera_get_parameters

I/CameraHAL( 2411): qcamera_get_parameters: after calling qCamera->getParameters()

I/CameraHAL( 2411): camera_get_parameters: returning rc:0x26330 :antibanding=off;antibanding-values=off,50hz,60hz,auto;auto-exposure=frame-average;auto-exposure-values=frame-average,center-weighted,spot-metering;contrast=3;contrast-def=3;contrast-max=4;effect=none;effect-values=none,mono,negative,solarize,sepia,posterize,whiteboard,blackboard,aqua;exposure-compensation=0;exposure-compensation-step=1;focus-mode=auto;focus-mode-values=auto,infinity,normal,macro;iso=auto;iso-values=auto,ISO_HJR,ISO100,ISO200,ISO400,ISO800;jpeg-quality=85;jpeg-thumbnail-height=384;jpeg-thumbnail-quality=90;jpeg-thumbnail-width=512;lensshade=enable;luma-adaptation=3;max-exposure-compensation=5;max-zoom=6;min-exposure-compensation=-2;picture-format=jpeg;picture-format-values=jpeg,raw;picture-size=1024x768;picture-size-values=2048x1536,1600x1200,1024x768;preview-format=yuv420sp;preview-format-values=yuv420sp;preview-frame-rate=15;preview-frame-rate-values=10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25;preview-size=640x480;preview-size-values=800x480,

I/CameraHAL( 2411): qcamera_put_parameters: params:0x26330 antibanding=off;antibanding-values=off,50hz,60hz,auto;auto-exposure=frame-average;auto-exposure-values=frame-average,center-weighted,spot-metering;contrast=3;contrast-def=3;contrast-max=4;effect=none;effect-values=none,mono,negative,solarize,sepia,posterize,whiteboard,blackboard,aqua;exposure-compensation=0;exposure-compensation-step=1;focus-mode=auto;focus-mode-values=auto,infinity,normal,macro;iso=auto;iso-values=auto,ISO_HJR,ISO100,ISO200,ISO400,ISO800;jpeg-quality=85;jpeg-thumbnail-height=384;jpeg-thumbnail-quality=90;jpeg-thumbnail-width=512;lensshade=enable;luma-adaptation=3;max-exposure-compensation=5;max-zoom=6;min-exposure-compensation=-2;picture-format=jpeg;picture-format-values=jpeg,raw;picture-size=1024x768;picture-size-values=2048x1536,1600x1200,1024x768;preview-format=yuv420sp;preview-format-values=yuv420sp;preview-frame-rate=15;preview-frame-rate-values=10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25;preview-size=640x480;preview-size-values=800x480,768x43

I/CameraHAL( 2411): qcamera_set_parameters: antibanding=off;antibanding-values=off,50hz,60hz,auto;auto-exposure=frame-average;auto-exposure-values=frame-average,center-weighted,spot-metering;contrast=3;contrast-def=3;contrast-max=4;effect=none;effect-values=none,mono,negative,solarize,sepia,posterize,whiteboard,blackboard,aqua;exposure-compensation=0;exposure-compensation-step=1;focus-mode=auto;focus-mode-values=auto,infinity,normal,macro;iso=auto;iso-values=auto,ISO_HJR,ISO100,ISO200,ISO400,ISO800;jpeg-quality=85;jpeg-thumbnail-height=384;jpeg-thumbnail-quality=90;jpeg-thumbnail-width=512;lensshade=enable;luma-adaptation=3;max-exposure-compensation=5;max-zoom=6;min-exposure-compensation=-2;picture-format=jpeg;picture-format-values=jpeg,raw;picture-size=2048x1536;picture-size-values=2048x1536,1600x1200,1024x768;preview-format=yuv420sp;preview-format-values=yuv420sp;preview-frame-rate=25;preview-frame-rate-values=10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25;preview-size=320x240;preview-size-values=800x480,768x432,640x480,576x

I/QualcommCameraHardware( 2411): Parameter Rolloff is not supported for this sensor

I/CameraHAL( 2411): qcamera_get_parameters

I/CameraHAL( 2411): qcamera_get_parameters: after calling qCamera->getParameters()

I/CameraHAL( 2411): camera_get_parameters: returning rc:0x26330 :antibanding=off;antibanding-values=off,50hz,60hz,auto;auto-exposure=frame-average;auto-exposure-values=frame-average,center-weighted,spot-metering;contrast=3;contrast-def=3;contrast-max=4;effect=none;effect-values=none,mono,negative,solarize,sepia,posterize,whiteboard,blackboard,aqua;exposure-compensation=0;exposure-compensation-step=1;focus-mode=auto;focus-mode-values=auto,infinity,normal,macro;iso=auto;iso-values=auto,ISO_HJR,ISO100,ISO200,ISO400,ISO800;jpeg-quality=85;jpeg-thumbnail-height=384;jpeg-thumbnail-quality=90;jpeg-thumbnail-width=512;lensshade=enable;luma-adaptation=3;max-exposure-compensation=5;max-zoom=6;min-exposure-compensation=-2;picture-format=jpeg;picture-format-values=jpeg,raw;picture-size=2048x1536;picture-size-values=2048x1536,1600x1200,1024x768;preview-format=yuv420sp;preview-format-values=yuv420sp;preview-frame-rate=25;preview-frame-rate-values=10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25;preview-size=320x240;preview-size-values=800x480

I/CameraHAL( 2411): qcamera_put_parameters: params:0x26330 antibanding=off;antibanding-values=off,50hz,60hz,auto;auto-exposure=frame-average;auto-exposure-values=frame-average,center-weighted,spot-metering;contrast=3;contrast-def=3;contrast-max=4;effect=none;effect-values=none,mono,negative,solarize,sepia,posterize,whiteboard,blackboard,aqua;exposure-compensation=0;exposure-compensation-step=1;focus-mode=auto;focus-mode-values=auto,infinity,normal,macro;iso=auto;iso-values=auto,ISO_HJR,ISO100,ISO200,ISO400,ISO800;jpeg-quality=85;jpeg-thumbnail-height=384;jpeg-thumbnail-quality=90;jpeg-thumbnail-width=512;lensshade=enable;luma-adaptation=3;max-exposure-compensation=5;max-zoom=6;min-exposure-compensation=-2;picture-format=jpeg;picture-format-values=jpeg,raw;picture-size=2048x1536;picture-size-values=2048x1536,1600x1200,1024x768;preview-format=yuv420sp;preview-format-values=yuv420sp;preview-frame-rate=25;preview-frame-rate-values=10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25;preview-size=320x240;preview-size-values=800x480,768x4

I/Process ( 1462): Sending signal. PID: 2630 SIG: 3

I/dalvikvm( 2630): threadid=3: reacting to signal 3

V/camera ( 2630): Preview size is 320x240

I/dalvikvm( 2630): Wrote stack traces to '/data/anr/traces.txt'

V/MediaProfilesJNI( 2630): native_get_num_image_encoding_quality_levels

V/MediaProfilesJNI( 2630): native_get_image_encoding_quality_level

V/MediaProfilesJNI( 2630): native_get_image_encoding_quality_level

V/MediaProfilesJNI( 2630): native_get_image_encoding_quality_level

D/CameraSettings( 2630): Parameters: [antibanding-values=off,50hz,60hz,auto, antibanding=off, auto-exposure-values=frame-average,center-weighted,spot-metering, auto-exposure=frame-average, contrast-def=3, contrast-max=4, contrast=3, effect-values=none,mono,negative,solarize,sepia,posterize,whiteboard,blackboard,aqua, effect=none, exposure-compensation-step=1, exposure-compensation=0, focus-mode-values=auto,infinity,normal,macro, focus-mode=auto, iso-values=auto,ISO_HJR,ISO100,ISO200,ISO400,ISO800, iso=auto, jpeg-quality=95, jpeg-thumbnail-height=384, jpeg-thumbnail-quality=90, jpeg-thumbnail-width=512, lensshade=enable, luma-adaptation=3, max-exposure-compensation=5, max-zoom=6, min-exposure-compensation=-2, picture-format-values=jpeg,raw, picture-format=jpeg, picture-size-values=2048x1536,1600x1200,1024x768, picture-size=2048x1536, preview-format-values=yuv420sp, preview-format=yuv420sp, preview-frame-rate-values=10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25, preview-frame-rate=25, preview-size-values=800x480,768x432,640x480,576x432,480x320,384x288,352x288,320x240,240x160,176x144, preview-size=320x240, saturation-def=2, saturation-max=4, saturation=2, sharpness-def=2, sharpness-max=4, sharpness=2, video-frame-format=yuv420sp, whitebalance-values=auto,incandescent,fluorescent,daylight,cloudy-daylight, whitebalance=auto, zoom-ratios=100,150,200,250,300,350,400, zoom-supported=true, zoom=0]

I/CameraHAL( 2411): qcamera_set_parameters: antibanding=off;antibanding-values=off,50hz,60hz,auto;auto-exposure=frame-average;auto-exposure-values=frame-average,center-weighted,spot-metering;contrast=3;contrast-def=3;contrast-max=4;effect=none;effect-values=none,mono,negative,solarize,sepia,posterize,whiteboard,blackboard,aqua;exposure-compensation=0;exposure-compensation-step=1;focus-mode=auto;focus-mode-values=auto,infinity,normal,macro;iso=auto;iso-values=auto,ISO_HJR,ISO100,ISO200,ISO400,ISO800;jpeg-quality=95;jpeg-thumbnail-height=384;jpeg-thumbnail-quality=90;jpeg-thumbnail-width=512;lensshade=enable;luma-adaptation=3;max-exposure-compensation=5;max-zoom=6;min-exposure-compensation=-2;picture-format=jpeg;picture-format-values=jpeg,raw;picture-size=2048x1536;picture-size-values=2048x1536,1600x1200,1024x768;preview-format=yuv420sp;preview-format-values=yuv420sp;preview-frame-rate=25;preview-frame-rate-values=10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25;preview-size=320x240;preview-size-values=800x480,768x432,640x480,576x

I/QualcommCameraHardware( 2411): Parameter Rolloff is not supported for this sensor

V/camera ( 2630): startPreview

I/CameraHAL( 2411): qcamera_preview_enabled:

I/CameraHAL( 2411): qcamera_set_preview_window : Window :0x0

I/CameraHAL( 2411): qcamera_set_preview_window : window :0x0

I/CameraHAL( 2411): qcamera_start_preview: Enabling CAMERA_MSG_PREVIEW_FRAME

I/CameraHAL( 2411): qcamera_start_preview: Preview enabled:0 msg enabled:0

F/libc ( 2411): Fatal signal 11 (SIGSEGV) at 0x81f7ff30 (code=1)

W/Camera ( 2630): Camera server died!

W/Camera ( 2630): ICamera died

I/ServiceManager( 1327): service 'media.audio_flinger' died

I/ServiceManager( 1327): service 'media.player' died

I/ServiceManager( 1327): service 'media.camera' died

I/ServiceManager( 1327): service 'media.audio_policy' died

W/AudioSystem( 1462): AudioFlinger server died!

W/AudioSystem( 1462): AudioPolicyService server died!

E/Camera ( 2630): Error 100

E/CameraErrorCallback( 2630): Got camera error callback. error=100

D/AndroidRuntime( 2630): Shutting down VM

W/dalvikvm( 2630): threadid=1: thread exiting with uncaught exception (group=0x40a0e1f8)

E/AndroidRuntime( 2630): FATAL EXCEPTION: main

E/AndroidRuntime( 2630): java.lang.RuntimeException: Media server died.

E/AndroidRuntime( 2630):	at com.android.camera.CameraErrorCallback.onError(CameraErrorCallback.java:31)

E/AndroidRuntime( 2630):	at android.hardware.Camera$EventHandler.handleMessage(Camera.java:769)

E/AndroidRuntime( 2630):	at android.os.Handler.dispatchMessage(Handler.java:99)

E/AndroidRuntime( 2630):	at android.os.Looper.loop(Looper.java:137)

E/AndroidRuntime( 2630):	at android.app.ActivityThread.main(ActivityThread.java:4575)

E/AndroidRuntime( 2630):	at java.lang.reflect.Method.invokeNative(Native Method)

E/AndroidRuntime( 2630):	at java.lang.reflect.Method.invoke(Method.java:511)

E/AndroidRuntime( 2630):	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:789)

E/AndroidRuntime( 2630):	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:556)

E/AndroidRuntime( 2630):	at dalvik.system.NativeStart.main(Native Method)

W/ActivityManager( 1462): Force finishing activity com.android.camera/.Camera

then after everything opens...

E/CameraHAL( 2656): CameraHAL_GetNum_Cameras:

D/CameraHAL( 2656): CameraHAL_GetNum_Cameras: loading libcamera at 0xb000e448

D/CameraHAL( 2656): CameraHAL_GetNum_Cameras: numCameras:1

libs attached

I hope this helps, and I hope you can help us.

Also, this might help you

https://github.com/rapmv78/android_hardware_qcom_camerahal

it is a camera wrapper for gingerbread libcamera, that a fair few devices now use for fully working camera