I can't boot into my ROM, I keep running into dex problems. - Android Builders Collective

I'm making a CM12.1 ROM port. Every time after compilation, I'm just stuck on the boot screen. My logcat logs always look like this:
Code:
D/gps_ril_BRCM( 1390): ril thread received 0 events
D/gps_ril_BRCM( 1390): ril_state_thread, fd < 0, calling timeout_action_add
I/DEBUG ( 1389): tid 15467 does not exist in pid 15467. ignoring debug request
I/ServiceManager( 1385): service 'media.audio_flinger' died
I/ServiceManager( 1385): service 'media.player' died
I/ServiceManager( 1385): service 'media.camera' died
I/ServiceManager( 1385): service 'media.audio_policy' died
D/gps_ril_BRCM( 1390): ril thread received 0 events
D/gps_ril_BRCM( 1390): ril_state_thread, fd < 0, calling timeout_action_add
I/mediaserver(15513): ServiceManager: 0x2a00b448
I/AudioFlinger(15513): Using default 3000 mSec as standby time.
E/MediaPlayerFactory(15513): calling dlopen on FACTORY_LIB
E/MediaPlayerFactory(15513): calling dlsym on pFactoryLib for FACTORY_CREATE_FN
E/MediaPlayerFactory(15513): registering DASH Player factory...
I/CameraService(15513): CameraService started (pid=15513)
I/CameraService(15513): Loaded "BCM21553 Camera HAL" camera module
D/BcmCamera(15513): HAL_get_number_of_cameras: numCameras:1
I/AudioPolicyManagerBase(15513): loadAudioPolicyConfig() loaded /system/etc/audio_policy.conf
I/AudioFlinger(15513): loadHwModule() Loaded primary audio interface from Samsung BCM21553 audio HW HAL (audio) handle 1
I/AudioFlinger(15513): HAL output buffer size 1024 frames, normal mix buffer size 1024 frames
I/AudioMixer(15513): found effect "Multichannel Downmix To Stereo" from The Android Open Source Project
I/AudioFlinger(15513): Using module 1 has the primary audio interface
D/AudioPolicyManagerBase(15513): setOutputDevice() changing device from (2) to (2) force (1) delayMs (0) on Output (2)
I/AudioFlinger(15513): AudioFlinger's thread 0x40f53008 ready to run
W/AudioFlinger(15513): Thread AudioOut_2 cannot connect to the power manager service
D/audio_hw_primary(15513): call=n, earpiece=n hp=n speaker=y sco=n a2dp=n out_device=2
W/AudioFlinger(15513): Thread AudioOut_2 cannot connect to the power manager service
I/audio_a2dp_hw(15513): adev_open: adev_open in A2dp_hw module
I/AudioFlinger(15513): loadHwModule() Loaded a2dp audio interface from A2DP Audio HW HAL (audio) handle 3
I/AudioFlinger(15513): loadHwModule() Loaded usb audio interface from USB audio HW HAL (audio) handle 4
W/AudioFlinger(15513): Thread AudioOut_2 cannot connect to the power manager service
E/AudioFlinger(15513): no wake lock to update!
I/r_submix(15513): adev_open(name=audio_hw_if)
I/r_submix(15513): adev_init_check()
I/AudioFlinger(15513): loadHwModule() Loaded r_submix audio interface from Wifi Display audio HAL (audio) handle 5
I/AudioPolicyService(15513): Loaded audio policy from LEGACY Audio Policy HAL (audio_policy)
D/gps_ril_BRCM( 1390): ril thread received 0 events
D/gps_ril_BRCM( 1390): ril_state_thread, fd < 0, calling timeout_action_add
D/AndroidRuntime(15512):
D/AndroidRuntime(15512): >>>>>> AndroidRuntime START com.android.internal.os.ZygoteInit <<<<<<
D/AndroidRuntime(15512): CheckJNI is OFF
D/dalvikvm(15512): Unable to stat classpath element '/system/framework/core.jar'
D/dalvikvm(15512): DexOpt: incorrect opt magic number (0xff ff ff ff)
D/dalvikvm(15512): ODEX file is stale or bad; removing and retrying (/data/dalvik-cache/[email protected]@[email protected])
D/dalvikvm(15512): DexOpt: --- BEGIN 'conscrypt.jar' (bootstrap=1) ---
E/dalvikvm(15640): Fatal error: java/lang/Object
E/dalvikvm(15640): VM aborting
F/libc (15640): Fatal signal 6 (SIGABRT) at 0x00003d18 (code=-6), thread 15640 (dexopt)
I/DEBUG ( 1389): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
I/DEBUG ( 1389): Build fingerprint: 'Samsung/cm_totoro/totoro:5.1.1/KTU84Q/20150211:userdebug/release-keys'
I/DEBUG ( 1389): Revision: '0'
I/DEBUG ( 1389): pid: 15640, tid: 15640, name: dexopt >>> /system/bin/dexopt <<<
[A bunch of seemingly random (at least for such a noob like me) numbers]
W/dalvikvm(15512): DexOpt: --- END 'conscrypt.jar' --- status=0x0006, process failed
E/dalvikvm(15512): Unable to extract+optimize DEX from '/system/framework/conscrypt.jar'
D/dalvikvm(15512): Unable to process classpath element '/system/framework/conscrypt.jar'
D/dalvikvm(15512): DexOpt: incorrect opt magic number (0xff ff ff ff)
D/dalvikvm(15512): ODEX file is stale or bad; removing and retrying (/data/dalvik-cache/[email protected]@[email protected])
D/gps_ril_BRCM( 1390): ril thread received 0 events
D/gps_ril_BRCM( 1390): ril_state_thread, fd < 0, calling timeout_action_add
D/dalvikvm(15512): DexOpt: --- BEGIN 'okhttp.jar' (bootstrap=1) ---
E/dalvikvm(15692): Fatal error: java/lang/Object
E/dalvikvm(15692): VM aborting
F/libc (15692): Fatal signal 6 (SIGABRT) at 0x00003d4c (code=-6), thread 15692 (dexopt)
I/DEBUG ( 1389): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
I/DEBUG ( 1389): Build fingerprint: 'Samsung/cm_totoro/totoro:5.1.1/KTU84Q/20150211:userdebug/release-keys'
And so on, and so on, until it fails to load everything and starts all over again.
And yes, if you look at the logs, I am porting a ROM to an obsolete device and no, I don't really care that it's "not gonna work". I just want to fix that dex problem.
What I tried so far:
- cleaning up the rom (did nothing)
- changing up a few libraries that had something to do with "dex" (did nothing, but I might have missed something)
- re-unpacked the frameworks (did nothing)
- re-downloaded the rom then re-unpacked the frameworks (also did nothing)
- downloaded another rom and re-unpacked the frameworks (did nothing, what a waste of bandwidth)
- cleared Dalvik cache (did not do anything, I do that every build alongside with a factory wipe in CWM)
- changed the kernel TWICE (did nothing except for making logcat work (it wasn't working for a few builds))
Anyone got any ideas?

knuxfanwin8 said:
I'm making a CM12.1 ROM port. Every time after compilation, I'm just stuck on the boot screen. My logcat logs always look like this:
And so on, and so on, until it fails to load everything and starts all over again.
And yes, if you look at the logs, I am porting a ROM to an obsolete device and no, I don't really care that it's "not gonna work". I just want to fix that dex problem.
What I tried so far:
- cleaning up the rom (did nothing)
- changing up a few libraries that had something to do with "dex" (did nothing, but I might have missed something)
- re-unpacked the frameworks (did nothing)
- re-downloaded the rom then re-unpacked the frameworks (also did nothing)
- downloaded another rom and re-unpacked the frameworks (did nothing, what a waste of bandwidth)
- cleared Dalvik cache (did not do anything, I do that every build alongside with a factory wipe in CWM)
- changed the kernel TWICE (did nothing except for making logcat work (it wasn't working for a few builds))
Anyone got any ideas?
Click to expand...
Click to collapse
Yeah. You need to Deodex both ROM BASE and PORT BEFORE you build. That is the reason you keep getting dex errors. Use ASSAYYED Kitchen or @superR's Kitchen or similar to accomplish this ?

Related

[Q] cyanogenMod 7, need help

It seems that prelink error when compile. How to fixed it? Need prelink-linux-ds.map?
~/dream_sapphire $ adb logcat |grep prelink
- waiting for device -
E/HAL ( 143): Cannot load library: link_image[1962]: 104 could not load needed library 'libgps.so' for 'gps.sapphire.so' (reserve_mem_region[831]: OOPS: 104 prelinked library 'libgps.so' mapped at 0x45fb8000, not at 0xa9700000)
E/QualcommCameraHardware( 105): FATAL ERROR: could not dlopen liboemcamera.so: Cannot load library: reserve_mem_region[831]: OOPS: 105 prelinked library 'liboemcamera.so' mapped at 0x40c0c000, not at 0xa9400000

[S4][DEVs only] Zoe development

Using this mod: http://forum.xda-developers.com/showthread.php?t=2436347
we are currently stuck here (no front camera and zoom bug), enabling front camera we got this:
Code:
[COLOR="Red"]E/ ( 274): [AWB Calibration] read fuse ID fail
E/mm-camera( 274): [sensor_getVersion] get version fail
E/mm-camera( 274): MCTL_COMPID_ACTUATOR handle is NULL[/COLOR]
E/QCameraHWI_Parm( 260): Video HDR mode is not supported for this sensor
W/QCameraHWI_Parm( 260): setVideoMode is not supported if PHOTO MODE
W/QCameraHWI_Parm( 260): setVideoMode is not supported if PHOTO MODE
W/QCameraHWI_Parm( 260): android::status_t android::QCameraHardwareInterface::captureModeInitConfig(): other capture mode 1
D/Vold ( 245): Receive camera burst event
E/mm-camera( 274): MCTL_COMPID_ACTUATOR handle is NULL
W/S_CameraController( 4045): OIS is not supported.
W/S_CameraController( 4045): Video slow motion is not supported.
W/S_CameraController( 4045): Video Stabilization is not supported.
W/S_CameraController( 4045): Video 720p 60fps is not supported.
W/S_CameraController( 4045): Video HDR is not supported.
W/S_CameraController( 4045): Photo HDR is not supported.
E/S_CameraController( 4045): SupportedList.FlashMode == null
W/S_ZoeController( 4045): exitZoeMode() - Zoe mode is not entered
D/Property( 4045): [ICaptureResolutionManager.PhotoResolution] PHOTO_16_9_3264x1840(3264x1840) -> PHOTO_4_3_640x480(640x480)
D/Property( 4045): [ICaptureResolutionManager.VideoResolution] QHD(960x544) -> VGA(640x480)
E/S_CameraController( 4045): not support FlashMode !!
E/QCameraHWI_Parm( 260): Video HDR mode is not supported for this sensor
W/QCameraHWI_Parm( 260): setVideoMode is not supported if PHOTO MODE
W/QCameraHWI_Parm( 260): setVideoMode is not supported if PHOTO MODE
W/QCameraHWI_Parm( 260): android::status_t android::QCameraHardwareInterface::captureModeInitConfig(): other capture mode 1
[COLOR="Red"]E/QCameraHWI_Parm( 260): android::status_t android::QCameraHardwareInterface::setFocusMode(const android::CameraParameters&):Could not look up str value
E/QCameraHWI_Parm( 260): Invalid focus mode value: continuous-picture[/COLOR] [COLOR="Blue"]-> need framework fix, but it's not a big problem[/COLOR]
E/QCameraHWI_Parm( 260): android::status_t android::QCameraHardwareInterface::setParameters(const android::CameraParameters&): 2171, rc = -22
D/Vold ( 245): Receive camera burst event
[COLOR="Red"]E/mm-camera( 274): MCTL_COMPID_ACTUATOR handle is NULL
E/S_CameraController( 4045): setParameters exception[/COLOR] [COLOR="Blue"]-> it should be important[/COLOR]
E/mm-camera( 274): camif_client_set_params: camif has associated with obj mask 0x1
E/mm-camera( 274): config_MSG_ID_RESET_ACK CAMIF_PARAMS_ADD_OBJ_ID failed -1
[COLOR="Red"]F/libc ( 274): Fatal signal 11 (SIGSEGV) at 0x00000000 (code=1), thread 4116 (mm-qcamera-daem)[/COLOR][COLOR="Blue"] -> i think it's crashing because of other problems[/COLOR]
I/DEBUG ( 257): debuggerd: 2013-09-20 03:00:40
I/DEBUG ( 257): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
I/DEBUG ( 257): Build fingerprint: 'htc/htc_europe/ville:4.2.2/JDQ39/240250.1:user/release-keys'
I/DEBUG ( 257): Revision: '3'
I/DEBUG ( 257): pid: 274, tid: 4116, name: mm-qcamera-daem >>> /system/bin/mm-qcamera-daemon <<<
....
I/DEBUG ( 257): backtrace:
I/DEBUG ( 257): #00 pc 00000000 <unknown>
I/DEBUG ( 257): #01 pc 0005ce0d /system/lib/liboemcamera.so
I/DEBUG ( 257): #02 pc 0002484d /system/lib/liboemcamera.so
I/DEBUG ( 257): #03 pc 0000e4b8 /system/lib/libc.so (__thread_entry+72)
I/DEBUG ( 257): #04 pc 0000dba4 /system/lib/libc.so (pthread_create+160)
I/DEBUG ( 257):
I/DEBUG ( 257): stack:
I/DEBUG ( 257): 4078e800 0003eed4
I/DEBUG ( 257): 4078e804 4043ce21 /system/lib/liboemcamera.so (vfe_config_mode+732)
I/DEBUG ( 257): 4078e808 00000005
I/DEBUG ( 257): 4078e80c 404a32c0
I/DEBUG ( 257): 4078e810 00000001
I/DEBUG ( 257): 4078e814 4078e88c [stack:4116]
I/DEBUG ( 257): 4078e818 00000000
I/DEBUG ( 257): 4078e81c 407b738c [stack:4116]
I/DEBUG ( 257): 4078e820 40436179 /system/lib/liboemcamera.so
I/DEBUG ( 257): 4078e824 4043909d /system/lib/liboemcamera.so
I/DEBUG ( 257): 4078e828 40438e7d /system/lib/liboemcamera.so
...
[COLOR="Red"]E/mm-camera( 4144): qcamsvr_load_gesture_lib Error opening gesture library
E/mm-camera( 4144): Cannot init Gesture library[/COLOR] [COLOR="Blue"]-> missing libs? not a big problem btw[/COLOR]
W/S_OperationTimeoutController( 4045): [Timeout] Name : Start preview
W/S_OperationTimeoutController( 4045): [Timeout] Start time : 1379638840004
W/S_OperationTimeoutController( 4045): [Timeout] Timeout : 5000
W/S_OperationTimeoutController( 4045): [Timeout] Call-back executor : [email protected]
W/S_HTCCamera( 4045): notifyCameraThreadBlocked(BlockedInCameraDriver)
W/S_HTCCamera( 4045): onCameraThreadBlocked(BlockedInCameraDriver)
W/S_AutoFocusController( 4045): unlockAutoFocus() - Null handle
W/S_ImageSettingsController( 4045): unlockAutoExposure() - Null handle
W/S_ImageSettingsController( 4045): unlockAutoWhiteBalance() - Null handle
W/S_HTCCamera( 4045): onPause() - mIsUIReady = false
W/AudioService( 920): stream was not muted by this client
E/AudioService( 920): Could not get client death handler for stream: 5
W/S_HTCCamera( 4045): onPause mIdle is false
W/S_HTCCamera( 4045): OnPause - Freeze UI !!!
W/S_HTCCamera( 4045): doOnPause() - start
W/S_HTCCamera( 4045): stopAccelerometer() - isAccelerometerStarted = false
W/S_HTCCamera( 4045): OnPause - hide UI, set mMainLayout invisible
W/S_HTCCamera( 4045): doOnPause() - end
[COLOR="Red"]E/mm-libcamera2( 260): mm_camera_stream_fsm_reg: ioctl VIDIOC_STREAMON failed: rc=-1
E/mm-libcamera2( 260): mm_camera_ch_fn: Failed in STREAM ON
E/mm-libcamera2( 260): mm_camera_action_start: rc=-1[/COLOR] [COLOR="Blue"]-> very important[/COLOR]
E/QCameraHWI_Still( 260): android::status_t android::QCameraStream_Snapshot::startStreamZSL(): Failure starting ZSL stream
[COLOR="Red"]E/mm-camera( 4144): qcamsvr_find_mctl_inst: no match for mctl_id = 1
E/mm-camera( 4144): qcamsvr_process_server_node_event: MSM_V4L2_* - cannot find mctl, id = 1[/COLOR] [COLOR="Blue"]-> it should be important[/COLOR]
is there a dev that already encountered this problem, and can help us?
@ImagioX1 @E.Cadro @olvrick @Turge @Zarboz
pirlano said:
Using this mod: http://forum.xda-developers.com/showthread.php?t=2436347
we are currently stuck here (no front camera and zoom bug), enabling front camera we got this:
Code:
[COLOR="Red"]E/ ( 274): [AWB Calibration] read fuse ID fail
E/mm-camera( 274): [sensor_getVersion] get version fail
E/mm-camera( 274): MCTL_COMPID_ACTUATOR handle is NULL[/COLOR]
E/QCameraHWI_Parm( 260): Video HDR mode is not supported for this sensor
W/QCameraHWI_Parm( 260): setVideoMode is not supported if PHOTO MODE
W/QCameraHWI_Parm( 260): setVideoMode is not supported if PHOTO MODE
W/QCameraHWI_Parm( 260): android::status_t android::QCameraHardwareInterface::captureModeInitConfig(): other capture mode 1
D/Vold ( 245): Receive camera burst event
E/mm-camera( 274): MCTL_COMPID_ACTUATOR handle is NULL
W/S_CameraController( 4045): OIS is not supported.
W/S_CameraController( 4045): Video slow motion is not supported.
W/S_CameraController( 4045): Video Stabilization is not supported.
W/S_CameraController( 4045): Video 720p 60fps is not supported.
W/S_CameraController( 4045): Video HDR is not supported.
W/S_CameraController( 4045): Photo HDR is not supported.
E/S_CameraController( 4045): SupportedList.FlashMode == null
W/S_ZoeController( 4045): exitZoeMode() - Zoe mode is not entered
D/Property( 4045): [ICaptureResolutionManager.PhotoResolution] PHOTO_16_9_3264x1840(3264x1840) -> PHOTO_4_3_640x480(640x480)
D/Property( 4045): [ICaptureResolutionManager.VideoResolution] QHD(960x544) -> VGA(640x480)
E/S_CameraController( 4045): not support FlashMode !!
E/QCameraHWI_Parm( 260): Video HDR mode is not supported for this sensor
W/QCameraHWI_Parm( 260): setVideoMode is not supported if PHOTO MODE
W/QCameraHWI_Parm( 260): setVideoMode is not supported if PHOTO MODE
W/QCameraHWI_Parm( 260): android::status_t android::QCameraHardwareInterface::captureModeInitConfig(): other capture mode 1
[COLOR="Red"]E/QCameraHWI_Parm( 260): android::status_t android::QCameraHardwareInterface::setFocusMode(const android::CameraParameters&):Could not look up str value
E/QCameraHWI_Parm( 260): Invalid focus mode value: continuous-picture[/COLOR] [COLOR="Blue"]-> need framework fix, but it's not a big problem[/COLOR]
E/QCameraHWI_Parm( 260): android::status_t android::QCameraHardwareInterface::setParameters(const android::CameraParameters&): 2171, rc = -22
D/Vold ( 245): Receive camera burst event
[COLOR="Red"]E/mm-camera( 274): MCTL_COMPID_ACTUATOR handle is NULL
E/S_CameraController( 4045): setParameters exception[/COLOR] [COLOR="Blue"]-> it should be important[/COLOR]
E/mm-camera( 274): camif_client_set_params: camif has associated with obj mask 0x1
E/mm-camera( 274): config_MSG_ID_RESET_ACK CAMIF_PARAMS_ADD_OBJ_ID failed -1
[COLOR="Red"]F/libc ( 274): Fatal signal 11 (SIGSEGV) at 0x00000000 (code=1), thread 4116 (mm-qcamera-daem)[/COLOR][COLOR="Blue"] -> i think it's crashing because of other problems[/COLOR]
I/DEBUG ( 257): debuggerd: 2013-09-20 03:00:40
I/DEBUG ( 257): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
I/DEBUG ( 257): Build fingerprint: 'htc/htc_europe/ville:4.2.2/JDQ39/240250.1:user/release-keys'
I/DEBUG ( 257): Revision: '3'
I/DEBUG ( 257): pid: 274, tid: 4116, name: mm-qcamera-daem >>> /system/bin/mm-qcamera-daemon <<<
....
I/DEBUG ( 257): backtrace:
I/DEBUG ( 257): #00 pc 00000000 <unknown>
I/DEBUG ( 257): #01 pc 0005ce0d /system/lib/liboemcamera.so
I/DEBUG ( 257): #02 pc 0002484d /system/lib/liboemcamera.so
I/DEBUG ( 257): #03 pc 0000e4b8 /system/lib/libc.so (__thread_entry+72)
I/DEBUG ( 257): #04 pc 0000dba4 /system/lib/libc.so (pthread_create+160)
I/DEBUG ( 257):
I/DEBUG ( 257): stack:
I/DEBUG ( 257): 4078e800 0003eed4
I/DEBUG ( 257): 4078e804 4043ce21 /system/lib/liboemcamera.so (vfe_config_mode+732)
I/DEBUG ( 257): 4078e808 00000005
I/DEBUG ( 257): 4078e80c 404a32c0
I/DEBUG ( 257): 4078e810 00000001
I/DEBUG ( 257): 4078e814 4078e88c [stack:4116]
I/DEBUG ( 257): 4078e818 00000000
I/DEBUG ( 257): 4078e81c 407b738c [stack:4116]
I/DEBUG ( 257): 4078e820 40436179 /system/lib/liboemcamera.so
I/DEBUG ( 257): 4078e824 4043909d /system/lib/liboemcamera.so
I/DEBUG ( 257): 4078e828 40438e7d /system/lib/liboemcamera.so
...
[COLOR="Red"]E/mm-camera( 4144): qcamsvr_load_gesture_lib Error opening gesture library
E/mm-camera( 4144): Cannot init Gesture library[/COLOR] [COLOR="Blue"]-> missing libs? not a big problem btw[/COLOR]
W/S_OperationTimeoutController( 4045): [Timeout] Name : Start preview
W/S_OperationTimeoutController( 4045): [Timeout] Start time : 1379638840004
W/S_OperationTimeoutController( 4045): [Timeout] Timeout : 5000
W/S_OperationTimeoutController( 4045): [Timeout] Call-back executor : [email protected]
W/S_HTCCamera( 4045): notifyCameraThreadBlocked(BlockedInCameraDriver)
W/S_HTCCamera( 4045): onCameraThreadBlocked(BlockedInCameraDriver)
W/S_AutoFocusController( 4045): unlockAutoFocus() - Null handle
W/S_ImageSettingsController( 4045): unlockAutoExposure() - Null handle
W/S_ImageSettingsController( 4045): unlockAutoWhiteBalance() - Null handle
W/S_HTCCamera( 4045): onPause() - mIsUIReady = false
W/AudioService( 920): stream was not muted by this client
E/AudioService( 920): Could not get client death handler for stream: 5
W/S_HTCCamera( 4045): onPause mIdle is false
W/S_HTCCamera( 4045): OnPause - Freeze UI !!!
W/S_HTCCamera( 4045): doOnPause() - start
W/S_HTCCamera( 4045): stopAccelerometer() - isAccelerometerStarted = false
W/S_HTCCamera( 4045): OnPause - hide UI, set mMainLayout invisible
W/S_HTCCamera( 4045): doOnPause() - end
[COLOR="Red"]E/mm-libcamera2( 260): mm_camera_stream_fsm_reg: ioctl VIDIOC_STREAMON failed: rc=-1
E/mm-libcamera2( 260): mm_camera_ch_fn: Failed in STREAM ON
E/mm-libcamera2( 260): mm_camera_action_start: rc=-1[/COLOR] [COLOR="Blue"]-> i don't think it's too much important[/COLOR]
E/QCameraHWI_Still( 260): android::status_t android::QCameraStream_Snapshot::startStreamZSL(): Failure starting ZSL stream
[COLOR="Red"]E/mm-camera( 4144): qcamsvr_find_mctl_inst: no match for mctl_id = 1
E/mm-camera( 4144): qcamsvr_process_server_node_event: MSM_V4L2_* - cannot find mctl, id = 1[/COLOR] [COLOR="Blue"]-> it should be important[/COLOR]
is there a dev that already encountered this problem, and can help us?
@ImagioX1 @E.Cadro @olvrick @Turge @Zarboz
Click to expand...
Click to collapse
grep is your friend
MCTL_COMPID_ACTUATOR
Zarboz said:
grep is your friend
MCTL_COMPID_ACTUATOR
Click to expand...
Click to collapse
i know, the problem is in liboemcamera.so, mctl_init & sensor_init are changed, and i'm looking at this
i was just asking if One XL devs already solved this problem in the past or not, or if you have some hints
In One S liboemcamera there is one only "MCTL_COMPID_ACTUATOR handle is NULL" reference:
.rodata:000BBAEA aMctl_compid__0 DCB "MCTL_COMPID_ACTUATOR handle is NULL",0xA,0
In One liboemcamera there are three reference:
.rodata:000AAB54 aMctl_compid_ac DCB "MCTL_COMPID_ACTUATOR handle is NULL",0xA,0 ; DATA XREF: sub_1F240+A64o
.rodata:000C650C aSMctl_compid_0 DCB "%s MCTL_COMPID_ACTUATOR handle is NULL",0xA,0
.rodata:000C7EF4 aSMctl_compid_2 DCB "%s: MCTL_COMPID_ACTUATOR handle is NULL",0xA,0
the one causing the error is the first
in dmesg, error happens beetween this two lines:
<6>[ 141.009064] c1 4731 [CAM] mt9v113_ioctl, cfgtype = 10
(reached with original cam and zoe mod)
it's in drivers/media/video/msm/sensor/mt9v113_v4l2.c
function: int mt9v113_sensor_config(void __user *argp)
<6>[ 141.009430] c1 4731 [CAM] vfe32_proc_general: cmdID = START
(start is not reached with Zoe mod)
it's in drivers/media/video/msm/vfe/msm_vfe32.c
function: static int vfe32_proc_general(
struct msm_cam_media_controller *pmctl,
struct msm_isp_cmd *cmd,
struct vfe32_ctrl_type *vfe32_ctrl)
Will be great to be ported this feature and new [ROM] MaximusHD 10.0.0 - 4.2.2 Sense 5 -> will be the best one for ONE S
Will wait this with big impatience to be fixed and work of my favorite phone - One S
Thanks
i'm using this tutorials to try to debug liboemcamera.so:
http://forum.xda-developers.com/showthread.php?t=2050393
http://forum.xda-developers.com/showthread.php?t=1374345
but i'm currently stuck here:
http://forum.xda-developers.com/showpost.php?p=45827106&postcount=13
EDIT: solved few problem
but now, i'm stuck, again
ptrace: I/O error.
If someone want to try to debug native android library using IDA Pro...
[console 1] -> one time only
adb push the gdbserver from ndk to data/local/tmp
adb shell su
adb chmod 755 gdbserver
[console 2] -> don't forget it or debug client will not connect!
adb forward tcp:1111 tcp:1111
[console 3] -> start binary you want to debug (or binary that load library that you want to debug liboemcamera.so in my case, using mm-qcamera-app) -> leave it opened
adb shell
su
echo 0 > /proc/sys/kernel/randomize_va_space (this is to disable ASLR, that cause library to be loaded at random address)
cd system/bin
./mm-qcamera-app
1 or 2
[console 4]->leave it opened
adb shell
su
echo 0 > /proc/sys/kernel/randomize_va_space (just to be sure)
ps (look at PID of mm-qcamera-app)
cd data/local/tmp
./gdbserver --attach :1111 PID_NUMBER_of_mm-qcamera-app
[console 5]
(adb pull system/lib and system/bin here->C:/android-ndk-r9/toolchains/arm-linux-androideabi-4.6/prebuilt/windows-x86_64/bin)
(start gdb from ndk from command line)
gdb.exe
(gdb) set height 0
(gdb) set solib-search-path ./
(gdb) directory C:/android-ndk-r9/toolchains/arm-linux-androideabi-4.6/prebuilt/windows-x86_64/bin
(gdb) target remote 127.0.0.1:1111
Remote debugging using 127.0.0.1:1111
0x4005fe48 in ?? ()
(gdb) info sharedlibrary
Reading symbols from C:/android-ndk-r9/toolchains/arm-linux-androideabi-4.6/preb
uilt/windows-x86_64/bin/mm-qcamera-app...done.
WARNING: no debugging symbols found in C:/android-ndk-r9/toolchains/arm-linux-an
droideabi-4.6/prebuilt/windows-x86_64/bin/mm-qcamera-app.
Either the binary was compiled without debugging information
or the debugging information was removed (e.g., with strip or strip -g).
Debugger capabilities will be very limited.
For further information: http://wiki/Main/GdbFaq#No_debugging_symbols_found
From To Syms Read Shared Object Library
0x40003240 0x4000b978 No C:/android-ndk-r9/toolchains/arm-linux-andro
ideabi-4.6/prebuilt/windows-x86_64/bin/system/bin/linker
0x40055940 0x40085d0c No libc.so
0x400a07f4 0x400a0998 No libstdc++.so
0x400a4e80 0x400b5164 No libm.so
0x40044180 0x40045d44 No liblog.so
0x40027a18 0x4003059c No libcutils.so
0x4025f6a0 0x40263008 No libgemini.so
0x4022f578 0x402543cc No libmmjpeg.so
0x400ca8b0 0x40161250 No liboemcamera.so
0x40296638 0x40296b50 No libmmstillomx.so
0x402a1494 0x402a1630 No libimage-omx-common.so
0x4029a658 0x4029e414 No libimage-jpeg-enc-omx-comp.so
0x4028a284 0x40291a5c No libmmcamera_interface2.so
(gdb)
NOW you have information about library base address! Nice! Copy and paste these information
Now you can just use CTRL+C on console 4, and execute instruction for console 4 again, so we can debug using IDA this time
(IDA)
for new versions->Debugger, Debugger option, option, uncheck "Use hardware temporary breakpoints"
Debugger,Switch Debugger,Remote GDB debugger and check Set as default debugger
Debugger, Process option, applicazion path (../system/bin/blabla), input file (same or ../system/lib/libblabla.so if debugging lib), Hostname: localhost, Port 1111 (or select youself, you will need to use it for all commands) and check "Set as default network setting"
Now load the file you want to debug
File->Open->liboemcamera.so in my case->Ok/Load->Check "Manual load" from the popup->OK->Input 0:400ca8b0 in my case (base address)->Load all section or section that you need->Yes
Wait for autoanalysis, and do some static analysis by yourself, set some breakpoint, etc,etc
When you are ready to debug: Debugger,Start process, Yes
TADA! The ****ing IDA+gdb should now be able to do step by step debug, but i got a ****ing ptrace: I/O error.
using HTC One Mini libs + updating kernel camera parts from HTC One Mini source, front camera is working good, but rear camera quality is really really bad, need a fix
i'll post an alpha mod soon
zoom bug (green rectangle on jpeg) is still present
EDIT: quality became bad because of wrong Auto White Balance not working good with M4 libs, so with a clean installation it will still working good, but if you came from Zoe fix from Magio, you will need to go back to stock libs/camera apps or do a fresh installation
zoe is working but need camera.apk modding to force it (it should be easy, since apk can be decompiled almost to source code)
install over a stock camera
kernel with M4 kernel camera patch: http://www.4shared.com/zip/CRNRFvCD/fabane_ville_m4_cam_26_09_13_v.html
test M4 libs+camera: http://www.4shared.com/zip/wW302ToJ/FixedZoeMagioV4_M4_ville.html
front facing camera is working, zoe needs to be enabled camera.apk side
pirlano said:
install over a stock camera
kernel with M4 kernel camera patch: http://www.4shared.com/zip/CRNRFvCD/fabane_ville_m4_cam_26_09_13_v.html
test M4 libs+camera: http://www.4shared.com/zip/wW302ToJ/FixedZoeMagioV4_M4_ville.html
front facing camera is working, zoe needs to be enabled camera.apk side
Click to expand...
Click to collapse
Well this work over your old kernel to make the one xl roms boot
Sent from my HTC One S using Tapatalk 2
yes, camera part only is changed, tomorrow i'll work on camera.apk
pirlano said:
yes, camera part only is changed, tomorrow i'll work on camera.apk
Click to expand...
Click to collapse
Ok cool need any help send me a pm
Sent from my HTC One S using Tapatalk 2
Hey guys, I know this is still in development but when finished will it work with the Maximus Rom?
Sent from my HTC One S using xda app-developers app
razlack said:
Hey guys, I know this is still in development but when finished will it work with the Maximus Rom?
Sent from my HTC One S using xda app-developers app
Click to expand...
Click to collapse
the question is not "when", but, "if"
i'll start lessons next week, so i will be unable to continue
EDIT:
today, instead of looking at m4 camera.apk, i tryed to fix ffc with stock kernel and m7 libs, i think i have found the solution, don't know if it will work, but it's the better idea that i have found until now
EDIT2:
mt9v113 seems to be incompatible with m7 libs, cannot found a solution, we need an experienced arm hacker or hex-rays arm decompiler (if someone use it at work, license is too expensive for home users)
an ather way it's to create a mt9v113_act.c driver, but i think i'm not able to do that, and if it will work, but maybe a dummy one will work too, will try when i have time
for now the only way it's to use m4 libs, so camera.apk needs hacking (this is much more easy), i will try tomorrow
I'm also trying to understand what's causing the zoom bug...
also with both m4 and m7 libs (with kernel patches to make camera working) manual touch autofocus seems to be buggy with slow motion mode and with 60fps mode
and camera auto white balance need a fix, i'm starting to think that it's better to mod our stock camera, without zoe...****ing close source libs...

[ROM][EOL][CARBON][KK 4.4.4] CarbonROM (MT4GS)

hLe Storm ROM 4.4.4
Looks like I graduated from ArchiKitchen, now compiling from source and I may be on to something here. But first...
Code:
#include
/*
* Your warranty is now void.
*
* I am not responsible for bricked devices, dead SD cards,
* thermonuclear war, or you getting fired because the alarm app failed. Please
* do some research if you have any concerns about features included in this ROM
* before flashing it! YOU are choosing to make these modifications, and
* YOU acknowledge you are doing so at your own risk.
*/
Now that that's out of the way, hLe Storm (pronounced "hailstorm") 4.4.4 is a build of CarbonROM, using the kernel from @Emmanuel U (among advice), and device identity and other projects from Team KitKatDS. As CarbonROM is EOL (end-of-life) as of April 5th (or earlier), some commits have been taken/"cherry picked" from CyanogenMod 11 source.
SCREENSHOTS:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
WHAT WORKS:
Powers on
Phone calls
SMS and (after using the busybox trick) MMS
Mobile Data (HSPA detected with my carrier)
Wifi
Google Play
GPS, based on GPS Status & Toolbox
Camera via UCam app, also now stock and Google Camera
Torch
Needs further testing
WHAT DOES NOT WORK:
Camcorder in stock app records nothing
Probably the same for any replacement Camcorder app (encountered this problem earlier this month)
No detail in the Google Search bar with the default launcher (search and voice search still work, just need to tap blindly)
You tell me...
TODO:
Continue to extensively test current functionality.
Suggestions?
DOWNLOAD:
AndroidFileHost Mirror
CARBON-KK-UNOFFICIAL-20151213-2320-doubleshot.zip (MD5: 023864307a38b61d154e5679b229809b)
GAPPS:
OpenGapps Mini
OpenGapps Micro
OpenGapps Nano
INSTRUCTIONS:
Download ROM above, and your favourite GApps package
Save/push files to your External SD card (preferably in the root folder where you can find it later)
Reboot into recovery ("adb reboot recovery")
Nandroid/Back up device (optional)
Wipe cache and data/factory reset
Install ROM and GApps
Wipe Dalvik cache
Reboot
Enjoy!
CREDITS:
Emmanuel U for the Ion Kernel and other repo fun
Team KitKatDS for the Device Tree and Vendor Info plus other goodies
TeamSXL
TeamHydra
SilverL
TBalden
thewisenerd
streambinder
galaxyfreak
CyanogenMod
CarbonDev
Did I miss anything? I appreciate the feedback, and any thanks as well!
XDA:DevDB Information
[ROM][EOL][CARBON][KK 4.4.4] CarbonROM (MT4GS), ROM for the T-Mobile myTouch 4G Slide
Contributors
joel.maxuel
Source Code: https://github.com/carbon-mt4gs
ROM OS Version: 4.4.x KitKat
ROM Kernel: Linux 3.0.x
Version Information
Status: No Longer Updated
Beta Release Date: 2015-12-13
Created 2015-05-27
Last Updated 2016-08-28
Other Info...
Anyone looking to develop KitKat ROM's for the Doubleshot? This Local Manifest will give you a good start:
If looking to compile updated CarbonROM 4.4.4 for this device, you can start your build environment with:
Code:
mkdir carbon
cd carbon
repo init -u https://github.com/carbon-mt4gs/android.git -b kk && repo sync -f
Then continue all the build steps as normal.
What looks to be the first problem I encountered...camera:
/proc/kmsg
logcat
Essentially (via logcat):
Code:
D/[UCAM]CameraHolder( 9650): Open camera 0
E/CameraService( 170): CameraService::connect X (pid 9650) rejected (invalid cameraId 0).
W/CameraBase( 9650): An error occurred while connecting to camera: 0
E/[UCAM]CameraHolder( 9650): Fail to connect Camera
E/[UCAM]CameraHolder( 9650): java.lang.RuntimeException: Fail to connect to camera service
...and kmsg:
Code:
<4>[ 2831.616455] ------------[ cut here ]------------
<4>[ 2831.616546] WARNING: at /home/joel/carbon/kernel/htc/doubleshot/fs/sysfs/dir.c:455 0xc02879d8()
<4>[ 2831.616668] sysfs: cannot create duplicate filename '/devices/virtual/kgsl/kgsl/proc/9650'
<4>[ 2831.616821] Modules linked in:
<4>[ 2831.616943] Function entered at [<c010cc1c>] from [<c01940e0>]
<4>[ 2831.617034] Function entered at [<c01940e0>] from [<c0194218>]
<4>[ 2831.617156] Function entered at [<c0194218>] from [<c02879d8>]
<4>[ 2831.617218] Function entered at [<c02879d8>] from [<c0287ba0>]
<4>[ 2831.617370] Function entered at [<c0287ba0>] from [<c03c49c4>]
<4>[ 2831.617431] Function entered at [<c03c49c4>] from [<c03c51c0>]
<4>[ 2831.617553] Function entered at [<c03c51c0>] from [<c045c5f8>]
<4>[ 2831.617675] Function entered at [<c045c5f8>] from [<c0457cf4>]
<4>[ 2831.617767] Function entered at [<c0457cf4>] from [<c022c3c4>]
<4>[ 2831.617767] Function entered at [<c022c3c4>] from [<c02252d4>]
<4>[ 2831.617767] Function entered at [<c02252d4>] from [<c02265e0>]
<4>[ 2831.617767] Function entered at [<c02265e0>] from [<c0236c6c>]
<4>[ 2831.617767] Function entered at [<c0236c6c>] from [<c0238630>]
<4>[ 2831.617767] Function entered at [<c0238630>] from [<c0238d28>]
<4>[ 2831.617797] Function entered at [<c0238d28>] from [<c02266e4>]
<4>[ 2831.617797] Function entered at [<c02266e4>] from [<c0106c40>]
<4>[ 2831.617797] ---[ end trace debad88b1f20abd4 ]---
<3>[ 2831.617797] kobject_add_internal failed for 9650 with -EEXIST, don't try to register things with the same name in the same directory.
Well well well, I guess we cannot be perfect, and my work is far from done. Drat.
Guess I may have to commit this? EDIT: I did, and it made no difference.
Just for fun, I also have a logcat from bootup time. Namely of interest:
Code:
E/HAL ( 170): load: module=/system/lib/hw/camera.vendor.msm8660.so
E/HAL ( 170): dlopen failed: cannot locate symbol "_ZN7android16CameraParameters15setPostviewSizeEii" referenced by "camera.vendor.msm8660.so"...
E/CameraWrapper( 170): failed to open vendor camera module
you might need some legacy build parameters for htc camera callbackd, and maybe some patch in the camera header hw part so that the proprietary camera module could fit with the os. I think Emmanuel's repos will contain what you may need.
tbalden said:
you might need some legacy build parameters for htc camera callbackd, and maybe some patch in the camera header hw part so that the proprietary camera module could fit with the os. I think Emmanuel's repos will contain what you may need.
Click to expand...
Click to collapse
Have merged KitKatDS/android_frameworks_av with CarbonDev/android_frameworks_av into my github, hopefully that will work. I figured out the missing parameter, and see in CameraParameters.cpp that it's just a dummy function. But it turns out I needed more than just the function and the call to it. Luckily I could do an automatic merge (because I am not up for the manual way - yet).
Going to be a few more hours compiling before I can figure out if that worked (my poor dual-core PC is working hard ).
Eventually I want to get the CarbonDev commits into android_frameworks_native, but that will be a manual process (3 files to edit by hand) when I looked at the compare.
EDIT: Finished earlier than I thought. And a healthy camera init:
Code:
I/CameraService( 169): CameraService started (pid=169)
I/CameraService( 169): Loaded "MSM8660 Camera Wrapper" camera module
D/libEGL ( 252): loaded /system/lib/egl/libEGL_adreno200.so
D/libEGL ( 252): loaded /system/lib/egl/libGLESv1_CM_adreno200.so
D/libEGL ( 252): loaded /system/lib/egl/libGLESv2_adreno200.so
I/Adreno200-EGL( 252): <qeglDrvAPI_eglInitialize:269>: EGL 1.4 QUALCOMM build: AU_LINUX_ANDROID_JB_VANILLA.04.02.02.60.051_msm8960_JB_VANILLA_CL2997615_release_AU (CL2997615)
I/Adreno200-EGL( 252): Build Date: 04/11/13 Thu
I/Adreno200-EGL( 252): Local Branch:
I/Adreno200-EGL( 252): Remote Branch: quic/mako_jb_mr1
I/Adreno200-EGL( 252): Local Patches: NONE
I/Adreno200-EGL( 252): Reconstruct Branch: AU_LINUX_ANDROID_JB_VANILLA.04.02.02.60.051 + NOTHING
E/cutils-trace( 252): Error opening trace file: No such file or directory (2)
D/QualcommCameraHardwareZSL( 169): int android::HAL_getNumberOfCameras(),return how many camera 2
Torch now works as well, but when I open the stock Camera app (which is now there), I get "Unfortunately, Camera has stopped." Strangely, works fine in UCam. IP Webcam works as well, but I tried a few camcorder apps out there and neither worked.
CLEANUP of old thoughts:
Bootup Logcat
Camera Logcat
Camera Kmsg
Camera Logcat is probably the most interesting here now:
Code:
E/AndroidRuntime( 2454): FATAL EXCEPTION: Camera Handler Thread
E/AndroidRuntime( 2454): Process: com.android.camera2, PID: 2454
E/AndroidRuntime( 2454): java.lang.RuntimeException: setParameters failed
E/AndroidRuntime( 2454): at android.hardware.Camera.native_setParameters(Native Method)
E/AndroidRuntime( 2454): at android.hardware.Camera.setParameters(Camera.java:1696)
E/AndroidRuntime( 2454): at com.android.camera.AndroidCameraManagerImpl$CameraHandler.handleMessage(AndroidCameraManagerImpl.java:298)
E/AndroidRuntime( 2454): at android.os.Handler.dispatchMessage(Handler.java:102)
E/AndroidRuntime( 2454): at android.os.Looper.loop(Looper.java:136)
E/AndroidRuntime( 2454): at android.os.HandlerThread.run(HandlerThread.java:61)
W/ActivityManager( 481): Force finishing activity com.android.camera2/com.android.camera.CameraLauncher
Not sure what to try here except use the android_frameworks_av off KitKatDS, not CarbonDev's (that had the KitKatDS commits applied to it). I will work on that...compiling has started.
UPDATE: Still broken, logcat is showing the same error. Tried other cameras on this build (Google Camera), and close to the same result.
Camera logcat (Stock, Google ... *:E)
MORE: Realized an important flag was being set twice in the BoardConfigCommon.mk:
Code:
# Camera
BOARD_USES_QCOM_LEGACY_CAM_PARAMS := true
COMMON_GLOBAL_CFLAGS += -DICS_CAMERA_BLOB -DNO_UPDATE_PREVIEW -DQCOM_BSP_CAMERA_ABI_HACK -DQCOM_LEGACY_CAM_PARAMS
BOARD_HAVE_HTC_FFC := true
TARGET_DISABLE_ARM_PIE := true
BOARD_NEEDS_MEMORYHEAPPMEM := true
USE_DEVICE_SPECIFIC_CAMERA := true
BOARD_USES_PMEM_CAMERA := true
I thought maybe LEGACY_CAM_PARAMS were cancelling each other out. Recompiled (without -DQCOM_LEGACY_CAM_PARAMS), No dice.
Latest Camera Logcat. Fatal exception at line 696.
Tried some commits against frameworks/native, still no go:
Code:
E/AndroidRuntime( 2725): FATAL EXCEPTION: Camera Handler Thread
E/AndroidRuntime( 2725): Process: com.android.camera2, PID: 2725
E/AndroidRuntime( 2725): java.lang.RuntimeException: setParameters failed
E/AndroidRuntime( 2725): at android.hardware.Camera.native_setParameters(Native Method)
E/AndroidRuntime( 2725): at android.hardware.Camera.setParameters(Camera.java:1696)
E/AndroidRuntime( 2725): at com.android.camera.AndroidCameraManagerImpl$CameraHandler.handleMessage(AndroidCameraManagerImpl.java:298)
E/AndroidRuntime( 2725): at android.os.Handler.dispatchMessage(Handler.java:102)
E/AndroidRuntime( 2725): at android.os.Looper.loop(Looper.java:136)
E/AndroidRuntime( 2725): at android.os.HandlerThread.run(HandlerThread.java:61)
I forgot which camera I used for the logcat on my thread post, but if it was the Carbon one, here is what is at line 298 of src/com/android/camera/AndroidCameraManagerImpl.java:
Code:
case SET_FACE_DETECTION_LISTENER:
setFaceDetectionListener((FaceDetectionListener) msg.obj);
return;
So this may be the key. I tried a commit last night, but it didn;t do anything, trying a change to the Gallery2 app that disables the Face Detection on both cameras. We shall see how that goes...
So the latest change involving turning down face detection didn't work. Still getting the same error. A user on StackOverflow pointed out that what I was featuring from the logcat was secondary to the actual problem. That this is a more complete picture:
Code:
E/QualcommCameraHardwareZSL( 170): Invalid focus mode value: continuous-picture
E/QualcommCameraHardwareZSL( 170): virtual android::status_t android::QualcommCameraHardware::setParameters(const android::CameraParameters&): 6487, rc = -22
...
E/AndroidRuntime( 2700): FATAL EXCEPTION: Camera Handler Thread
E/AndroidRuntime( 2700): Process: com.android.camera2, PID: 2700
E/AndroidRuntime( 2700): java.lang.RuntimeException: setParameters failed
E/AndroidRuntime( 2700): at android.hardware.Camera.native_setParameters(Native Method)
E/AndroidRuntime( 2700): at android.hardware.Camera.setParameters(Camera.java:1696)
E/AndroidRuntime( 2700): at com.android.camera.AndroidCameraManagerImpl$CameraHandler.handleMessage(AndroidCameraManagerImpl.java:298)
E/AndroidRuntime( 2700): at android.os.Handler.dispatchMessage(Handler.java:102)
E/AndroidRuntime( 2700): at android.os.Looper.loop(Looper.java:136)
E/AndroidRuntime( 2700): at android.os.HandlerThread.run(HandlerThread.java:61)
So it was a parameters problem after all! I looked up continuous-picture in (my copy and KitKatDS's) frameworks_av and it is listed, and not hidden behind any #ifdef's. So it should pick up. I just don't know how to tackle this one at this point (if I ever had a clue).
Any further suggestions @Emmanuel U, @thewisenerd, @streambinder, @galaxyfreak, @tbalden? Thanks for all the help so far.
joel.maxuel said:
Have merged KitKatDS/android_frameworks_av with CarbonDev/android_frameworks_av into my github, hopefully that will work. I figured out the missing parameter, and see in CameraParameters.cpp that it's just a dummy function. But it turns out I needed more than just the function and the call to it. Luckily I could do an automatic merge (because I am not up for the manual way - yet).
Going to be a few more hours compiling before I can figure out if that worked (my poor dual-core PC is working hard ).
Eventually I want to get the CarbonDev commits into android_frameworks_native, but that will be a manual process (3 files to edit by hand) when I looked at the compare.
EDIT: Finished earlier than I thought. And a healthy camera init:
Code:
I/CameraService( 169): CameraService started (pid=169)
I/CameraService( 169): Loaded "MSM8660 Camera Wrapper" camera module
D/libEGL ( 252): loaded /system/lib/egl/libEGL_adreno200.so
D/libEGL ( 252): loaded /system/lib/egl/libGLESv1_CM_adreno200.so
D/libEGL ( 252): loaded /system/lib/egl/libGLESv2_adreno200.so
I/Adreno200-EGL( 252): <qeglDrvAPI_eglInitialize:269>: EGL 1.4 QUALCOMM build: AU_LINUX_ANDROID_JB_VANILLA.04.02.02.60.051_msm8960_JB_VANILLA_CL2997615_release_AU (CL2997615)
I/Adreno200-EGL( 252): Build Date: 04/11/13 Thu
I/Adreno200-EGL( 252): Local Branch:
I/Adreno200-EGL( 252): Remote Branch: quic/mako_jb_mr1
I/Adreno200-EGL( 252): Local Patches: NONE
I/Adreno200-EGL( 252): Reconstruct Branch: AU_LINUX_ANDROID_JB_VANILLA.04.02.02.60.051 + NOTHING
E/cutils-trace( 252): Error opening trace file: No such file or directory (2)
D/QualcommCameraHardwareZSL( 169): int android::HAL_getNumberOfCameras(),return how many camera 2
Torch now works as well, but when I open the stock Camera app (which is now there), I get "Unfortunately, Camera has stopped." Strangely, works fine in UCam. IP Webcam works as well, but I tried a few camcorder apps out there and neither worked.
CLEANUP of old thoughts:
Bootup Logcat
Camera Logcat
Camera Kmsg
Camera Logcat is probably the most interesting here now:
Code:
E/AndroidRuntime( 2454): FATAL EXCEPTION: Camera Handler Thread
E/AndroidRuntime( 2454): Process: com.android.camera2, PID: 2454
E/AndroidRuntime( 2454): java.lang.RuntimeException: setParameters failed
E/AndroidRuntime( 2454): at android.hardware.Camera.native_setParameters(Native Method)
E/AndroidRuntime( 2454): at android.hardware.Camera.setParameters(Camera.java:1696)
E/AndroidRuntime( 2454): at com.android.camera.AndroidCameraManagerImpl$CameraHandler.handleMessage(AndroidCameraManagerImpl.java:298)
E/AndroidRuntime( 2454): at android.os.Handler.dispatchMessage(Handler.java:102)
E/AndroidRuntime( 2454): at android.os.Looper.loop(Looper.java:136)
E/AndroidRuntime( 2454): at android.os.HandlerThread.run(HandlerThread.java:61)
W/ActivityManager( 481): Force finishing activity com.android.camera2/com.android.camera.CameraLauncher
Not sure what to try here except use the android_frameworks_av off KitKatDS, not CarbonDev's (that had the KitKatDS commits applied to it). I will work on that...compiling has started.
UPDATE: Still broken, logcat is showing the same error. Tried other cameras on this build (Google Camera), and close to the same result.
Camera logcat (Stock, Google ... *:E)
MORE: Realized an important flag was being set twice in the BoardConfigCommon.mk:
Code:
# Camera
BOARD_USES_QCOM_LEGACY_CAM_PARAMS := true
COMMON_GLOBAL_CFLAGS += -DICS_CAMERA_BLOB -DNO_UPDATE_PREVIEW -DQCOM_BSP_CAMERA_ABI_HACK -DQCOM_LEGACY_CAM_PARAMS
BOARD_HAVE_HTC_FFC := true
TARGET_DISABLE_ARM_PIE := true
BOARD_NEEDS_MEMORYHEAPPMEM := true
USE_DEVICE_SPECIFIC_CAMERA := true
BOARD_USES_PMEM_CAMERA := true
I thought maybe LEGACY_CAM_PARAMS were cancelling each other out. Recompiled (without -DQCOM_LEGACY_CAM_PARAMS), No dice.
Latest Camera Logcat. Fatal exception at line 696.
Tried some commits against frameworks/native, still no go:
Code:
E/AndroidRuntime( 2725): FATAL EXCEPTION: Camera Handler Thread
E/AndroidRuntime( 2725): Process: com.android.camera2, PID: 2725
E/AndroidRuntime( 2725): java.lang.RuntimeException: setParameters failed
E/AndroidRuntime( 2725): at android.hardware.Camera.native_setParameters(Native Method)
E/AndroidRuntime( 2725): at android.hardware.Camera.setParameters(Camera.java:1696)
E/AndroidRuntime( 2725): at com.android.camera.AndroidCameraManagerImpl$CameraHandler.handleMessage(AndroidCameraManagerImpl.java:298)
E/AndroidRuntime( 2725): at android.os.Handler.dispatchMessage(Handler.java:102)
E/AndroidRuntime( 2725): at android.os.Looper.loop(Looper.java:136)
E/AndroidRuntime( 2725): at android.os.HandlerThread.run(HandlerThread.java:61)
I forgot which camera I used for the logcat on my thread post, but if it was the Carbon one, here is what is at line 298 of src/com/android/camera/AndroidCameraManagerImpl.java:
Code:
case SET_FACE_DETECTION_LISTENER:
setFaceDetectionListener((FaceDetectionListener) msg.obj);
return;
So this may be the key. I tried a commit last night, but it didn;t do anything, trying a change to the Gallery2 app that disables the Face Detection on both cameras. We shall see how that goes...
So the latest change involving turning down face detection didn't work. Still getting the same error. A user on StackOverflow pointed out that what I was featuring from the logcat was secondary to the actual problem. That this is a more complete picture:
Code:
E/QualcommCameraHardwareZSL( 170): Invalid focus mode value: continuous-picture
E/QualcommCameraHardwareZSL( 170): virtual android::status_t android::QualcommCameraHardware::setParameters(const android::CameraParameters&): 6487, rc = -22
...
E/AndroidRuntime( 2700): FATAL EXCEPTION: Camera Handler Thread
E/AndroidRuntime( 2700): Process: com.android.camera2, PID: 2700
E/AndroidRuntime( 2700): java.lang.RuntimeException: setParameters failed
E/AndroidRuntime( 2700): at android.hardware.Camera.native_setParameters(Native Method)
E/AndroidRuntime( 2700): at android.hardware.Camera.setParameters(Camera.java:1696)
E/AndroidRuntime( 2700): at com.android.camera.AndroidCameraManagerImpl$CameraHandler.handleMessage(AndroidCameraManagerImpl.java:298)
E/AndroidRuntime( 2700): at android.os.Handler.dispatchMessage(Handler.java:102)
E/AndroidRuntime( 2700): at android.os.Looper.loop(Looper.java:136)
E/AndroidRuntime( 2700): at android.os.HandlerThread.run(HandlerThread.java:61)
So it was a parameters problem after all! I looked up continuous-picture in (my copy and KitKatDS's) frameworks_av and it is listed, and not hidden behind any #ifdef's. So it should pick up. I just don't know how to tackle this one at this point (if I ever had a clue).
Any further suggestions @Emmanuel U, @thewisenerd, @streambinder, @galaxyfreak, @tbalden? Thanks for all the help so far.
Click to expand...
Click to collapse
Lemme compile my own build later today and back to you, I think my github is missing something I have locally
So I just reproduced the error build on my side, I'll be playing around with it later today when I have time.
Edit: so fixed the error with the focus modes, so the camera functions. But now the camcorder isnt working properly. It records but something fails when it stops recording and it doesn't save the video. I'll keep you posted.
Emmanuel U said:
So I just reproduced the error build on my side, I'll be playing around with it later today when I have time.
Edit: so fixed the error with the focus modes, so the camera functions. But now the camcorder isnt working properly. It records but something fails when it stops recording and it doesn't save the video. I'll keep you posted.
Click to expand...
Click to collapse
That was quick! Must be only recompiling the Camera2 apk (never figured out how to do that - although never really looked - except maybe drag the project into Eclipse).
So what is the focus mode fix? I can compile with that and see if my camcorder crashes as well.
joel.maxuel said:
That was quick! Must be only recompiling the Camera2 apk (never figured out how to do that - although never really looked - except maybe drag the project into Eclipse).
So what is the focus mode fix? I can compile with that and see if my camcorder crashes as well.
Click to expand...
Click to collapse
You should always steer away from hacking ROMs to fix an error, as the issue is usually on your side. https://github.com/KitKatDS/android...mmit/6ec8fea20ce4ef854f634b4ad0389986b9e4eb2e
A new rom for my old MyTouch 4G slide?
Dukenukemx said:
A new rom for my old MyTouch 4G slide?
Click to expand...
Click to collapse
That's right.
I wanted to see what compiling from source is like, and since my daily driver (Fx3Q) has a few bits needed before development can be fruitful (need device tree), I figured I would build for the Doubleshot.
As Emman has pointed out, there are so many competing priorities with the newer ROM's thanks to newer devices that older devices can barely keep up and maintain their mark in the existing code.
I don't have the skill set to change that problem, but I will go along and debug away.
This ROM doesn't make any promises, it's just a change in perspective (presenting CarbonROM instead of having CM as the only KitKat ROM). And if I get bored enough in a months time (assuming the major bugs are squashed - I sure hope so), I just might try out another perspective.
So this is my current logcat.
I'm concerned about this line
Code:
E/OMXCodec( 170): [OMX.google.h264.encoder] ERROR(0x80001001, 0)
E/MPEG4Writer( 170): The number of recorded samples is 0
That hex error code points to OMX_ErrorUndefined. I'm thinking I'm overlooking something because the road can't end here haha. I call it quits for tonight because I got a paper due in a few hours, but I'll hop back on it soon.
Edit: btw this is where the camcorder records but when trying to end the recording, it fails and it's like you never recorded a video. I have some local changes, but no point in uploading them yet because they haven't shown any signs of being beneficial. However, my change from before should fix your native_set_parms error. Later, I'm gonna remove a decent amount of unneeded lines from the camerawrapper.
I see this is now your new enemy. How are those wrinkles coming?
Possibly related (further up):
Code:
E/SoftAVCEncoder( 170): Failed to initialize the encoder: -8
E/AudioHardwareMSM8660( 170): cur_rx for pcm playback = 2
So from my view, the crash has to do with checking the video content, but finding a null file.
Makes sense, in my earlier post about finding no camcorder app that actually worked, well, I did find one that didn't crash at the outset (or ever), but it didn't record anything.
Too bad any search for "E/SoftAVCEncoder Failed to initialize the encoder: -8" comes up with four results, all unrelated to our situation.
I'll certainly keep an eye out for this rom. I'd like to bring back the MyTouch4G Slide with a working fast rom.
joel.maxuel said:
I see this is now your new enemy. How are those wrinkles coming?
Possibly related (further up):
Code:
E/SoftAVCEncoder( 170): Failed to initialize the encoder: -8
E/AudioHardwareMSM8660( 170): cur_rx for pcm playback = 2
So from my view, the crash has to do with checking the video content, but finding a null file.
Makes sense, in my earlier post about finding no camcorder app that actually worked, well, I did find one that didn't crash at the outset (or ever), but it didn't record anything.
Too bad any search for "E/SoftAVCEncoder Failed to initialize the encoder: -8" comes up with four results, all unrelated to our situation.
Click to expand...
Click to collapse
Well those errors seem to be inherent from the OMX error, earlier in the logs.
From my question in Stackoverflow:
There are several lists of capabilities that the camera HAL needs to report correctly, including the supported focus modes. The correct list depends on your camera hardware, and the HAL then also needs to accept whatever it advertises as supported. Several keys are mandatory, so just commenting them out may cause other crashes - instead, you should figure out what's actually supported, and include only those values. (Generally, anything that's KEY_SUPPORTED_* you need to set valid values to in the camera HAL)
Click to expand...
Click to collapse
Looks like we cannot just comment out/remove that line, more like remove the offending focus mode (or modes if we find more) from it.
joel.maxuel said:
From my question in Stackoverflow:
Looks like we cannot just comment out/remove that line, more like remove the offending focus mode (or modes if we find more) from it.
Click to expand...
Click to collapse
Yea we can, the problem isn't with the wrapper. That line was never supposed to be there anyway because we don't need to override the detected focus values. It's something in the framework....or else my KitKatDS wouldn't work either. I'm still on a busy streak but I'll dive into it soon I promise lol.
Update later today...
As many may know, Kitkat is end-of-life, or near EOL, depending on the ROM you use. For CarbonROM, it have been EOL for several months now (when the commits stopped occurring), but for CyanogenMod, they are still maintaining critical patches all the way down to CM10.1 (which will probably cease soon).
Because of Stagefright issues, I wanted to re-do CM10.1 at the very least. But I was plagued with build errors. I got a build, but the robbing and stealing I did in the build phase made sure it didn't boot. So it seems CM10.1 is un-buildable at this point.
I then turned to CarbonROM. Because Carbon is close to that of CM in the code, I was able to cherry-pick any new android_frameworks_av commits (where the stagefright problem(s) are found), and get a successful build.
I am pleased to say, unlike out-of-the-box (EOL) CarbonROM 4.4.4, this build is not vulnerable - at least until the next round comes out...D'Oh!
I will be uploading the build tonight. Uploaded - see 1st post.
November 14th build...
...is on AndroidFileHost at the moment, will add to DevDB later today.
In short, this fixes the SF2.0 problems. Will be updating the OP shortly.
Enjoy!
This rom is still being worked on? Does it fully work? Can I finally go back to a QWERTY phone?

Android IPC binder throwing "failed to retrieve pid" in Samsung Galaxy S6 Nougat 7.0

Android IPC binder throwing "failed to retrieve pid" in Samsung Galaxy S6 Nougat 7.0
Hi,
1). I just updated my Samsung Galaxy S6 device to Nougat 7.0.
2). Then after i rooted the phone, put the device into SELINUX permissive mode by doing the following command.
setenforce 0
3).Downloaded and compiled "SM-G920I_SWA_NN_Opensource" from opensource.samsung.com site.
4).Flash the kernel image using mkbootimg
5).Then i installed my android test application which calls IPC binder native service methods (testservice) from JNI (IPC client). For the first time after installation, application is able to get the testservice binder object if i called as below in JNI file,
binder = sm->getService(android::String16("testservice"));
6).But from the second time onwards i am getting the following error,
09-14 19:42:51.217 3177 3177 E ServiceManager: SELinux: getpidcon(pid=0) failed to retrieve pid context.
09-14 19:42:51.218 9675 10155 I ServiceManager: Waiting for service testservice...
09-14 19:42:51.422 3721 6035 D TelephonyManager: getAllCellInfo : Caller (PID / UID / TID): 3721 / 1000 / 6035
09-14 19:42:52.220 3177 3177 E ServiceManager: SELinux: getpidcon(pid=0) failed to retrieve pid context.
09-14 19:42:52.221 9675 10155 I ServiceManager: Waiting for service testservice..
Getting the above logs continuously even though the testservice is running in the background.
Please help to sort out the issue.
Hello sr4shantan,
Were you able to resolve the issue? I am facing similar issue on Samsung GS7 Edge phone after upgrading to Nougat 7.0. Any pointers to help resolve the issue would be appreciated.
Thanks
sr4shantan said:
Hi,
1). I just updated my Samsung Galaxy S6 device to Nougat 7.0.
2). Then after i rooted the phone, put the device into SELINUX permissive mode by doing the following command.
setenforce 0
3).Downloaded and compiled "SM-G920I_SWA_NN_Opensource" from opensource.samsung.com site.
4).Flash the kernel image using mkbootimg
5).Then i installed my android test application which calls IPC binder native service methods (testservice) from JNI (IPC client). For the first time after installation, application is able to get the testservice binder object if i called as below in JNI file,
binder = sm->getService(android::String16("testservice"));
6).But from the second time onwards i am getting the following error,
09-14 19:42:51.217 3177 3177 E ServiceManager: SELinux: getpidcon(pid=0) failed to retrieve pid context.
09-14 19:42:51.218 9675 10155 I ServiceManager: Waiting for service testservice...
09-14 19:42:51.422 3721 6035 D TelephonyManager: getAllCellInfo : Caller (PID / UID / TID): 3721 / 1000 / 6035
09-14 19:42:52.220 3177 3177 E ServiceManager: SELinux: getpidcon(pid=0) failed to retrieve pid context.
09-14 19:42:52.221 9675 10155 I ServiceManager: Waiting for service testservice..
Getting the above logs continuously even though the testservice is running in the background.
Please help to sort out the issue.
Click to expand...
Click to collapse

