Safestrap on 4.4.4 - Galaxy Note 3 Developer Discussion [Developers Onl

dmesg shows:
Code:
safestrapmenu: unhandled page fault (11) at 0x00000000, code 0x817
A bit of googling shows that bit 11 in the fault code means invalid write. So I guess the binary for the menu is writing to NULL ...

benwaffle said:
dmesg shows:
Code:
safestrapmenu: unhandled page fault (11) at 0x00000000, code 0x817
A bit of googling shows that bit 11 in the fault code means invalid write. So I guess the binary for the menu is writing to NULL ...
Click to expand...
Click to collapse
I think you need to update the support for the 4.4.4, i for now don't have a pc to try to compile and update, but if you have some knowlege see all the commit and the changes for update it and update the recovery, try if you can, it can be fondamental for at&t user and all 0x0 user

Related

sbl/boot strings

passing strings to a sbl i got some interesting text:
Code:
-----------------------------------------------------------
Samsung Secondary Bootloader (SBL) v3.0
Copyright (C) Samsung Electronics Co., Ltd. 2006-2010
Board Name: %s %s
ARIES
REV 03
Build On: %s %s
Jul 30 2010
09:53:23
boot_kernel
loadkernel
boot
command_loop
SBL>
%s: parse command error! (%s)
Autoboot (%d seconds) in progress, press any key to stop
Autoboot aborted..
__Re_partition
%s: undefined code for format.
%s: write virtual pit image.
%s: write bootloader images to NAND!
%s: format failed..
Re_partition
%s: magic code(0x%x)
loke_init
%s: file system init failed..
%s: j4fs_open success..
%s: j4fs_open failed..
%s: bye~ bye!
main
%s: booting stop.
%s: booting stop and power off..
I9000XXIL
console=ttySAC2,115200
/mnt/rsv
setting param.serialnr=0x%08x 0x%08x
setting param.board_rev=0x%x
bootmode=2
bootmode=3
setting param.cmdline=%s
argv[%d] : %s
value : %d
Invalide Parameter Name
setenv
valid magic and version 2 ...
invalid magic and version 2 ...
saveenv
save %s, size: %d
param.blk
save %s successfully.
PARAM Rev %d.%d
%s : %d
%s : %s
printenv
load_lfs_parameters
%s valid magic code and version.
load_lfs_parameters invalid magic code and version
boot parameter file does not exist ..
make new boot paremeter file ..
/mnt/rsv
load_debug_level
debug_level.inf
%s reading debug level from file successfully(0x%x).
debug level file does not exist ..
debug level value is incorrect!! Set default level (LOW)..
get_debug_level
%s current debug level is 0x%x.
There're no available commands.
* Help : %s
* Usage : %s
There's no command
Following commands are supported:
* %s
To get commands help, Type "help <command>"
help
Rebooting...
reset
Code:
open
close
erasepart
eraseall
loadkernel
showpart
bbm add partition start
addpart
delpart
savepart
fsr_bml open error
error return value %x
bbm_erase_all
some of them even look like commands, anyone knows if there is some use for this?
in boot.bin:
Code:
-----------------------------------------------------------
Samsung Primitive Bootloader (PBL) v3.0
Copyright (C) Samsung Electronics Co., Ltd. 2006-2010
Error Occurs During Boot. Please ReBoot.
FSR_BML_Init Error
BML_Open Error
BML_GetVolInfo Error
BML_LoadPIEntry Error! Part_ID: %d
+n1stVPN %d
+nPgsPerBlk %d
BML_Read Error
ERROR.. Bootable SBL doesn't exist ..
PBL found bootable SBL: Partition(%d).
The input address don't need a virtual-to-physical translation : %08lx
""DD
UPCH
LPCH
LPCH
UPCH
[B]e-fused[/B]
i wonder what e-fused is for, and if its related to e-fuse: http://en.wikipedia.org/wiki/EFUSE
How did you got this? UART, jtag?
that's a dump of the PBL and SBL from memory into a file, then the Linux "strings" command was run on the file.
I've used search for UPCH and found this thread.
1.
Any idea what UPCH means?
2.
I can't see Thanx button for luismanson...
Maybe my Browser...
Thanx in advance.
Best Regards
Please.
Any news about UPCH?
I need this for JTAG... maybe.
But I don't know what it is...
http://www.ort-jtag.com/blog/?e=10
For instance it is visible in this Video...
But I have an RIFF Box... not ORT... or Medusa seems also to "repair" UPCH...
It seems Bootloader related...
Thanx in advance.
Best Regards

AOSP builds for Z5C

Hi guys
Thought I should start a thread for various AOSP builds people are doing for their Sony Z5Compact. We can trouble shoot errors and generally take advantage of the way Sony encourage open source development for their devices.
Ill get the ball rolling. (see below)
AOSP NOUGAT 7.1
https://mega.nz/#!Jh5WxSYS!DkYHgBjtR...V6Vdxq11xMplcg
TWRP3.0.3
https://mega.nz/#!QhoBESZI!XzXzHvosc...X57GnZvRBEPoR4
AOSP NOUGAT
Installable .zip compiled with mm binaries: https://mega.nz/#!h8530CLS!vmwYkb4JBdx8YtOaqkETq84bFeR9wiz2KYIlNOWnFBM (as sony has not published N binaries yet.)
Nougat .img files for z5c: https://mega.nz/#!5h5gxYKI!AuCFTO6MV4J5rfMBK_A1Q4eOBr5ZoXQIG2wEW9Fffxg
AOSP MM BUILD for Z5C.
Android 6.1
New Build with Julys/Android N compatible binaries Build # MOB30W
Installable .zip: https://mega.nz/#!80BlACKS!hefd26xN36UPcgnGEfdp9BkPsZvjS3k4Bvzo3dmU9I8
Raw .img files: https://mega.nz/#!FoYTGQbT!8ifDpGlZSaXgsHo1_gLm-67YIdDo0-BW85hra5ZToVY
New Build as of 29/04/16 (untested as of yet) Ignore below list of what works as I havent flashed this to my phone yet.
https://mega.nz/#!MwJ3wSJb!6ALDvaSIPQK0kc8R6MU5mVhUmKKCzVovE54tLcNxTx0
Older MM build (.img files)
https://mega.nz/#!B5hhyYhT!Z1lMcwxHc3KC9lDRCwOcyImBXXLuHgqROZ76J5xArew
RECOMMENDED DO A FULL WIPE OF DATA AND SYSTEM BEFORE FLASHING. Have your old/stock system, recovery,boot.img saved on your pc, as TWRP is not supported in AOSP kernel.
Boots fine.
will load and use previous userdata from rooted sony stock. (but not recommended to dirty flash!)
Data connection was patchy
Camera works but is awful.
External and internal sd card detection/mounts fine, but the rom wants to re format your external sd card before it mounts.
Regards
Joeisgood99
@Joeisgood99, your links are missing the Mega decryption key.
Anyway, I compiled 5.1.1_r24 (latest Lollipop) from source and uploaded here:
https://mega.nz/#!1hZlFCoT!UIEBo9CjaYu0Eg-4CeVdRijchRqNwbErUZPL4qbhzRo
I have no Z5C so consider it fully UNtested.
Still no luck with my 6.0.0_r1 build
nilezon said:
@Joeisgood99, your links are missing the Mega decryption key.
Anyway, I compiled 5.1.1_r24 (latest Lollipop) from source and uploaded here:
https://mega.nz/#!1hZlFCoT!UIEBo9CjaYu0Eg-4CeVdRijchRqNwbErUZPL4qbhzRo
I have no Z5C so consider it fully UNtested.
Still no luck with my 6.0.0_r1 build
Click to expand...
Click to collapse
Thanks for that!
I have only made it about 19 mins in to 6.0.0_r1 build before it fails.
target thumb C: libmmcamera_interface_32 <= hardware/qcom/camera/QCamera2/stack/mm-camera-interface/src/mm_camera_thread.c
In file included from hardware/qcom/camera/QCamera2/stack/mm-camera-interface/src/mm_camera.c:44:0:
hardware/qcom/camera/QCamera2/stack/mm-camera-interface/../common/mm_camera_interface.h:98:21: error: 'MSM_CAMERA_MAX_USER_BUFF_CNT' undeclared here (not in a function)
int32_t buf_idx[MSM_CAMERA_MAX_USER_BUFF_CNT];
^
In file included from hardware/qcom/camera/QCamera2/stack/mm-camera-interface/src/mm_camera_interface.c:44:0:
hardware/qcom/camera/QCamera2/stack/mm-camera-interface/../common/mm_camera_interface.h:98:21: error: 'MSM_CAMERA_MAX_USER_BUFF_CNT' undeclared here (not in a function)
int32_t buf_idx[MSM_CAMERA_MAX_USER_BUFF_CNT];
^
In file included from hardware/qcom/camera/QCamera2/stack/mm-camera-interface/src/mm_camera_channel.c:40:0:
hardware/qcom/camera/QCamera2/stack/mm-camera-interface/../common/mm_camera_interface.h:98:21: error: 'MSM_CAMERA_MAX_USER_BUFF_CNT' undeclared here (not in a function)
int32_t buf_idx[MSM_CAMERA_MAX_USER_BUFF_CNT];
^
In file included from hardware/qcom/camera/QCamera2/stack/mm-camera-interface/src/mm_camera_thread.c:41:0:
hardware/qcom/camera/QCamera2/stack/mm-camera-interface/../common/mm_camera_interface.h:98:21: error: 'MSM_CAMERA_MAX_USER_BUFF_CNT' undeclared here (not in a function)
int32_t buf_idx[MSM_CAMERA_MAX_USER_BUFF_CNT];
^
build/core/binary.mk:801: recipe for target 'out/target/product/suzuran/obj_arm/SHARED_LIBRARIES/libmmcamera_interface_intermediates/src/mm_camera.o' failed
target thumb C: libmmcamera_interface_32 <= hardware/qcom/camera/QCamera2/stack/mm-camera-interface/src/mm_camera_sock.c
make: *** [out/target/product/suzuran/obj_arm/SHARED_LIBRARIES/libmmcamera_interface_intermediates/src/mm_camera.o] Error 1
make: *** Waiting for unfinished jobs....
In file included from hardware/qcom/camera/QCamera2/stack/mm-camera-interface/src/mm_camera_stream.c:45:0:
hardware/qcom/camera/QCamera2/stack/mm-camera-interface/../common/mm_camera_interface.h:98:21: error: 'MSM_CAMERA_MAX_USER_BUFF_CNT' undeclared here (not in a function)
int32_t buf_idx[MSM_CAMERA_MAX_USER_BUFF_CNT];
^
build/core/binary.mk:801: recipe for target 'out/target/product/suzuran/obj_arm/SHARED_LIBRARIES/libmmcamera_interface_intermediates/src/mm_camera_thread.o' failed
make: *** [out/target/product/suzuran/obj_arm/SHARED_LIBRARIES/libmmcamera_interface_intermediates/src/mm_camera_thread.o] Error 1
build/core/binary.mk:801: recipe for target 'out/target/product/suzuran/obj_arm/SHARED_LIBRARIES/libmmcamera_interface_intermediates/src/mm_camera_interface.o' failed
make: *** [out/target/product/suzuran/obj_arm/SHARED_LIBRARIES/libmmcamera_interface_intermediates/src/mm_camera_interface.o] Error 1
hardware/qcom/camera/QCamera2/stack/mm-camera-interface/src/mm_camera_stream.c: In function 'mm_stream_write_user_buf':
hardware/qcom/camera/QCamera2/stack/mm-camera-interface/src/mm_camera_stream.c:1046:21: error: dereferencing pointer to incomplete type
cont_buf->buf_cnt = my_obj->buf[buf->buf_idx].user_buf.bufs_used;
^
hardware/qcom/camera/QCamera2/stack/mm-camera-interface/src/mm_camera_stream.c:1047:46: error: dereferencing pointer to incomplete type
for (i = 0; i < (int32_t)cont_buf->buf_cnt; i++) {
^
hardware/qcom/camera/QCamera2/stack/mm-camera-interface/src/mm_camera_stream.c:1048:25: error: dereferencing pointer to incomplete type
cont_buf->buf_idx = my_obj->buf[buf->buf_idx].user_buf.buf_idx;
^
hardware/qcom/camera/QCamera2/stack/mm-camera-interface/src/mm_camera_stream.c:1055:50: error: dereferencing pointer to incomplete type
for (i = 0; i < (int32_t)cont_buf->buf_cnt; i++) {
^
hardware/qcom/camera/QCamera2/stack/mm-camera-interface/src/mm_camera_stream.c:1103:21: error: dereferencing pointer to incomplete type
cont_buf->buf_cnt = my_obj->buf[index].user_buf.bufs_used;
^
hardware/qcom/camera/QCamera2/stack/mm-camera-interface/src/mm_camera_stream.c:1104:46: error: dereferencing pointer to incomplete type
for (i = 0; i < (int32_t)cont_buf->buf_cnt; i++) {
^
hardware/qcom/camera/QCamera2/stack/mm-camera-interface/src/mm_camera_stream.c:1105:25: error: dereferencing pointer to incomplete type
cont_buf->buf_idx = my_obj->buf[index].user_buf.buf_idx;
^
hardware/qcom/camera/QCamera2/stack/mm-camera-interface/src/mm_camera_stream.c:1112:50: error: dereferencing pointer to incomplete type
for (i = 0; i < (int32_t)cont_buf->buf_cnt; i++) {
^
hardware/qcom/camera/QCamera2/stack/mm-camera-interface/src/mm_camera_stream.c: In function 'mm_stream_read_user_buf':
hardware/qcom/camera/QCamera2/stack/mm-camera-interface/src/mm_camera_stream.c:1163:60: error: dereferencing pointer to incomplete type
frameID = (buf_info->buf->frame_idx - 1) * user_buf->buf_cnt;
^
hardware/qcom/camera/QCamera2/stack/mm-camera-interface/src/mm_camera_stream.c:1177:65: error: dereferencing pointer to incomplete type
my_obj->prev_timestamp = (timeStamp - (nsecs_t)(user_buf->buf_cnt * interval_nsec));
^
hardware/qcom/camera/QCamera2/stack/mm-camera-interface/src/mm_camera_stream.c:1180:54: error: dereferencing pointer to incomplete type
interval_nsec = (nsecs_t)(ts_delta / user_buf->buf_cnt);
^
hardware/qcom/camera/QCamera2/stack/mm-camera-interface/src/mm_camera_stream.c:1184:38: error: dereferencing pointer to incomplete type
for (i = 0; i < (int32_t)user_buf->buf_cnt; i++) {
^
hardware/qcom/camera/QCamera2/stack/mm-camera-interface/src/mm_camera_stream.c:1185:54: error: dereferencing pointer to incomplete type
buf_info->buf->user_buf.buf_idx = user_buf->buf_idx;
^
hardware/qcom/camera/QCamera2/stack/mm-camera-interface/src/mm_camera_stream.c:1186:49: error: dereferencing pointer to incomplete type
stream_buf = &my_obj->plane_buf[user_buf->buf_idx];
^
hardware/qcom/camera/QCamera2/stack/mm-camera-interface/src/mm_camera_stream.c:1204:49: error: dereferencing pointer to incomplete type
buf_info->buf->user_buf.bufs_used = user_buf->buf_cnt;
^
build/core/binary.mk:801: recipe for target 'out/target/product/suzuran/obj_arm/SHARED_LIBRARIES/libmmcamera_interface_intermediates/src/mm_camera_channel.o' failed
make: *** [out/target/product/suzuran/obj_arm/SHARED_LIBRARIES/libmmcamera_interface_intermediates/src/mm_camera_channel.o] Error 1
build/core/binary.mk:801: recipe for target 'out/target/product/suzuran/obj_arm/SHARED_LIBRARIES/libmmcamera_interface_intermediates/src/mm_camera_stream.o' failed
make: *** [out/target/product/suzuran/obj_arm/SHARED_LIBRARIES/libmmcamera_interface_intermediates/src/mm_camera_stream.o] Error 1
#### make failed to build some targets (19:09 (mm:ss)) ####
Tried to fix it with this
https://git.geekli.st/pirej/kernel/commit/3b7ca4571409e0e38ae45afedf77afbf3099d801?view=parallel
or similar but didn’t work.
Thanks for your contribution!:good:
Joeisgood99 said:
Thanks for that!
I have only made it about 19 mins in to 6.0.0_r1 build before it fails.
Tried to fix it with this ... or similar but didn’t work.
Thanks for your contribution!:good:
Click to expand...
Click to collapse
I got similar errors.
You need to update the files in ./device/sony/kitakami/kernel-headers/ with files from the Sony kernel source code.
For example, replace:
https://github.com/sonyxperiadev/device-sony-kitakami/blob/master/kernel-headers/media/msmb_camera.h
with
https://github.com/Tommy-Geenexus/a...n_5.x/blob/master/include/media/msmb_camera.h
to get correct MSM_CAMERA_MAX_USER_BUFF_CNT definition.
You also need to add an header include to macaddrsetup.c to make it compile. See this pull request:
https://github.com/sonyxperiadev/macaddrsetup/pull/1
That's all I've got for now.
Edit:
This is the error I end up with:
Code:
No private recovery resources for TARGET_DEVICE suzuran
target Symbolic: init (out/target/product/suzuran/symbols/init)
target Unpacked: adbd (out/target/product/suzuran/obj/EXECUTABLES/adbd_intermediates/PACKED/adbd)
target StaticExecutable: healthd (out/target/product/suzuran/obj/EXECUTABLES/healthd_intermediates/LINKED/healthd)
out/host/linux-x86/bin/checkpolicy: loading policy configuration from out/target/product/suzuran/obj/ETC/sepolicy_intermediates/policy.conf
device/qcom/sepolicy/common/init_shell.te:3:ERROR 'unknown type init_shell' at token ';' on line 16010:
#for accessing fmradio device node
allow init_shell fm_radio_device:chr_file { open read ioctl };
checkpolicy: error(s) encountered while parsing configuration
make: *** [out/target/product/suzuran/obj/ETC/sepolicy_intermediates/sepolicy] Error 1
Edit2:
Possibly solution for sepolicy error:
https://github.com/alviteri/device-qcom-sepolicy/tree/test-m
Source: https://github.com/sonyxperiadev/device-qcom-sepolicy/pull/8
Edit3:
I got past the sepolicy errors, but face new problems.
Some definitions are missing:
Code:
target thumb C++: camera.msm8994_32 <= hardware/qcom/camera/QCamera2/HAL/QCamera2HWI.cpp
hardware/qcom/camera/QCamera2/HAL/QCamera2HWI.cpp: In member function 'int qcamera::QCamera2HardwareInterface::sendCommand(int32_t, int32_t&, int32_t&)':
hardware/qcom/camera/QCamera2/HAL/QCamera2HWI.cpp:3928:10: error: 'CAMERA_CMD_LONGSHOT_ON' was not declared in this scope
case CAMERA_CMD_LONGSHOT_ON:
^
hardware/qcom/camera/QCamera2/HAL/QCamera2HWI.cpp:3970:10: error: 'CAMERA_CMD_LONGSHOT_OFF' was not declared in this scope
case CAMERA_CMD_LONGSHOT_OFF:
^
etc ...
Awesome work @nilezon.
This thread is becoming a build diary for Sony aosp 6.0.0_r1.
I used the commits you pointed out. They fixed the issue, the build stooped 3 mins later with this error
target thumb C++: liboverlay_32 <= hardware/qcom/display/msm8994/liboverlay/overlayRotator.cpp
hardware/qcom/display/msm8994/liboverlay/overlayUtils.cpp: In function 'int overlay::utils::getMdpFormat(int, int)':
hardware/qcom/display/msm8994/liboverlay/overlayUtils.cpp:153:24: error: 'MDP_RGBA_8888_UBWC' was not declared in this scope
return MDP_RGBA_8888_UBWC;
^
hardware/qcom/display/msm8994/liboverlay/overlayUtils.cpp:155:24: error: 'MDP_RGB_565_UBWC' was not declared in this scope
return MDP_RGB_565_UBWC;
^
hardware/qcom/display/msm8994/liboverlay/overlayUtils.cpp:159:24: error: 'MDP_Y_CBCR_H2V2_UBWC' was not declared in this scope
return MDP_Y_CBCR_H2V2_UBWC;
^
target thumb C++: liboverlay_32 <= hardware/qcom/display/msm8994/liboverlay/overlayMdpRot.cpp
build/core/binary.mk:706: recipe for target 'out/target/product/suzuran/obj_arm/SHARED_LIBRARIES/liboverlay_intermediates/overlayUtils.o' failed
make: *** [out/target/product/suzuran/obj_arm/SHARED_LIBRARIES/liboverlay_intermediates/overlayUtils.o] Error 1
make: *** Waiting for unfinished jobs....
target thumb C++: liboverlay_32 <= hardware/qcom/display/msm8994/liboverlay/overlayMdssRot.cpp
#### make failed to build some targets (21:25 (mm:ss)) ####
All these undeclared formats are declared in /devices/sony/kitakami/kernel-headers/linux/msm_mdp.h
but haven’t had a chance to even look at why info isn’t getting passed along yet. Has been a big family oriented weekend. Just sat down. Ill look in to your errors.
Thanks again!
Seems to be a problem with a broken make config, the kitakami settings are not being applied or reverting. The source is also missing a few defines, mainly around the camera it seems.
thx for your great work!
has anyone tested the 5.1.1. builds? are there any known issues?
can't use my phone without root and bloatware instead.
M!tch said:
thx for your great work!
has anyone tested the 5.1.1. builds? are there any known issues?
can't use my phone without root and bloatware instead.
Click to expand...
Click to collapse
Most are holding out for a way to keep DRM keys I think, slows down the trial and error process a bit.
M!tch said:
thx for your great work!
has anyone tested the 5.1.1. builds? are there any known issues?
can't use my phone without root and bloatware instead.
Click to expand...
Click to collapse
I compiled AOSP but couldn't get it to boot. Most likely something wrong with the pre-compiled kernel image.
does the build from the op work?
M!tch said:
does the build from the op work?
Click to expand...
Click to collapse
Don't know. I didn't test.
BUT, FreeXperia has published suzuran (Z5C) build for 5.1.1:
http://fxpblog.co/aosp/aosp-5-1/
http://uploaded.net/file/rg3ocwy3/from/ub0dtu
I don't know if they work either, but I guess they usually does?
I've tried flashing the images in the OP and it just hangs when sending system. Have waited 30 minutes and still nothing.
creebefu said:
I've tried flashing the images in the OP and it just hangs when sending system. Have waited 30 minutes and still nothing.
Click to expand...
Click to collapse
Did you flash with the sparse flag?
Code:
fastboot -S 256M flash system system.img
nilezon said:
Did you flash with the sparse flag?
Code:
fastboot -S 256M flash system system.img
Click to expand...
Click to collapse
That flashed okay, but rebooted and it ended up turning itself off after the Sony - Xperia screen.
For the others I'm literally just doing:
fastboot flash boot boot.img
fastboot flash recovery recovery.img
etc.
Any other commands I should try?
creebefu said:
That flashed okay, but rebooted and it ended up turning itself off after the Sony - Xperia screen.
For the others I'm literally just doing:
fastboot flash boot boot.img
fastboot flash recovery recovery.img
etc.
Any other commands I should try?
Click to expand...
Click to collapse
Hmm, I didn't know that you could flash a recovery image to an Xperia phone:
Code:
fastboot flash recovery recovery.img
I don't think there is any recovery partition.
nilezon said:
Hmm, I didn't know that you could flash a recovery image to an Xperia phone:
Code:
fastboot flash recovery recovery.img
I don't think there is any recovery partition.
Click to expand...
Click to collapse
That's strange as it was flashing fine, and says success.
I'll reset back to stock firmware, then try again without flashing recovery.
creebefu said:
That's strange as it was flashing fine, and says success.
I'll reset back to stock firmware, then try again without flashing recovery.
Click to expand...
Click to collapse
You do that, but I am sure it will not boot anyway.
I think it's something wrong with the pre-built kernel, but I'm not sure.
M!tch said:
does the build from the op work?
Click to expand...
Click to collapse
creebefu said:
I've tried flashing the images in the OP and it just hangs when sending system. Have waited 30 minutes and still nothing.
Click to expand...
Click to collapse
nilezon said:
You do that, but I am sure it will not boot anyway.
I think it's something wrong with the pre-built kernel, but I'm not sure.
Click to expand...
Click to collapse
Thanks for testing guys. I STILL don’t have a Z5C so Im kind of useless atm. I did nothing to alter the code for my build, just sync and make.
Maybe try flashing zombie boot.img (I’m assuming ramdisk is from 32.0.A.5.32/R4B or similar? ) to get aosp to build.
Ill change the op with update that building straight from source produces non bootable rom/or kernel.
Also re the recovery partition: This is new to me as I’m coming from HTC where there was a designated recovery partition however I’m sure that when you flash a recovery.img to a Sony phone
Code:
fastboot flash recovery fotatwrp.img
for example, you are flashing it to the FOTAKernel partition, which is empty on an unlocked xperia because it used to handle the OEM OTA's, but is wiped upon unlocking the phone. The only way you can boot from this partition is to have extract-elf-ramdisk compiled in your ramdisk.cpio (source code) https://github.com/Dees-Troy/extract_elf_ramdisk. Or you can just have the recovery in the boot.img and boot in to recovery via fastboot.
Sony veterans please correct me if I’m wrong.
Some info.
https://twrp.me/devices/sonyxperiaz.html
Joeisgood99 said:
Sony veterans please correct me if I’m wrong.
Some info.
https://twrp.me/devices/sonyxperiaz.html
Click to expand...
Click to collapse
Thats untrue for Xperia Z5C ... It already has new bootloader and here is your recovery partition:
/dev/block/bootdevice/by-name/recovery
See Z5C official sourcecode
Sent from my mint using XDA Free mobile app
nilezon said:
Don't know. I didn't test.
BUT, FreeXperia has published suzuran (Z5C) build for 5.1.1:
http://fxpblog.co/aosp/aosp-5-1/
http://uploaded.net/file/rg3ocwy3/from/ub0dtu
I don't know if they work either, but I guess they usually does?
Click to expand...
Click to collapse
the op says, the build is working. but i guess it's not confirmed yet because it refers to you.
is there any other source to get information about the builds from fxp?

[DEV][DISCUSSION][GT-I9192][S4 mini Duos][AOSP/CAF 6.0.1] Bringing up AOSP roms

I am starting this thread to bring up AOSP/CAF based roms to our device gt-i9192 s4 mini duos.
This thread is for developers only and only rom building and rom bring up questions and discussions are allowed in this thread.
Best way is post the building errors, logcats, source code tree links here so that we all can help each other to fix the errors while building or rom booting.
For those who are keen to learn fixing bugs should read following article by great developer pawitp
https://medium.com/@pawitp/investigating-and-fixing-an-android-rom-bug-685f3e2e3806
Generally for aosp rom bring up - you need 2 files in your device trees
Code:
aosp_serranodsdd.mk
AndroidProducts.mk
like in other devices
See following commit to make your tree compatible with aosp
Code:
https://github.com/pawitp/android_device_samsung_i9082/commit/e5bf34bdfb42394e562ae66e068367dec38a6459
like this i have created one for us
Code:
https://github.com/i9192/android_device_samsung_serranodsdd/blob/n/aosp_serranodsdd.mk
https://github.com/i9192/android_device_samsung_serranodsdd/blob/n/AndroidProducts.mk
some of aosp roms need special files for their bring up like
for cm - cm.mk
for omni - omni_device.mk
for broken - broken.mk
for tipsy - tipsy.mk
for PA - pa_device.mk
for krexus - krexus_device.mk
for purenexus - pure_device.mk
All those who are building can post their questions, queries , bugs on this thread...we will fix them together
some one else working on n preview other than me???? or someone is willing to build and work on it ????
if yes post your questions ..i will try to answer that here
k2wl said:
some one else working on n preview other than me???? or someone is willing to build and work on it ????
if yes post your questions ..i will try to answer that here
Click to expand...
Click to collapse
yes i was working on it but its now in the queue , display was blank but i was getting the logcat.
now i m working to build AOSP 6.0 , i got a sepolicy denial so i fixed it with this commit https://github.com/FaArIsH/platform...mmit/e35f718c7939b0f178bd1869396a472daa404075
but now i m getting this error
Code:
/home/farish_priv/ap/out/target/product/serranodsdd/obj/ETC/service_contexts_intermediates/service_contexts: Mult
iple same specifications for qtitetherservice.
/home/farish_priv/ap/out/target/product/serranodsdd/obj/ETC/service_contexts_intermediates/service_contexts: Mult
iple same specifications for com.qualcomm.qti.seemp.health.
/home/farish_priv/ap/out/target/product/serranodsdd/obj/ETC/service_contexts_intermediates/service_contexts: Mult
iple same specifications for com.qualcomm.qti.auth.securesampleauthdaemon.
/home/farish_priv/ap/out/target/product/serranodsdd/obj/ETC/service_contexts_intermediates/service_contexts: Mult
iple same specifications for com.qualcomm.qti.qseeproxysample.
i have removed the line vendor/aosp/sepolicy from msm8930-common and its now finished building but i don't think it will boot becasue i skipped the sepolicy error
DarkFrenzy said:
yes i was working on it but its now in the queue , display was blank but i was getting the logcat.
now i m working to build AOSP 6.0 , i got a sepolicy denial so i fixed it with this commit https://github.com/FaArIsH/platform...mmit/e35f718c7939b0f178bd1869396a472daa404075
but now i m getting this error
Code:
/home/farish_priv/ap/out/target/product/serranodsdd/obj/ETC/service_contexts_intermediates/service_contexts: Mult
iple same specifications for qtitetherservice.
/home/farish_priv/ap/out/target/product/serranodsdd/obj/ETC/service_contexts_intermediates/service_contexts: Mult
iple same specifications for com.qualcomm.qti.seemp.health.
/home/farish_priv/ap/out/target/product/serranodsdd/obj/ETC/service_contexts_intermediates/service_contexts: Mult
iple same specifications for com.qualcomm.qti.auth.securesampleauthdaemon.
/home/farish_priv/ap/out/target/product/serranodsdd/obj/ETC/service_contexts_intermediates/service_contexts: Mult
iple same specifications for com.qualcomm.qti.qseeproxysample.
i have removed the line vendor/aosp/sepolicy from msm8930-common and its now finished building but i don't think it will boot becasue i skipped the sepolicy error
Click to expand...
Click to collapse
use permissive mode for now and use sonyaosp sepolicy for time being...it builds fine and as we use permissive mode you get rid of major denials for boot.
post your logcat here
k2wl said:
some one else working on n preview other than me???? or someone is willing to build and work on it ????
if yes post your questions ..i will try to answer that here
Click to expand...
Click to collapse
My device is defective, I will be sending him to repair and as soon as pick it back I'll get to work with n preview (to help).
tioguda said:
My device is defective, I will be sending him to repair and as soon as pick it back I'll get to work with n preview (to help).
Click to expand...
Click to collapse
great
aosp-caf
For CAF sources, should I use the regular CM device tree or AOSP? I am trying CM tree except for the aosp_serranodsdd and AndroidProducts..mk files.
How do you fix this properly?
Code:
build/core/Makefile:46: *** Prebuilt apk found in PRODUCT_COPY_FILES: device/samsung/serrano-common/prebuilt/Eleven.apk:system/app/Eleven/Eleven.apk, use BUILD_PREBUILT instead!. Stop.
I deleted the line in serrano-common.mk because I can't figure out how to use build_prebuilt
I am also getting stuck at this error:
Code:
*** No rule to make target `/home/endre/aosp-caf/out/target/product/serranodsdd/obj/SHARED_LIBRARIES/libaudiopolicymanager_intermediates/export_includes', needed by `/home/endre/aosp-caf/out/target/product/serranodsdd/obj/SHARED_LIBRARIES/libaudiopolicyservice_intermediates/import_includes'. Stop.
One more question. Is there a general guide on how to troubleshoot these "No rule to make target" errors? It drives me crazy that usually both files the error message is referring to are in the "out" folder and I have no idea where the original command line is or what to do. I am also trying a PA build and that one keeps dying on me as well with this type of error just on a different file.
csendre said:
For CAF sources, should I use the regular CM device tree or AOSP? I am trying CM tree except for the aosp_serranodsdd and AndroidProducts..mk files.
How do you fix this properly?
Code:
build/core/Makefile:46: *** Prebuilt apk found in PRODUCT_COPY_FILES: device/samsung/serrano-common/prebuilt/Eleven.apk:system/app/Eleven/Eleven.apk, use BUILD_PREBUILT instead!. Stop.
I deleted the line in serrano-common.mk because I can't figure out how to use build_prebuilt
I am also getting stuck at this error:
Code:
*** No rule to make target `/home/endre/aosp-caf/out/target/product/serranodsdd/obj/SHARED_LIBRARIES/libaudiopolicymanager_intermediates/export_includes', needed by `/home/endre/aosp-caf/out/target/product/serranodsdd/obj/SHARED_LIBRARIES/libaudiopolicyservice_intermediates/import_includes'. Stop.
One more question. Is there a general guide on how to troubleshoot these "No rule to make target" errors? It drives me crazy that usually both files the error message is referring to are in the "out" folder and I have no idea where the original command line is or what to do. I am also trying a PA build and that one keeps dying on me as well with this type of error just on a different file.
Click to expand...
Click to collapse
for caf or aosp build use cm tree...you need to fix your tree for errors.
for prebuilt apk error use following commit in build folder. Apply this commmit and it should build prebuild apks copies properly during build
https://github.com/i9192/platform_build/commit/6ceb823426e5f8b20fd39862013c909d37b415e9
Click to expand...
Click to collapse
for libaudiopolicyservice_intermediates error you need to set
BOARD_USES_GENERIC_AUDIO := false
Click to expand...
Click to collapse
flag in your boardconfig.mk
No rule to make target means something is missing on your device tree to build that particular thing.YOu need to search for it.
Like for audiopolicyservice error i search github for
SHARED_LIBRARIES/libaudiopolicyservice_intermediates/import_includes
Click to expand...
Click to collapse
and in issues i found a thread disccussing something...there someone told that you need to set that flag to get rid of error.
https://github.com/hak86/android_device_huawei_p8litekirin/issues/7
Click to expand...
Click to collapse
you need to search on google,xda,github, for this ...sometimes you need to ask cm team on their developer channel on irc, sometimes you need to discuss things with developers of that particular rom over their official community page like on google plus or something else...most of the time you will get the answer...and look for commits from good developers...like cm team, pawitp, purenexus, krexus, screwdaosp. Their commits most of the time show us the way.
k2wl said:
some one else working on n preview other than me???? or someone is willing to build and work on it ????
if yes post your questions ..i will try to answer that here
Click to expand...
Click to collapse
Sorry for the intrusion on the topic (I'm not developer), but wish you good luck in your intention. Remember that we have a device that is the last of its class: Good and Compact.
I could buy another model, but I opted for a new battery. Two years using S4 Mini. And I will continue. Until all give up it.
While there are developers, S4 Mini will remain alive.
ADR USR said:
Sorry for the intrusion on the topic (I'm not developer), but wish you good luck in your intention. Remember that we have a device that is the last of its class: Good and Compact.
I could buy another model, but I opted for a new battery. Two years using S4 Mini. And I will continue. Until all give up it.
While there are developers, S4 Mini will remain alive.
Click to expand...
Click to collapse
yes... last of it's class really...i am willing to go beyond to keep this device alive.
after iphone se i thought android oems will introduce smaller devices but still nothing...
and if i can boot up aosp 7.0 then i think ...arco and others who are working on cm14 afterwords will support this device too.
why these libs are not building (there are not in the zip file nor in the our dir) does android N doesnt need them ?
libOmx*
liboverlay.so
libstagefrighthw.so
and few others
DarkFrenzy said:
why these libs are not building (there are not in the zip file nor in the our dir) does android N doesnt need them ?
libOmx*
liboverlay.so
libstagefrighthw.so
and few others
Click to expand...
Click to collapse
as i can see new n preview build system somehow does not build libstagefrighthw.so but it build libstagefright.so only..but all zips for preview builds for all devices have libstagefrighthw.so...i am working on that since last two days to build libstagefrighthw.so from source..but i guess we have to use it as prebuild file from cm 13 roms.
as i have compared...audio,media,display folders are not changed much in n preview so i guess we can safely use that prebuilt binary from cm 13 tree
UPDATE_
found the issue...it looks like cm repos we use does not build libstagefrighthw lib...i will fix this issue soon
Trying to build tipsy rom and the build dies when it gets to the kernel with the following error
Code:
arm-eabi-gcc: No such file or directory
Is your PATH set correctly?
make[4]: *** [scripts/mod/empty.o] Error 2
make[3]: *** [scripts/mod] Error 2
make[3]: *** Waiting for unfinished jobs....
SHIPPED scripts/genksyms/parse.tab.c
I checked the staging area and build tools are present in the usual /prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin folder, so probably the path is not set right, but where is this set, how do I check it?
csendre said:
Trying to build tipsy rom and the build dies when it gets to the kernel with the following error
Code:
arm-eabi-gcc: No such file or directory
Is your PATH set correctly?
make[4]: *** [scripts/mod/empty.o] Error 2
make[3]: *** [scripts/mod] Error 2
make[3]: *** Waiting for unfinished jobs....
SHIPPED scripts/genksyms/parse.tab.c
I checked the staging area and build tools are present in the usual /prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin folder, so probably the path is not set right, but where is this set, how do I check it?
Click to expand...
Click to collapse
add this line to BoardConfigCommon.mk or BoardConfig.mk
Code:
# Kernel Toolchain
KERNEL_TOOLCHAIN := $(ANDROID_BUILD_TOP)/prebuilts/gcc/linux-x86/arm/arm-eabi-4.8/bin
KERNEL_TOOLCHAIN_PREFIX := arm-eabi-
@DarkFrenzy thanks, this worked! This seems to be a workaround though, shouldn't this path be defined somewhere in the build directory?
This reminds me, does anyone know a guide/list with commands/parameters that can be set in boardconfig and device make files? Also, how do you decide if a configuration should be set in boardconfig.mk, device.mk or another make file?
I am stuck again. Should I remove fileutils completely considering it is part of CM and not aosp? If so, how? If i just delete it, I get "no rule to make file" type errors.
Code:
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../device/samsung/serrano-common/cmhw/org/cyanogenmod/hardware/KeyDisabler.java:19: The import org.cyanogenmod.internal cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../device/samsung/serrano-common/cmhw/org/cyanogenmod/hardware/KeyDisabler.java:35: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../device/samsung/serrano-common/cmhw/org/cyanogenmod/hardware/KeyDisabler.java:39: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../device/samsung/serrano-common/cmhw/org/cyanogenmod/hardware/KeyDisabler.java:43: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/TouchscreenHovering.java:21: The import org.cyanogenmod.internal cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/TouchscreenHovering.java:48: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/TouchscreenHovering.java:49: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/TouchscreenHovering.java:50: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/TouchscreenHovering.java:84: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/TouchscreenHovering.java:95: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../device/samsung/serrano-common/cmhw/org/cyanogenmod/hardware/SerialNumber.java:20: The import org.cyanogenmod.internal cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../device/samsung/serrano-common/cmhw/org/cyanogenmod/hardware/SerialNumber.java:46: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/VibratorHW.java:19: The import org.cyanogenmod.internal cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/VibratorHW.java:30: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/VibratorHW.java:31: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/VibratorHW.java:32: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/VibratorHW.java:33: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/VibratorHW.java:34: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/VibratorHW.java:35: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/VibratorHW.java:40: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/VibratorHW.java:48: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/VibratorHW.java:56: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/VibratorHW.java:64: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/VibratorHW.java:72: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/VibratorHW.java:79: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/AdaptiveBacklight.java:21: The import org.cyanogenmod.internal cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/AdaptiveBacklight.java:38: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/AdaptiveBacklight.java:39: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/AdaptiveBacklight.java:49: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/AdaptiveBacklight.java:60: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/HighTouchSensitivity.java:21: The import org.cyanogenmod.internal cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/HighTouchSensitivity.java:48: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/HighTouchSensitivity.java:49: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/HighTouchSensitivity.java:50: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/HighTouchSensitivity.java:83: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/HighTouchSensitivity.java:94: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/DisplayModeControl.java:19: The import cyanogenmod cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/DisplayModeControl.java:20: The import org.cyanogenmod.internal cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/DisplayModeControl.java:51: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/DisplayModeControl.java:53: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/DisplayModeControl.java:64: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/DisplayModeControl.java:65: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/DisplayModeControl.java:66: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/DisplayModeControl.java:67: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/DisplayModeControl.java:79: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/DisplayModeControl.java:85: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/DisplayModeControl.java:102: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/DisplayModeControl.java:120: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/DisplayModeControl.java:122: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/DisplayModeControl.java:134: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/SunlightEnhancement.java:21: The import org.cyanogenmod.internal cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/SunlightEnhancement.java:40: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/SunlightEnhancement.java:41: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/SunlightEnhancement.java:51: FileUtils cannot be resolved
ERROR: /home/endre/tipsy/frameworks/opt/hardware/../../../hardware/samsung/cmhw/org/cyanogenmod/hardware/SunlightEnhancement.java:62: FileUtils cannot be resolved
make: *** [/home/endre/tipsy/out/target/common/obj/JAVA_LIBRARIES/org.cyanogenmod.hardware_intermediates/with-local/classes.dex] Error 41
make: *** Waiting for unfinished jobs....
csendre said:
I am stuck again. Should I remove fileutils completely considering it is part of CM and not aosp? If so, how? If i just delete it, I get "no rule to make file" type errors.
Click to expand...
Click to collapse
Revert that commit https://github.com/CyanogenMod/andr...mmit/afc6bd83906e04b939a1ed8c35b31d02cd631c48
Sent from my SM-T217S using Tapatalk
DarkFrenzy said:
Revert that commit https://github.com/CyanogenMod/andr...mmit/afc6bd83906e04b939a1ed8c35b31d02cd631c48
Sent from my SM-T217S using Tapatalk
Click to expand...
Click to collapse
That was the first thing I tried because I remembered I had the same errors with AOKP when it was merged, but here for some reason it didn't help
csendre said:
That was the first thing I tried because I remembered I had the same errors with AOKP when it was merged, but here for some reason it didn't help
Click to expand...
Click to collapse
U should delete this file if it's there in cmhw DisplayColorCalibration.java
Edit: now I remembered u should revert this commit
https://github.com/CyanogenMod/andr...mmit/d8a7052baa47785c616774f8e2e9acea6246b23a
Sent from my SM-T217S using Tapatalk
DarkFrenzy said:
U should delete this file if it's there in cmhw DisplayColorCalibration.java
Edit: now I remembered u should revert this commit
https://github.com/CyanogenMod/andr...mmit/d8a7052baa47785c616774f8e2e9acea6246b23a
Sent from my SM-T217S using Tapatalk
Click to expand...
Click to collapse
Yes, this looks to be the one. I'll try this evening.

Porting (Kang) Keymaster Firmware

Anyone ever attempted to kang Keymaster Firmware from a different device? I have tried the firmware from bacon, hammerhead, and g3. I have tried with and without the TARGET_KEYMASTER_WAIT_FOR_QSEE flag.
See these commits:
https://github.com/blastagator/cm_d...mmit/a50026b03824e65e852dc975e369f89a6e8e33a6
https://github.com/blastagator/them...mmit/b5951a58a4df5cabc8f928fae2476629cc73b1fa
https://github.com/blastagator/LGG2_Kernel/commit/655b64e43cbcd4550671cadf8bc19b6c495b3190
The result is always the same in dmesg:
Code:
[0][4371: keystore]QSEECOM: qseecom_load_app: App (keymaster) does'nt exist, loading apps for first time
[0][4371: keystore]QSEECOM: qseecom_load_app: scm_call failed resp.result unknown, -12
[0][4371: keystore]QSEECOM: qseecom_ioctl: failed load_app request: -14
This is the only related thing I've found:
http://androidforums.com/threads/beta-4-4-2-stock-kitkat.952314/
Very old and no answer.
I suspect the firmware might be signed to the device type and thus we might be SOL, but I was bored and messing around. Alternatively, perhaps the kernel is missing something. I looked for commits that may be missing from qseecom.c and smc.c, but nothing jumped out at me.
Figured I'd post a dev thread and maybe we can find an answer.
edit: This is my cheat sheet to myself, so far, for how to add hardware crypto to a device:
Code:
Needed commits:
Probable problem: G2 has no keymaster firmware, need to borrow someone else's
See this commit:
https://github.com/blastagator/themuppets_proprietary_vendor_lge/commit/b5951a58a4df5cabc8f928fae2476629cc73b1fa
g2-common/g2-common-vendor-blobs.mk
+ vendor/lge/g2-common/proprietary/vendor/firmware/keymaster/keymaster.b00:system/vendor/firmware/keymaster/keymaster.b00 \
+ vendor/lge/g2-common/proprietary/vendor/firmware/keymaster/keymaster.b01:system/vendor/firmware/keymaster/keymaster.b01 \
+ vendor/lge/g2-common/proprietary/vendor/firmware/keymaster/keymaster.b02:system/vendor/firmware/keymaster/keymaster.b02 \
+ vendor/lge/g2-common/proprietary/vendor/firmware/keymaster/keymaster.b03:system/vendor/firmware/keymaster/keymaster.b03 \
+ vendor/lge/g2-common/proprietary/vendor/firmware/keymaster/keymaster.mdt:system/vendor/firmware/keymaster/keymaster.mdt \
And, actually put the files in that folder, so they get copied.
CRUCIAL: MUST match this name and path!!! (Other things like keymaste.mdt and such are for if the files are in the modem)
Also, symlinks are NOT needed if we put the file into proprietary like this!
Device commit:
https://github.com/blastagator/cm_device_lge_g2-common/commit/a50026b03824e65e852dc975e369f89a6e8e33a6
BoardConfig
+# Encryption / Keymaster
+TARGET_HW_DISK_ENCRYPTION := true
+TARGET_KEYMASTER_WAIT_FOR_QSEE := true
+
NOTE: Not sure about wait_for_qsee --- MAYBE needed????
g2.mk
+# Keystore
+PRODUCT_PACKAGES += \
+ keystore.msm8974
+
Note: The resulting /system image will have TWO keystore files, this is correct
I checked a bacon image to confirm there are supposed to be two. One labeled msm8974 & one labeled default
Probable needed kernel changes:
Config
-# CONFIG_DM_REQ_CRYPT is not set
+CONFIG_DM_REQ_CRYPT=y
-# CONFIG_CRYPTO_DEV_QCRYPTO is not set
+CONFIG_CRYPTO_DEV_QCRYPTO=y
If dm-req-crypt.c doesn't build, need this commit:
https://github.com/blastagator/LGG2_Kernel/commit/50ddb1a013065cefa35151e9ded72aadcd210611
(platform: msm: Fix compile when CONFIG_PFT is not set)
include/linux/pft.h
-static inline int pft_get_key_index(struct inode *inode, u32 *key_index,
+static inline int pft_get_key_index(struct bio *bio, u32 *key_index,
blastagator said:
Anyone ever attempted to kang Keymaster Firmware from a different device?
Click to expand...
Click to collapse
Maybe, you have to add something like this:
https://github.com/CyanogenMod/andr...mmit/595cf776441389d147f4b4e7ec316aa02d74d14e
Rangell11 said:
Maybe, you have to add something like this:
https://github.com/CyanogenMod/andr...mmit/595cf776441389d147f4b4e7ec316aa02d74d14e
Click to expand...
Click to collapse
That is for if the firmware is in the /modem partition. I know it's finding the firmware because if I remove the files the error messages go away and the keystore service crashes without a specific error.
I've also insured permissions 0644 on the files and I've put selinux in permissive to see if that would help, but same errors.
blastagator said:
I've also insured permissions 0644 on the files and I've put selinux in permissive to see if that would help, but same errors.
Click to expand...
Click to collapse
Like this??
http://review.cyanogenmod.org/#/c/155981/
Did you try this?
http://review.cyanogenmod.org/#/c/137146/
PS:
I think our G2 not support TARGET_KEYMASTER_WAIT_FOR_QSEE flag.
http://review.cyanogenmod.org/#/c/102410/
Rangell11 said:
Like this??
http://review.cyanogenmod.org/#/c/155981/
Click to expand...
Click to collapse
After clean boot I used "setenforce 0" to see if it would load after that. (keystore service keeps repeatedly attempting to load in the background and can be seen with 'dmesg'.) Disabling enforcing should have solved any selinux problem, but the same error persisted.
Rangell11 said:
Did you try this?
http://review.cyanogenmod.org/#/c/137146/
Click to expand...
Click to collapse
Keymaster is in the system partition and not the modem partition (for my tests anyway), so this wouldn't be needed. I will say the contact was not 'context=ubject_r:firmware_file:s0', it was listed as a regular system file, however, in permissive mode this should not matter. Maybe I will try another test when I have some time where the ROM is compiled permissive and the files have the correct context.
I don't think it is this issue though, as the keymaster firmware is found and qseecomd is attempting to load it.
Rangell11 said:
PS:
I think our G2 not support TARGET_KEYMASTER_WAIT_FOR_QSEE flag.
http://review.cyanogenmod.org/#/c/102410/
Click to expand...
Click to collapse
Thanks. I did some testing and tried both, no luck with either.
Looks like there are at least a couple updates to scm that I could try:
https://github.com/dorimanx/DORIMANX_LG_STOCK_LP_KERNEL/commits/master/arch/arm/mach-msm/scm.c
https://github.com/dorimanx/DORIMANX_LG_STOCK_LP_KERNEL/commits/master/drivers/misc/qseecom.c
Will try updating kernel when I have some free time.
edit: Pulled in a bunch of kernel changes and compiled the boot image to be permissive:
https://github.com/blastagator/LGG2_Kernel/commits/cm-13.0
Still the same error codes.
Code:
[ 0.480347 / 01-01 00:00:00.473] QSEECOM: qseecom_probe: support_bus_scaling=0x1
[ 0.480356 / 01-01 00:00:00.473] QSEECOM: qseecom_probe: disk-encrypt-pipe-pair=0x2
[ 0.480365 / 01-01 00:00:00.473] QSEECOM: qseecom_probe: file-encrypt-pipe-pair=0x0
[ 0.480374 / 01-01 00:00:00.473] QSEECOM: qseecom_probe: qsee-ce-hw-instance=0x0
[ 0.480382 / 01-01 00:00:00.473] QSEECOM: qseecom_probe: qseecom.appsbl_qseecom_support = 0x0
[ 0.480421 / 01-01 00:00:00.473] QSEECOM: qseecom_probe: secure app region addr=0x7b00000 size=0x500000
[ 3.174366 / 01-13 05:47:06.160] init: Starting service 'qseecomd'...
[ 3.207945 / 01-13 05:47:06.193] init: Starting service 'keystore'...
[ 3.221661 / 01-13 05:47:06.206] warning: `qseecomd' uses 32-bit capabilities (legacy support in use)
[ 3.476387 / 01-01 05:47:06.146] QSEECOM: qseecom_load_app: App (keymaster) does'nt exist, loading apps for first time
[ 3.476494 / 01-01 05:47:06.146] QSEECOM: qseecom_load_app: scm_call failed resp.result unknown, -12
[ 3.476511 / 01-01 05:47:06.146] QSEECOM: qseecom_ioctl: failed load_app request: -14
[ 3.477964 / 01-01 05:47:06.146] init: Service 'keystore' (pid 275) exited with status 1
[ 3.477985 / 01-01 05:47:06.146] init: Service 'keystore' (pid 275) killing any children in process group
The last 5 lines just repeat indefinitely.
.
blastagator said:
After clean boot I used "setenforce 0" to see if it would load after that. (keystore service keeps repeatedly attempting to load in the background and can be seen with 'dmesg'.) Disabling enforcing should have solved any selinux problem, but the same error persisted.
Click to expand...
Click to collapse
Do you know why they did not use this change for our G2?
http://review.cyanogenmod.org/#/c/89419/
http://review.cyanogenmod.org/#/c/89418/
Rangell11 said:
Do you know why they did not use this change for our G2?
http://review.cyanogenmod.org/#/c/89419/
http://review.cyanogenmod.org/#/c/89418/
Click to expand...
Click to collapse
qcrypto is currently disabled, so there wouldn't be a need to apply similar patches to the current kernel, unless HW encryption were figured out.
I added those two commits, but I doubt this is the issue.
@blastagator
I've pushed my keymaster to Github: https://github.com/GalaticStryder/hardware_qcom_keymaster
This is the one we use on bacon and onyx on AOSPA builds.
Backporting 3.10 qseecom isn't needed and probably will break the APIs the blobs were compiled for. I'm gonna test this on nougat as well right now.
I'd actually ask for your help on AOSPA, I've got a semi-working RIL and some other great stuff to play with but I can't get the built-in kernel to boot after flashing, only boots when flashing my kernel externally.
The image is bumped, the mkbootimg was revisited twice but there's no go. I don't want to ship a prebuilt image to workaround this. I've tried CM14 kernel with my GCC 4.9 patches for androidkernel- toolchain and Lambda as well.
GalaticStryder said:
@blastagator
I've pushed my keymaster to Github: https://github.com/GalaticStryder/hardware_qcom_keymaster
This is the one we use on bacon and onyx on AOSPA builds.
Backporting 3.10 qseecom isn't needed and probably will break the APIs the blobs were compiled for. I'm gonna test this on nougat as well right now.
I'd actually ask for your help on AOSPA, I've got a semi-working RIL and some other great stuff to play with but I can't get the built-in kernel to boot after flashing, only boots when flashing my kernel externally.
The image is bumped, the mkbootimg was revisited twice but there's no go. I don't want to ship a prebuilt image to workaround this. I've tried CM14 kernel with my GCC 4.9 patches for androidkernel- toolchain and Lambda as well.
Click to expand...
Click to collapse
Without going too far OT, do you have a thread for the AOSPA you're working on? Curious what manifest you're using.
re: keymaster - I pulled the blobs from Bacon and it looks like the cm-13 nightlies use the latest hardware_qcom_keymaster. I don't think there have really been any big changes to the API. I could be wrong though!
blastagator said:
Without going too far OT, do you have a thread for the AOSPA you're working on? Curious what manifest you're using.
re: keymaster - I pulled the blobs from Bacon and it looks like the cm-13 nightlies use the latest hardware_qcom_keymaster. I don't think there have really been any big changes to the API. I could be wrong though!
Click to expand...
Click to collapse
I'm making progress using everything from CAF and patching the needed parts on demand.
The stuff AOSPA already has in their Github I'm sending to Gerrit: https://gerrit.aospa.co/#/q/status:open
The parts I needed to dive deeper I've forked or created the repos manually: https://github.com/GalaticStryder
My next step is to "decommonize" the power package to be able to hint impulse instead of ondemand and to update MSM8974 code that is two years old.
The only problem I'm facing is that the otapackage seems to flash the boot.img in a bad manner, causing boot certification problem. If I manually flash the boot.img after the otapackage it works like a charm, the problem is somewhere in the boot flashing script part of the ota_from_target_files python script, might be pushing the boot.img using imgdiff and causing the bootloader to refuse due to mismatching certification inside the boot sector. This is my hypothesis but it might be what is happening.
GalaticStryder said:
I'm making progress using everything from CAF and patching the needed parts on demand.
The stuff AOSPA already has in their Github I'm sending to Gerrit: https://gerrit.aospa.co/#/q/status:open
The parts I needed to dive deeper I've forked or created the repos manually: https://github.com/GalaticStryder
My next step is to "decommonize" the power package to be able to hint impulse instead of ondemand and to update MSM8974 code that is two years old.
The only problem I'm facing is that the otapackage seems to flash the boot.img in a bad manner, causing boot certification problem. If I manually flash the boot.img after the otapackage it works like a charm, the problem is somewhere in the boot flashing script part of the ota_from_target_files python script, might be pushing the boot.img using imgdiff and causing the bootloader to refuse due to mismatching certification inside the boot sector. This is my hypothesis but it might be what is happening.
Click to expand...
Click to collapse
Well beyond the scope of my dive into android fun. Wish I could help! What is your ultimate goal? Paranoid Android?
It is also very exciting to see the push of Android stuff into the mainline kernel. Hope for the future!
Realized additional blobs for qseecom:
https://github.com/blastagator/them...mmit/09bc989cdb0db9bc47f7501dbf36be2a155ca168
Also, updated boardconfig since the bacon qseecomd supports TARGET_KEYMASTER_WAIT_FOR_QSEE
https://github.com/blastagator/cm_d...mmit/6ca7cd8835afa57ebec9b47fc56514d87ee95e34
Building now. Not sure if I can test tonight, but fingers crossed, maybe it will work!
No luck. Still the same errors:
Code:
12-31 23:22:39.385 2697 2697 I keystore: Found keymaster0 module Keymaster QCOM HAL, version 3
12-31 23:22:39.385 2697 2697 I SoftKeymaster: system/keymaster/soft_keymaster_device.cpp, Line 122: Creating device
12-31 23:22:39.385 2697 2697 D SoftKeymaster: system/keymaster/soft_keymaster_device.cpp, Line 123: Device address: 0xb6b64000
12-31 23:22:39.386 2697 2697 D QCOMKeyMaster: keymaster app is loaded
12-31 23:22:39.386 2697 2697 D QCOMKeyMaster: keymaster app got loaded at attempt number 0
12-31 23:22:39.386 2697 2697 D QSEECOMAPI: : QSEECom_get_handle sb_length = 0x2000
12-31 23:22:39.386 2697 2697 D QSEECOMAPI: : App is not loaded in QSEE
12-31 23:22:39.392 2697 2697 E QSEECOMAPI: : Error::Load image request failed ret = -1, errno = 14
12-31 23:22:39.392 2697 2697 E QSEECOMAPI: : Error::Loading image failed with ret = -1
12-31 23:22:39.393 2697 2697 D QSEECOMAPI: : QSEECom_get_handle sb_length = 0x2000
12-31 23:22:39.393 2697 2697 D QSEECOMAPI: : App is not loaded in QSEE
12-31 23:22:39.393 2697 2697 E QSEECOMAPI: : Error::Cannot open the file /firmware/image/keymaste.mdt
12-31 23:22:39.393 2697 2697 E QSEECOMAPI: : Error::Loading image failed with ret = -1
12-31 23:22:39.393 2697 2697 E QCOMKeyMaster: Loading keymaster app failed
12-31 23:22:39.393 2697 2697 E keystore: Error opening keystore keymaster0 device.
12-31 23:22:39.393 2697 2697 E keystore: keystore keymaster could not be initialized; exiting
Guessing there is some sort of signature check that is matching the expected device to the keymaster firmware file. Unfortunately qseecomapi and keymaster are closed source, so it is kind of a guessing game...
Code:
/**
* @brief Open a handle to the QSEECom device.
*
* - Load a secure application. The application will be verified that it is
* secure by digital signature verification.
* Allocate memory for sending requests to the QSAPP
*
* Note/Comments:
* There is a one-to-one relation for a HLOS client and a QSAPP;
* meaning that only one app can communicate to a QSAPP at a time.
*
* Please note that there is difference between an application and a listener
* service. A QSAPP must be loaded at the request of the HLOS,
* and all requests are orginated by the HLOS client.
* A listener service on the otherhand is started during start-up by a
* daemon, qseecomd.
*
* A HLOS application may create mutiple handles to the QSAPP
*
* @param[in/out] handle The device handle
* @param[in] fname The directory and filename to load.
* @param[in] sb_size Size of the shared buffer memory for sending requests.
* @return Zero on success, negative on failure. errno will be set on
* error.
*/
int QSEECom_start_app(struct QSEECom_handle **clnt_handle, const char *path,
const char *fname, uint32_t sb_size);
Perhaps something in one of the .prop files could be changed to trick the app into passing a device check, but again, this is all very speculative.
blastagator said:
Anyone ever attempted to kang Keymaster Firmware from a different device? I have tried the firmware from bacon, hammerhead, and g3. I have tried with and without the TARGET_KEYMASTER_WAIT_FOR_QSEE flag.
The result is always the same in dmesg:
Code:
[0][4371: keystore]QSEECOM: qseecom_load_app: App (keymaster) does'nt exist, loading apps for first time
[0][4371: keystore]QSEECOM: qseecom_load_app: scm_call failed resp.result unknown, -12
[0][4371: keystore]QSEECOM: qseecom_ioctl: failed load_app request: -14
Click to expand...
Click to collapse
Hello @blastagator,
were you able to fix that Keymaster Issue , if so mind telling us how ?
Because , iam facing similar issues in YU4711 (jalebi)
sooorajjj said:
Hello @blastagator,
were you able to fix that Keymaster Issue , if so mind telling us how ?
Because , iam facing similar issues in YU4711 (jalebi)
Click to expand...
Click to collapse
No. Tried several things with no luck.
What is a keymaster firmware?
And what is it good for?
wq0913562 said:
What is a keymaster firmware?
And what is it good for?
Click to expand...
Click to collapse
Maybe this config is need for porting firmware from different devices.
wq0913562 said:
What is a keymaster firmware?
And what is it good for?
Click to expand...
Click to collapse
cryerenable said:
Maybe this config is need for porting firmware from different devices.
Click to expand...
Click to collapse
No, it is used to enable hardware backed keystore (i.e. hardware accelerated encryption)
blastagator said:
No, it is used to enable hardware backed keystore (i.e. hardware accelerated encryption)
Click to expand...
Click to collapse
hello
i'm facing a similar problem on my lineage 13 port for the lg stylo 2 plus the qseecomapi is keeping looking for the keymaste.mdt file
E QSEECOMAPI: Error::Cannot open the file /firmware/image/keymaste.mdt errno = 2
E QSEECOMAPI: Error::Loading image failed with ret = -1
Click to expand...
Click to collapse
and our device does not have one do you know how to bybass this, ty.
messi2050 said:
hello
i'm facing a similar problem on my lineage 13 port for the lg stylo 2 plus the qseecomapi is keeping looking for the keymaste.mdt file
and our device does not have one do you know how to bybass this, ty.
Click to expand...
Click to collapse
I got frustrated with it. Only other idea I had was to port all common blobs from similar device and see if that works.
blastagator said:
I got frustrated with it. Only other idea I had was to port all common blobs from similar device and see if that works.
Click to expand...
Click to collapse
Are you still active?
Just found this. Not sure if it can help.
http://bits-please.blogspot.de/2016/06/extracting-qualcomms-keymaster-keys.html
https://android.googlesource.com/platform/hardware/qcom/keymaster/+/master
Maybe I'll give it a try to port keymaster now that we have updated 3.4.113 kernel...

Building OxygenOS Oreo (5.0.1)

Hi! I am trying to build OnePlusOSS (CAF) Oreo for my OP3T (not OxygenOS mixed up the title sorry) but I'm running into errors. I already had some bluetooth errors that I fixed with this commit: https://github.com/AOSPA/android_system_bt/commit/c78c34cdbd6d7163ad93454b5909a04a201117a1
but I now have a new issue, and I can't find a solution. The error I get is this:
Code:
[ 50% 1/2] glob device/*/*/Android.bp
ninja: error: 'out/target/common/obj/JAVA_LIBRARIES/com.qualcomm.qti.camera_intermediates/javalib.jar', needed by 'out/target/product/msm8996/dex_bootjars/system/framework/arm64/boot.art', missing and no known rule to make it
12:30:26 ninja failed with: exit status 1
build/core/main.mk:21: recipe for target 'run_soong_ui' failed
make: *** [run_soong_ui] Error 1
Someone had a similar error and the fix was this: https://developer.qualcomm.com/download/sdllvm/snapdragon-llvm-compiler-android-linux64.tar.gz I don't use the toolchain in that post, but there was an error there similar to the one I got. You can visit that link and see the reply and the error that the other person got if you want.
Code:
Hello Fenil, you should see the product package here https://source.codeaurora.org/quic/la/device/qcom/common/tree/base.mk?h=LA.UM.6.7.r1-04900-8x09.0#n1066 in your environment (line 1066) and the QTIC_EXTENSION flag should be enabled here https://source.codeaurora.org/quic/la/platform/vendor/qcom/msm8909go/tree/msm8909go.mk?h=qcom-devices.lnx.1.9.r4-rel#n34(line 34). Can you confirm that? If it is all set up correctly, check vendor/qcom/proprietary. If you need more help with this, you can email me at [email protected]
but that is a different chipset and won't work for my device.
Any help would be awesome! Also, where can I get vendor/qcom/proprietary? Or is that not given out lol.
Sorry, full link for that reply is https://source.codeaurora.org/quic/...ree/base.mk?h=LA.UM.6.7.r1-04900-8x09.0#n1066 and https://source.codeaurora.org/quic/...sm8909go.mk?h=qcom-devices.lnx.1.9.r4-rel#n34

Categories

Resources