[PX5][Android 8.0+][MD725] Fix for MD725 Type 2 Bluetooth on Oreo

Hi everyone.
As people are aware, upgrading to Android 8.0 Oreo broke the functionality of Bluetooth for users with the MD725 Type 2 Bluetooth module. I have now found the driver file that will likely repair all lost Bluetooth functionality - the sdsdk file. This should also fix any external USB WiFi/Bluetooth devices that use the MD725 Type 2 module.
I have tested this on my MTCD HA unit running Hal9k's Oreo ROM and can confirm that the following features now work:
- A2DP
- Calling
- Call History
- Contact sync
Note: This fix requires root access.
Installation Instructions:
1. Download the attached sdsdk.zip file.
2. From the sdsdk.zip file, extract the "sdsdk" file.
4. Copy the sdsdk file to a USB drive or SD Card to be plugged into your headunit
5. Install a Root file explorer.
6. Copy the sdsdk file from your external storage device to the location:
Code:
/system/bin
7. Reboot your headunit.
The working sdsdk file is from the MTCD_HA_20170726 ROM provided by @f1x in their "Solution for the bluetooth echo v2":
https://forum.xda-developers.com/an...neral/px5-solution-bluetooth-echo-v2-t3661284
I hope that this fix works for you!
@Malaysk perhaps you can try to incorporate this fix in your rom if tested to work OK?
Sent from my G8141 using Tapatalk
The command "ps | grep sdsdk" just returns the line(s) containing sdsdk (grep command) from the running processes list (ps command). So I think that that step is not necessary.
Also where did you find a working sdsdk for android 8, substituting the one from android 6 was tried before and did not work.
Regardless I will try to flash my android 6 HU to HALK's Oreo to comfirm this working on a MTCD KGL (v2.83)
switchboy said:
The command "ps | grep sdsdk" just returns the line(s) containing sdsdk (grep command) from the running processes list (ps command). So I think that that step is not necessary.
Also where did you find a working sdsdk for android 8, substituting the one from android 6 was tried before and did not work.
Regardless I will try to flash my android 6 HU to HALK's Oreo to comfirm this working on a MTCD KGL (v2.83)
Click to expand...
Click to collapse
Okay, I've removed that part of the step. I had a feeling it wasn't necessary but left it in.
The working sdsdk is from the MTCD_HA_20170726 ROM, which was collected by @f1x for the "Bluetooth echo solution".
Thanks! Please reply with your results!
I am afraid it did not work for me. Added the files to 'system/bin/'
Gave the the file 777 permission just to be sure (read write execute)
Did a reboot, no luck
As you can see sdsdk is not running when I search for it with 'ps | grep sdsdk'
I added photographs of the situation.
This is a fresh upgrade to HALK's Oreo rom from Android 6.0 do i need to select the MD725 as my BT adapter somewhere? Because that might be causing my issues? I will check the factory setting later (although they should not have been touched and BT was working on android 6)
It will have to be another time though. It's getting cold now that it is dark and I don't want to burn petrol while waiting on the HU. Already used a bit too much battery power while waiting on the update process.
Edit:
OP, did you also install the libraries (.lib files) provided by f1x? That might be the reason why it did not work and sdsdk doesn't run on my system right now.
hello . i have mtcd px5 , MX , Bluetooth MD725 type 2 , i am now at malaysk rom 6 v7 , want to ask if this fix will work with me ? till now i didn't try android 8 because of Bluetooth problem ?
Have been playing around with this idea some more. First off I checked if for some reason the Bluetooth adapter in the factory settings was changed. So I double checked and it was still set to MD725. So that was not the reason why sdsdk is not running. Secondly I thought maybe sdsdk is missing other files it depends on to run so I went ahead and made sure I copied the .lib files and the .ini file from f1x to the right folders and made sure all of them were executable. After that I did a reboot of my device and nothing. The Bluetooth name and pin are not populated in the settings menu and the process sdsdk is still not in the running processes list. This could either mean:
- The process sdsdk isn't started by the system on boot and we need a way to start it manually
- The process sdsdk is started but crashes soon after being started because it is still missing dependencies
- The implementation of sdsdk is not compatible with android 8 anymore (which would mean the end of the line for this approach)
After these tests I was a bit disappointed and had ran out of time for today. I need some way to check if sdsdk is doing anything and if so what it is actually doing. So on a PC my next logical step will be to try and run the program manually from the command line and see if it spits out an error. If it does I might be able to solve the problem.
Because of digging work by f1x we know that the init.hct.rc script does contain the commands to start sdsdk: (so this makes the first scenario unlikely)
Code:
on property:bt.md725.type=1
start gocsdk
service gocsdk /system/bin/gocsdk
class main
user root
group root
disabled
seclabel u:r:shell:s0
on property:bt.md725.type=2
start sdsdk
service sdsdk /system/bin/sdsdk
class main
user root
group root
disabled
seclabel u:r:shell:s0
I think the second scenario is the most likely scenario and sdsdk is missing the right (versions) of other files the program depends on. So we need to figure out what those files are. Furtermore I think the simple terminal command '/system/bin/sdsdk' probably wont start the service in a way that is useful for the OS, however I am hoping it wil output a usefull error code. So that will be the fist thing I will try next time I got some spare time to play with the HU.
Unfortunately I am a bit of a Windows guy and hobby developer (with limited C++, PHP and Java knowledge) so my Linux knowledge is limited. I would love to be able to decompile sdsdk to see what it actually does that might make fixing this software mess a bit easier. At this point I am not expecting a manufacturer to do it for us. As for now I just making guesses why it doesn't work and I don't like that.
switchboy said:
- The process sdsdk is started but crashes soon after being started because it is still missing dependencies
Click to expand...
Click to collapse
You can test this by, first, running '/system/bin/sdsdk' in a terminal. Even if this step works, I would see the missing libraries by running 'ldd /system/bin/sdsdk'. The assumption in the 'ldd' step is that the binary gets libraries dynamically attached to it when it runs, as opposed to coming packaged with the binary.
Feel free to paste the output and I can help interpret it. I would do this myself, but at the rate at which I'm going, I won't get to it until next year
P.S. you may need to find a binary for ldd on Android. Termux has an ability to get such, just type in the command, and if it knows it can download a binary for a missing program, then it will tell you how to do it
I dont have acces to my headunit at the moment. The wife has taken the car for a drive. So I did the next best thing and used readelf on a ubuntu vm to try and find dependencies of the sdsdk binairy. Here is the raw output:
Code:
@Butterfly:~/Desktop$ readelf -And sdsdk
Dynamic section at offset 0xbe65c contains 33 entries:
Tag Type Name/Value
0x00000003 (PLTGOT) 0xbfd84
0x00000002 (PLTRELSZ) 1248 (bytes)
0x00000017 (JMPREL) 0x9bc0
0x00000014 (PLTREL) REL
0x00000011 (REL) 0x2cb0
0x00000012 (RELSZ) 28432 (bytes)
0x00000013 (RELENT) 8 (bytes)
0x6ffffffa (RELCOUNT) 3551
0x00000015 (DEBUG) 0x0
0x00000006 (SYMTAB) 0x148
0x0000000b (SYMENT) 16 (bytes)
0x00000005 (STRTAB) 0x1258
0x0000000a (STRSZ) 4590 (bytes)
0x00000004 (HASH) 0x2448
0x00000001 (NEEDED) Shared library: [libtinyalsa.so]
0x00000001 (NEEDED) Shared library: [libmedia.so]
0x00000001 (NEEDED) Shared library: [libutils.so]
0x00000001 (NEEDED) Shared library: [libbinder.so]
0x00000001 (NEEDED) Shared library: [liblog.so]
0x00000001 (NEEDED) Shared library: [libstdc++.so]
0x00000001 (NEEDED) Shared library: [libm.so]
0x00000001 (NEEDED) Shared library: [libc.so]
0x00000001 (NEEDED) Shared library: [libdl.so]
0x0000001a (FINI_ARRAY) 0xbc3b8
0x0000001c (FINI_ARRAYSZ) 8 (bytes)
0x00000019 (INIT_ARRAY) 0xbc3c0
0x0000001b (INIT_ARRAYSZ) 36 (bytes)
0x00000020 (PREINIT_ARRAY) 0xbc3e4
0x00000021 (PREINIT_ARRAYSZ) 0x8
0x00000016 (TEXTREL) 0x0
0x0000001e (FLAGS) TEXTREL BIND_NOW
0x6ffffffb (FLAGS_1) Flags: NOW
0x00000000 (NULL) 0x0
Displaying notes found in: .note.gnu.gold-version
Owner Data size Description
GNU 0x00000009 NT_GNU_GOLD_VERSION (gold version)
Version: gold 1.11
Attribute Section: aeabi
File Attributes
Tag_CPU_name: "ARM v7"
Tag_CPU_arch: v7
Tag_CPU_arch_profile: Application
Tag_ARM_ISA_use: Yes
Tag_THUMB_ISA_use: Thumb-2
Tag_FP_arch: VFPv3
Tag_Advanced_SIMD_arch: NEONv1
Tag_ABI_PCS_GOT_use: GOT-indirect
Tag_ABI_PCS_wchar_t: 4
Tag_ABI_FP_denormal: Needed
Tag_ABI_FP_exceptions: Needed
Tag_ABI_FP_number_model: IEEE 754
Tag_ABI_align_needed: 8-byte
Tag_ABI_enum_size: int
Tag_ABI_HardFP_use: Deprecated
Tag_ABI_optimization_goals: Aggressive Speed
Tag_CPU_unaligned_access: v6
Tag_ABI_FP_16bit_format: IEEE 754
Tag_DIV_use: Not allowed
Tag_Virtualization_use: TrustZone
It would seem that the only libs this file depends on are the following:
Code:
0x00000001 (NEEDED) Shared library: [libtinyalsa.so]
0x00000001 (NEEDED) Shared library: [libmedia.so]
0x00000001 (NEEDED) Shared library: [libutils.so]
0x00000001 (NEEDED) Shared library: [libbinder.so]
0x00000001 (NEEDED) Shared library: [liblog.so]
0x00000001 (NEEDED) Shared library: [libstdc++.so]
0x00000001 (NEEDED) Shared library: [libm.so]
0x00000001 (NEEDED) Shared library: [libc.so]
0x00000001 (NEEDED) Shared library: [libdl.so]
So now we need the right version of these in /system/lib/ and it might work.
EDIT:
I also ran this command on gocsdk:
Code:
0x00000001 (NEEDED) Shared library: [libbinder.so]
0x00000001 (NEEDED) Shared library: [libmedia.so]
0x00000001 (NEEDED) Shared library: [libutils.so]
0x00000001 (NEEDED) Shared library: [liblog.so]
0x00000001 (NEEDED) Shared library: [libstdc++.so]
0x00000001 (NEEDED) Shared library: [libm.so]
0x00000001 (NEEDED) Shared library: [libc.so]
0x00000001 (NEEDED) Shared library: [libdl.so]
So it seems that libtinyalsa.so might be our missing file!
sdsdk needs it and gocsdk doesn't.
Edit 2:
Okay I've extracted the missing files from a recent android 6 ROM which had working BT on my unit. I've created an archive with all the files that I think are missing in android 8 in their respective folders. Copy and paste to the right folders on your unit and set permissions to 777 for each file (you'll need a root browser for this). I've hadn't had time to test it for myself but this will hopefully fix this mess.
Edit 3:
Well it seems that the missing files I gathered up aren't complete yet. I can comfirm that 'sdsdk' is indeed crashing because it is missing dependencies. Executing the file from terminal is generating this error message.
"CANNOT LINK EXECUTABLE 'sdsdk' has text relocations"
Sadly I am currently at a loss getting the name and paths out of 'sdsdk' with readelf.
Edit 4:
After more reading it would seem that google disabled text relocations for applications running in userland. So this error seems logical since I was running the terminal in userland .
Hello Switchboy, i did put the files in the locations as showed in youre zip file.
It does not work on my HU.
The sdsdk executable is currently not working because of text relocations which aren't allowed in Android in userland anymore. So we either need to find a way to run sdsdk outside userland or find an sdsdk executable without text relocations. A version from android 7 might work.
See attached logcat
switchboy said:
The sdsdk executable is currently not working because of text relocations which aren't allowed in Android in userland anymore. So we either need to find a way to run sdsdk outside userland or find an sdsdk executable without text relocations. A version from android 7 might work.
See attached logcat
Click to expand...
Click to collapse
Great detailed summary and investigation into the issue.
Thanks for taking the time and sharing with the forums.
Until these blobs are updated or other software solution is found, we may have found a supplier for genuine GOC-MD-725.
Update
Not deterred, I managed to find a version of sdsdk without text relocations. I actually just took it out of the Android 7 rom for PX3, figuring that support for text relocations in userland was dropped by then. It turns out, I was right. ‘readelf –d sdsdk’ did not show the dreaded ‘0x00000016 (TEXTREL) 0x0’ anymore.
Hooray!
Therefore, after checking the shared library list and not seeing any new libraries I went ahead and overwrote my old version of sdsdk with this one. I rebooted the device and… nothing.
After reviewing, the logcat to find out what went wrong the following error messages repeats a couple of times:
Code:
libc ( 1008): CANNOT LINK EXECUTABLE "/system/bin/sdsdk": cannot locate symbol "_ZN7android10AudioTrackC1E19audio_stream_type_tj14audio_format_tjj20audio_output_flags_tPFviPvS4_ES4_i15audio_session_tNS0_13transfer_typeEPK20audio_offload_info_tiiPK18audio_attributes_tbf" referenced by "/system/bin/sdsdk"...
11-19 14:46:00.787 F/libc ( 1008): Fatal signal 6 (SIGABRT), code -6 in tid 1008 (sdsdk)
11-19 14:46:00.829 F/DEBUG ( 1013): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
11-19 14:46:00.829 F/DEBUG ( 1013): Build fingerprint: 'Android/px5/px5:8.0.0/OPR5.170623.007/hct08091121:userdebug/test-keys'
11-19 14:46:00.829 F/DEBUG ( 1013): Revision: '0'
11-19 14:46:00.829 F/DEBUG ( 1013): ABI: 'arm'
11-19 14:46:00.829 F/DEBUG ( 1013): pid: 1008, tid: 1008, name: sdsdk >>> /system/bin/sdsdk <<<
11-19 14:46:00.829 F/DEBUG ( 1013): signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
11-19 14:46:00.830 F/DEBUG ( 1013): Abort message: 'CANNOT LINK EXECUTABLE "/system/bin/sdsdk": cannot locate symbol "_ZN7android10AudioTrackC1E19audio_stream_type_tj14audio_format_tjj20audio_output_flags_tPFviPvS4_ES4_i15audio_session_tNS0_13transfer_typeEPK20audio_offload_info_tiiPK18audio_attributes_tbf" referenced by "/system/bin/sdsdk"...'
11-19 14:46:00.830 F/DEBUG ( 1013): r0 00000000 r1 000003f0 r2 00000006 r3 00000008
11-19 14:46:00.830 F/DEBUG ( 1013): r4 000003f0 r5 000003f0 r6 ffe4d100 r7 0000010c
11-19 14:46:00.830 F/DEBUG ( 1013): r8 f70b0010 r9 ffe4d3a8 sl f70fcd90 fp ffe4e3b4
11-19 14:46:00.830 F/DEBUG ( 1013): ip 00000000 sp ffe4d0f0 lr f7164bc7 pc f716ede8 cpsr 200f0010
11-19 14:46:00.839 F/DEBUG ( 1013):
11-19 14:46:00.839 F/DEBUG ( 1013): backtrace:
11-19 14:46:00.839 F/DEBUG ( 1013): #00 pc 00066de8 /system/bin/linker (__dl_tgkill+12)
11-19 14:46:00.839 F/DEBUG ( 1013): #01 pc 0005cbc3 /system/bin/linker (__dl_abort+54)
11-19 14:46:00.839 F/DEBUG ( 1013): #02 pc 00018641 /system/bin/linker (__dl___libc_fatal+24)
11-19 14:46:00.839 F/DEBUG ( 1013): #03 pc 0000fcb5 /system/bin/linker (__dl___linker_init+1956)
11-19 14:46:00.839 F/DEBUG ( 1013): #04 pc 00014d50 /system/bin/linker (_start+4)
11-19 14:46:00.858 W/NativeCrashListener( 499): Couldn't find ProcessRecord for pid 1008
Therefore, I assume that one of the libs sdsdk is depended on were updated and now is not quite compatible anymore. I am a bit hesitant to start altering system audio libraries willy-nilly because then I might start to break the audio subsystem of the rom. So unless I can find a version of sdsdk that is compatible with the audio subsystem of android 8 we are stuck at the moment.
Since the MD725 type 2 is a chip used in a lot of BT dongles as well there must be a device out there currently running android Oreo. I cant think of any reason why an sdsdk ripped from such firmware would not work on our Oreo installment. We just have to find it.
I love your persistence!
Did you also copy over the associated libraries? Typically, one can copy over the entire web of libraries required by a specific binary, and use those only for such binary, while leaving the rest of the system libraries alone. However, such solution may make things work, but may break integrations that Android may have had.
If only we had the source code ........
Seems like https://source.android.com/reference/hal/structaudio__policy may references audio_offload_info_t.... I'll take a look. I might as well just scrape all the symbols to get a layout of what's calling what
If only we had the sourcecode of sdsdk I could debug it against current libraries rewrite it a bit and then compile a working version.
@switchboy I am really impressed with the level of debugging and research you went into! Thank you!!
It makes it more confusing that my BlueTooth works for around 30 minutes or so (or until I end a call) before my phone disconnects (but the HU still thinks it is connected).
marchnz said:
Great detailed summary and investigation into the issue.
Until these blobs are updated or other software solution is found, we may have found a supplier for genuine GOC-MD-725.
Click to expand...
Click to collapse
I am very interested in this supplier!
jimimatthews said:
@switchboy I am really impressed with the level of debugging and research you went into! Thank you!!
It makes it more confusing that my BlueTooth works for around 30 minutes or so (or until I end a call) before my phone disconnects (but the HU still thinks it is connected).
Click to expand...
Click to collapse
Could you by any chance upload the sdsdk which is in your bin folder on the hu? To double check if it is the same one from the OP.
jimimatthews said:
I am very interested in this supplier!
Click to expand...
Click to collapse
Check the md725 module 1 and 2 swap thread
I'm getting a similar issue with my Bluetooth.
A2DP, Call History and Contact Sync all work
but Calling does not work properly. People can hear me, but I cannot hear them through my speakers.
I'm using an AVIN PX5
MCU version: MTCE_GS_V2.94_3 Sep 13 2018 11:26:51
I'm wondering if any MCU updates are available to resolve this issue?

Categories

Resources