Porting (Kang) Keymaster Firmware - G2 Original Android Development

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...

Related

[KERNEL] [WIP] Custom Kernel Project

Intro
I wanted to make a thread to document kernel development activities that we're doing. So far, this Ouya forum has been a great place to view what it takes to start developing for a new device!
First of all, alsutton over on GitHub posted the kernel source. It can be found here https://github.com/ouya/ouya_1_1-kernel.
XDA University has some great articles to get started:
http://xda-university.com/as-a-developer/getting-started-building-a-kernel-from-source
http://xda-university.com/as-a-developer/adding-features-to-your-kernel
Things noticed about the stock kernel so far:
-it's cpu governor seems to be permanently set to "performance" (1600Mhz all the time). There might be a way to override this, but in the voltage control app, I wasn't able to change anything (frequency or governor)
Wish List:
-Access to set more governors (could help the Ouya's fan stay off during menu surfing)
-Overclocking (we have a fan...let's break 2Ghz because we need moar hertz. Might help speed up some emulators)
Need more info:
-If we ever overlock, we need a way to view temperature to make sure we're not frying our Ouyas. Just a guess, but it's probably a file we can read from in /dev or /proc
-Just a blind guess after reading the XDA University article on adding overclocking, but SOURCE/arch/arm/mach-tegra/tegra3_clocks.c might be a place to look. It seems to have clock frequency tables. Other devs that have made tegra 3 kernels might know the appropriate files to edit
boot.img details
As an FYI,
for most android devices, the kernel resides in it's own partition on the device. When flashing a new kernel, a new boot.img is flashed to the partition. The boot.img file includes a header, the kernel image (pre-compiled), and the ramdisk. On boot, the kernel takes control and uses the ramdisk files to get things started. The rest of the partitions (including system, data, cache) are mounted and the Android OS is booted (from system).
Here's one way to take a boot.img and dissect it in order to view the ramdisk contents.
http://android-dls.com/wiki/index.php?title=HOWTO:_Unpack,_Edit,_and_Re-Pack_Boot_Images
Here's another way as well (thanks, professorpoptarts)
http://forum.xda-developers.com/showthread.php?t=1890912
May I suggest not to try to overclock past known safe values of 1.9ghz?
As for the kernel....it is not set to be at 1.6ghz all the time... its set differently and actually stays and floats at 1ghz until utilization kicks in at to 1.6ghz
You wont be able to change any of these values until you compile your own kernel with the correct voltage/clock settings in place.
-----edit------
To add to that in respects to the 1-1.6ghz range it actually only utilizes those 2 cpu states ( from what I've recorded )
HTCdemon said:
May I suggest not to try to overclock past known safe values of 1.9ghz?
As for the kernel....it is not set to be at 1.6ghz all the time... its set differently and actually stays and floats at 1ghz until utilization kicks in at to 1.6ghz
You wont be able to change any of these values until you compile your own kernel with the correct voltage/clock settings in place.
-----edit------
To add to that in respects to the 1-1.6ghz range it actually only utilizes those 2 cpu states ( from what I've recorded )
Click to expand...
Click to collapse
What are you using to record? I have been using "system panel".
Sent from my SCH-I535 using xda premium
just fyi, I was looking at the init.rc for the 264 OTA, just in case a rom gets flashed that didn't remove this we could always disable the recovery flash at the boot level.
service flash_recovery /system/etc/install-recovery.sh
class main
oneshot
for any other aspiring kernel devs out there:
https://github.com/invisiblek/AnyKernel/tree/ouya
(fyi: this is on the branch named ouya of that repo, make your you add: -b ouya to your git clone or you'll get the branch for a different device)
just throw your zImage in kernel/ and your modules in modules/
make sure when you compile your kernel, you add -fno-pic to your KBUILD_CFLAGS_MODULE in Makefile in the root of your kernel source
otherwise it wont load the modules
wewt!
Just curious.....is anyone else having issues compiling the latest commit?
I reverted back to the previous commit but it still breaks.
Build machine hasnt changed.
Code:
drivers/dma/timb_dma.c: In function 'td_tx_status':
drivers/dma/timb_dma.c:521: error: 'last_complete' undeclared (first use in this function)
drivers/dma/timb_dma.c:521: error: (Each undeclared identifier is reported only once
drivers/dma/timb_dma.c:521: error: for each function it appears in.)
drivers/dma/timb_dma.c:521: error: 'last_used' undeclared (first use in this function)
drivers/dma/timb_dma.c:513: warning: unused variable 'td_chan'
make[2]: *** [drivers/dma/timb_dma.o] Error 1
make[1]: *** [drivers/dma] Error 2
make: *** [drivers] Error 2
HTCdemon said:
Just curious.....is anyone else having issues compiling the latest commit?
I reverted back to the previous commit but it still breaks.
Build machine hasnt changed.
Code:
drivers/dma/timb_dma.c: In function 'td_tx_status':
drivers/dma/timb_dma.c:521: error: 'last_complete' undeclared (first use in this function)
drivers/dma/timb_dma.c:521: error: (Each undeclared identifier is reported only once
drivers/dma/timb_dma.c:521: error: for each function it appears in.)
drivers/dma/timb_dma.c:521: error: 'last_used' undeclared (first use in this function)
drivers/dma/timb_dma.c:513: warning: unused variable 'td_chan'
make[2]: *** [drivers/dma/timb_dma.o] Error 1
make[1]: *** [drivers/dma] Error 2
make: *** [drivers] Error 2
Click to expand...
Click to collapse
Fine here
Now if I just had a working Ouya....we could make some cool stuff =P
Back with a new problem...
Code:
06-29 18:41:21.260: D/WifiService(322): setWifiEnabled: true pid=584, uid=10018
06-29 18:41:21.270: E/WifiHW(107): Failed to open wlan fw path param (No such file or directory)
06-29 18:41:21.270: E/SoftapController(107): Softap fwReload - failed: -1
06-29 18:41:21.270: E/WifiStateMachine(322): Failed to reload STA firmware java.lang.IllegalStateException: command '9 softap fwreload wlan0 STA' failed with '400 9 Softap operation failed (No such file or directory)'
06-29 18:41:21.270: W/CommandListener(107): Failed to retrieve HW addr for wlan0 (No such device)
06-29 18:41:21.270: D/CommandListener(107): Setting iface cfg
06-29 18:41:21.270: E/WifiStateMachine(322): Unable to change interface settings: java.lang.IllegalStateException: command '11 interface setcfg wlan0 0.0.0.0 0 down' failed with '400 11 Failed to set address (No such device)'
06-29 18:41:21.280: V/WifiSetupActivity(584): Setting content visible: true
06-29 18:41:21.280: E/wpa_supplicant(986): nl80211: Could not add multicast membership for scan events: -2 (No such file or directory)
06-29 18:41:21.280: E/wpa_supplicant(986): Failed to initialize driver 'nl80211'
06-29 18:41:21.280: E/wpa_supplicant(986): wlan0: Unsupported driver 'nl80211'
06-29 18:41:21.370: E/WifiStateMachine(322): Failed to start supplicant!
Anyone else having issues with this?
edit:
Looks like it's not loading any modules at all... I had no problems previously with older kernels till 328....anyone know what im missing?
My main issue here, and something I'd like to see done.
The Ouya seems to get hot sometimes during long durations of gameplay, could we put together a method on getting the fan boosting cool air through the device once it gets hot? Or would that be something hardware related as the Ouya can't say; "I'm hot, pour some water on me"?
If this was useful to you, I can only ask of a favor!
Check out my YouTube channel!
http://WWW.YouTube.com/user/TheDarkRosary
Subscribe if you will!
HTCdemon said:
Back with a new problem...
Code:
06-29 18:41:21.260: D/WifiService(322): setWifiEnabled: true pid=584, uid=10018
06-29 18:41:21.270: E/WifiHW(107): Failed to open wlan fw path param (No such file or directory)
06-29 18:41:21.270: E/SoftapController(107): Softap fwReload - failed: -1
06-29 18:41:21.270: E/WifiStateMachine(322): Failed to reload STA firmware java.lang.IllegalStateException: command '9 softap fwreload wlan0 STA' failed with '400 9 Softap operation failed (No such file or directory)'
06-29 18:41:21.270: W/CommandListener(107): Failed to retrieve HW addr for wlan0 (No such device)
06-29 18:41:21.270: D/CommandListener(107): Setting iface cfg
06-29 18:41:21.270: E/WifiStateMachine(322): Unable to change interface settings: java.lang.IllegalStateException: command '11 interface setcfg wlan0 0.0.0.0 0 down' failed with '400 11 Failed to set address (No such device)'
06-29 18:41:21.280: V/WifiSetupActivity(584): Setting content visible: true
06-29 18:41:21.280: E/wpa_supplicant(986): nl80211: Could not add multicast membership for scan events: -2 (No such file or directory)
06-29 18:41:21.280: E/wpa_supplicant(986): Failed to initialize driver 'nl80211'
06-29 18:41:21.280: E/wpa_supplicant(986): wlan0: Unsupported driver 'nl80211'
06-29 18:41:21.370: E/WifiStateMachine(322): Failed to start supplicant!
Anyone else having issues with this?
edit:
Looks like it's not loading any modules at all... I had no problems previously with older kernels till 328....anyone know what im missing?
Click to expand...
Click to collapse
Im getting the exact same problems on a stock OUYA bougth today
lsmod on the adb shell shows the following :
[email protected]:/ $ lsmod
lsmod
cfg80211 179175 0 - Live 0x00000000
inv_mpu_ak8975 3937 0 - Live 0x00000000
inv_mpu_kxtf9 6865 0 - Live 0x00000000
mpu3050 36222 2 inv_mpu_ak8975,inv_mpu_kxtf9, Live 0x00000000
Click to expand...
Click to collapse
I wish i had an Ouya.... i would be all over this
Ouya-XD said:
My main issue here, and something I'd like to see done.
The Ouya seems to get hot sometimes during long durations of gameplay, could we put together a method on getting the fan boosting cool air through the device once it gets hot? Or would that be something hardware related as the Ouya can't say; "I'm hot, pour some water on me"?
If this was useful to you, I can only ask of a favor!
Check out my YouTube channel!
http://WWW.YouTube.com/user/TheDarkRosary
Subscribe if you will!
Click to expand...
Click to collapse
sure through some code already published there are multiple ways to impliment thermal throttling
although that could impact game play
im sure there are also ways to open the unit and have it trigger a fan
im sure you also could make custom heatsink for the unit for those hardcore Overclockers
you wanna look in
tegra3_clocks.c
tegra3_dvfs.c
tegra3_thermal.c
tegra3_throttle.c
cpu-tegra3.c
and a few others
you can improve the GPU clocks and add governors easily as well as change between slab/slub/slob/slqb
this would be something really fun to play with ill try to save up for an ouya
Is this project still active? I would love to contribute in any way possible to an overclocked kernel, but I have never done any kernel development before.
BUS DR1V3R said:
Is this project still active? I would love to contribute in any way possible to an overclocked kernel, but I have never done any kernel development before.
Click to expand...
Click to collapse
I'm waiting till I can afford an ouya then I can code up some stuff
Sent from my SCH-R970 using xda premium
mybook4 said:
Things noticed about the stock kernel so far:
-it's cpu governor seems to be permanently set to "performance" (1600Mhz all the time). There might be a way to override this, but in the voltage control app, I wasn't able to change anything (frequency or governor)
Click to expand...
Click to collapse
Just for reference, I have two Ouya's. One came clocked (retail version) at 1.6, the other came (Kickstarter) clocked at 1.7.

[Q] 'Correct' way to compile a permissive SELinux kernel?

As the title suggests, I'm attempting to compile a (Lollipop) Nexus 5 kernel with SELinux in permissive mode by default. For reference, I am using the msm kernel source tree at commit 8a80a0e.
I have managed to accomplish this by modifying msm/security/selinux/selinuxfs.c and inserting new_value = 0; into sel_write_enforce to prevent the mode being changed:
Code:
length = -EINVAL;
if (sscanf(page, "%d", &new_value) != 1)
goto out;
new_value = 0; /* inserted this line */
if (new_value != selinux_enforcing) {
length = task_has_security(current, SECURITY__SETENFORCE);
if (length)
goto out;
audit_log(current->audit_context, GFP_KERNEL, AUDIT_MAC_STATUS,
"enforcing=%d old_enforcing=%d auid=%u ses=%u",
This method, however, doesn't seem particularly good, as it relies on the intricacies of the specific implementation of SELinux used in this kernel, and prevents the mode being changed later.
This post suggests changing the CONFIG_ALWAYS_ENFORCE flag for a Samsung device, however the Nexus 5 kernel does not appear to have such an option. Setting the default state of SELinux using various menuconfig options and kernel command line parameters does not appear to have any effect, and disabling it entirely causes the device to crash after boot, before any logcat output is produced.
I have noticed than when started with a kernel with SELinux enabled, one of the first messages from logcat is from auditd, of the form enforcing=1 old_enforcing=0 auid=... ses=..., indicating that something is setting the SELinux mode to enforcing almost immediately after boot.
Thus, I am wondering if anyone knows where this command to set SELinux to enforcing comes from, how to disable it, or another way to compile a kernel with SELinux set to permissive?
I believe you need to change the kernel config to allow command line switching of SELinux:
Code:
CONFIG_SECURITY_SELINUX_BOOTPARAM=y
then modify the boot parameters of your boot.img adding to the cmdline:
Code:
enforcing=0 androidboot.selinux=permissive
I think that's the way. I went through all this but ended up just disabling SELinux altogether so I can't remember for sure if that's all.
Gene Poole said:
I believe you need to change the kernel config to allow command line switching of SELinux:
Code:
CONFIG_SECURITY_SELINUX_BOOTPARAM=y
then modify the boot parameters of your boot.img adding to the cmdline:
Code:
enforcing=0 androidboot.selinux=permissive
I think that's the way. I went through all this but ended up just disabling SELinux altogether so I can't remember for sure if that's all.
Click to expand...
Click to collapse
Doesn't work. The system boots up in permissive mode, but immediately switches to enforcing, as it usually does. The first few lines of logcat:
Code:
--------- beginning of main
I/installd( 0): installd firing up
W/auditd ( 169): type=2000 audit(0.0:1): initialized
I/auditd ( 169): type=1403 audit(0.0:2): policy loaded auid=4294967295 ses=4294967295
W/auditd ( 169): type=1404 audit(0.0:3): enforcing=1 old_enforcing=0 auid=4294967295 ses=4294967295
Are you using the google boot image, or the AOSP image (they're quite different)? I just checked mine (built from source) and init has -DALLOW_DISABLE_SELINUX=1 which may not be present in the distro version of init.
Gene Poole said:
Are you using the google boot image, or the AOSP image (they're quite different)? I just checked mine (built from source) and init has -DALLOW_DISABLE_SELINUX=1 which may not be present in the distro version of init.
Click to expand...
Click to collapse
I wasn't aware there was a difference. I compiled the kernel from source, enabling the relevant config options, then got boot.img from the Nexus 5 factory image, and extracted and replaced the kernel and boot parameters as suggested by this document.
The boot.img built as part of the AOSP build (with USERDEBUG flag) is not locked down the way the factory boot image is. There may be something built-in to the init process to ensure selinux is available in the kernel and cannot be disabled.
I wish I knew more about this. My original goal was to implement the things I needed in the AOSP build and set up selinux permissions to allow it, but I gave up and ended up just removing selinux from the kernel altogether.
Hmm... I'll take a look in the initrd of the Android boot images to see if there's anything in there that might be setting the SELinux mode.
Update: Bah. It seems the AOSP source of init can be configured to accept a ro.boot.selinux parameter, but I see no indication that the code is present in the stock init binary. The code also explains why the phone immediately reboots into recovery when SELinux support is disabled in the kernel.
Update 2: After attempting to download 18GB of AOSP source code, I think my dodgy way of disabling SELinux is really the best method.
Gene Poole said:
I believe you need to change the kernel config to allow command line switching of SELinux:
Code:
CONFIG_SECURITY_SELINUX_BOOTPARAM=y
then modify the boot parameters of your boot.img adding to the cmdline:
Code:
enforcing=0 androidboot.selinux=permissive
I think that's the way. I went through all this but ended up just disabling SELinux altogether so I can't remember for sure if that's all.
Click to expand...
Click to collapse
bootloop ¯\_(ツ)_/¯
Just disable it in the config?
Why do you need it if you don't use it?
Jo_Jo_2000 said:
Just disable it in the config?
Why do you need it if you don't use it?
Click to expand...
Click to collapse
I prefer CONFIG_ALWAYS_ENFORCE = false instead of new_value = 0

Kernel is not booting at all

Hello,
I tried to build a kernel myself and it just fails to boot. I have UART access (through headphone adapter) and I just get nothing in the serial console.
I have CM 11.0 and I cloned CM's android_kernel_lge_hammerhead repo and checked out stable/cm-11.0 with hammerhead_defconfig.
I used google's arm-eabi-4.8 precompiled toolchain.
To boot:
Code:
ttouch android_kernel_lge_hammerhead> sudo fastboot boot arch/arm/boot/zImage-dtb
creating boot image...
creating boot image - 8583168 bytes
downloading 'boot.img'...
OKAY [ 0.375s]
booting...
OKAY [ 0.123s]
finished. total time: 0.498s
Here is what I get in UART:
Code:
welcome to hammerhead bootloader
[10] Power on reason 81
[10] DDR: elpida
[90] Loaded IMGDATA at 0x11000000
[90] Display Init: Start
[170] MDP GDSC already enabled
[170] bpp 24
[210] Config MIPI_CMD_PANEL.
[210] display panel: ORISE
[210] display panel: Default setting
[340] Turn on MIPI_CMD_PANEL.
[390] Display Init: Done
[390] cable type from shared memory: 8
[390] vibe
[590] USB init ept @ 0xf957000
[610] secured device: 1
[610] fastboot_init()
[660] splash: fastboot_op
FASTBOOT MODE
PRODUCT_NAME - hammerhead
VARIANT - hammerhead D821(E) 16GB
HW VERSION - rev_11
BOOTLOADER VERSION - HHZ11k
BASEBAND VERSION - M8974A-2.0.50.1.16
CARRIER INFO - None
SERIAL NUMBER - <blablablabla>
SIGNING - production
SECURE BOOT - enabled
LOCK STATE - unlocked
[770] splash: start
[1260] splash: bootloader
[1260] Fastboot mode started
[1260] udc_start()
�����l[60660] -- reset --
[60660] -- portchange --
[60820] -- reset --
[60820] -- portchange --
[60990] fastboot: processing commands
��[112660] fastboot: download:0082f800
downloading...
[113140] fastboot: boot
[113150] Found Appeneded Flattened Device tree
[113150] DTB: platform id 126, board id 150, soc rev 20002, board rev 11
[113160] get_display_kcal = 0, 0, 0, x
[113200] vibe
[113300] splash: boot
[113340] splash: unlocked
[113380] cmdline: uart_console=enable lcd_maker_id=primary lge.hreset=off lge.reset=unknown gpt=enable lge.kcal=0|0|0|x lge.rev=rev_11 androidboot.laf androidboot.emmc=true fastboot=true androidboot.serialno=<blablablabla> androidboot.bootloader=HHZ11k androidb[113400] Updating device tree: start
[113420] Updating device tree: done
[113420] booting linux @ 0x10008000, ramdisk @ 0x11000000 (0), tags/device tree @ 0x10000100
[113430] Turn off MIPI_CMD_PANEL.
[113430] Continuous splash enabled, keeping panel alive.
[113430] undefined abort, halting
[113430] r0 0x00000000 r1 0x00000000 r2 0x10000100 r3 0x003996e3
[113430] r4 0x10008000 r5 0x0f92607a r6 0x0f925d5b r7 0x0f925f89
[113430] r8 0x0f955652 r9 0x0f9556c7 r10 0x00000001 r11 0x10000100
[113430] r12 0x20000193 usp 0x00000000 ulr 0x00000000 pc 0x1000800c
[113430] spsr 0x40000193
I've never installed a kernel like that (via fastboot) and I had to look up the headphone UART adapter thing.
I don't have much to offer. I always use mkbootimg to link my kernel and ramdisk, then flash it via fastboot. Looking at your serial dump, the only thing I see is that the base, ramdisk, and tags offsets look completely different from the ones I use with mkbootimg.
BASE=0x00000000
PAGESIZE=2048
RAMDISK_OFFSET=0x02900000
TAGS_OFFSET=0x02700000
I'm playing around with my breadboard and an FTDI USB<-->Serial board I have to try and make a working serial console and I'll see what my N5 dumps.
Gene Poole said:
I've never installed a kernel like that (via fastboot) and I had to look up the headphone UART adapter thing.
I don't have much to offer. I always use mkbootimg to link my kernel and ramdisk, then flash it via fastboot. Looking at your serial dump, the only thing I see is that the base, ramdisk, and tags offsets look completely different from the ones I use with mkbootimg.
BASE=0x00000000
PAGESIZE=2048
RAMDISK_OFFSET=0x02900000
TAGS_OFFSET=0x02700000
Click to expand...
Click to collapse
Thanks, I'll try that.
Gene Poole said:
I'm playing around with my breadboard and an FTDI USB<-->Serial board I have to try and make a working serial console and I'll see what my N5 dumps.
Click to expand...
Click to collapse
I guess you're trying to build the N4 cable, but it does not work.
For the N5 to work you need to supply 3V3 and not 1V8 to the VCC
The RX though (serial input to the N5) should be 1V8 (done with a simple voltage divider, try 1K and 1.2K to GND) or there is a chance that you'll fry your serial.
Yeah, my search showed that the N5 version needed no resistors, but I used some anyway just to shunt some voltage. It worked. I got a dump and it does appear that your offsets are not right. Here's my dump up to the kernel taking over:
Code:
welcome to hammerhead bootloader
[10] Power on reason 80
[10] DDR: hynix
[90] Loaded IMGDATA at 0x11000000
[90] Display Init: Start
[170] MDP GDSC already enabled
[170] bpp 24
[210] Config MIPI_CMD_PANEL.
[210] display panel: ORISE
[260] Found Appeneded Flattened Device tree
[260] DTB: platform id 126, board id 150, soc rev 20002, board rev 11
[300] Set panel ON cmds [35]
[420] Turn on MIPI_CMD_PANEL.
[470] Display Init: Done
[470] cable type from shared memory: 8
[470] reboot_mode restart reason = power_on
[520] vibe
[620] splash: boot
[660] splash: unlocked
[700] use_signed_kernel=0, is_unlocked=1, is_tampered=0.
[700] Loading boot image (9226240): start
[1030] Loading boot image (9226240): done
[1030] Found Appeneded Flattened Device tree
[1040] DTB: platform id 126, board id 150, soc rev 20002, board rev 11
[1040] get_display_kcal = 0, 0, 0, x
[1050]
Booting Linux
[1050] cmdline: console=ttyHSL0,115200,n8 androidboot.hardware=hammerhead user_debug=31 maxcpus=2 msm_watchdog_v2.enable=1 selinuxt
[1090] Updating device tree: done
[1090] booting linux @ 0x8000, ramdisk @ 0x2900000 (714802), tags/device tree @ 0x2700000
[1100] Turn off MIPI_CMD_PANEL.
[1100] Continuous splash enabled, keeping panel alive.
[ 0.000000] Booting Linux on physical CPU 0
[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Linux version 3.4.0-hoxnet-gd745771 ([email protected]) (gcc version 4.6.x-google 20120106 (prerelease) (GCC) ) #7 SMP PREE5
[ 0.000000] CPU: ARMv7 Processor [512f06f0] revision 0 (ARMv7), cr=10c5387d
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
...
I see a fastboot option, -b, for specifying the kernel base address. Try with -b 0x8000.
Edit: maybe it's -b 0. looks like the address gets 0x8000 added by default.
Gene Poole said:
Yeah, my search showed that the N5 version needed no resistors, but I used some anyway just to shunt some voltage. It worked. I got a dump and it does appear that your offsets are not right. Here's my dump up to the kernel taking over:
Code:
welcome to hammerhead bootloader
[10] Power on reason 80
[10] DDR: hynix
[90] Loaded IMGDATA at 0x11000000
[90] Display Init: Start
[170] MDP GDSC already enabled
[170] bpp 24
[210] Config MIPI_CMD_PANEL.
[210] display panel: ORISE
[260] Found Appeneded Flattened Device tree
[260] DTB: platform id 126, board id 150, soc rev 20002, board rev 11
[300] Set panel ON cmds [35]
[420] Turn on MIPI_CMD_PANEL.
[470] Display Init: Done
[470] cable type from shared memory: 8
[470] reboot_mode restart reason = power_on
[520] vibe
[620] splash: boot
[660] splash: unlocked
[700] use_signed_kernel=0, is_unlocked=1, is_tampered=0.
[700] Loading boot image (9226240): start
[1030] Loading boot image (9226240): done
[1030] Found Appeneded Flattened Device tree
[1040] DTB: platform id 126, board id 150, soc rev 20002, board rev 11
[1040] get_display_kcal = 0, 0, 0, x
[1050]
Booting Linux
[1050] cmdline: console=ttyHSL0,115200,n8 androidboot.hardware=hammerhead user_debug=31 maxcpus=2 msm_watchdog_v2.enable=1 selinuxt
[1090] Updating device tree: done
[1090] booting linux @ 0x8000, ramdisk @ 0x2900000 (714802), tags/device tree @ 0x2700000
[1100] Turn off MIPI_CMD_PANEL.
[1100] Continuous splash enabled, keeping panel alive.
[ 0.000000] Booting Linux on physical CPU 0
[ 0.000000] Initializing cgroup subsys cpu
[ 0.000000] Linux version 3.4.0-hoxnet-gd745771 ([email protected]) (gcc version 4.6.x-google 20120106 (prerelease) (GCC) ) #7 SMP PREE5
[ 0.000000] CPU: ARMv7 Processor [512f06f0] revision 0 (ARMv7), cr=10c5387d
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, PIPT instruction cache
...
I see a fastboot option, -b, for specifying the kernel base address. Try with -b 0x8000.
Edit: maybe it's -b 0. looks like the address gets 0x8000 added by default.
Click to expand...
Click to collapse
Didn't work.
I also tried to build a boot.img, I flashed it (just to be sure) and I get all the same results.
My tags/device tree is different and I don't know how to change it. There is no available option in fastboot or mkbootimg
ttouch said:
Didn't work.
I also tried to build a boot.img, I flashed it (just to be sure) and I get all the same results.
My tags/device tree is different and I don't know how to change it. There is no available option in fastboot or mkbootimg
Click to expand...
Click to collapse
mkbootimg has an undocumented --tags_offset option. I don't know why it doesn't show up in the --help. I found it in the source for mkbootimg (in the AOSP tree) when I first ran the unpackbootimg and noticed that it dumped text files containing info about the offsets.
I have a shell script I use to make boot images. Here it is:
Code:
#!/bin/sh
RAMDISK=ramdisk
KERNEL=zImage
BASE=0x00000000
PAGESIZE=2048
RAMDISK_OFFSET=0x02900000
TAGS_OFFSET=0x02700000
CMDLINE="console=ttyHSL0,115200,n8 androidboot.hardware=hammerhead user_debug=31 maxcpus=2 msm_watchdog_v2.enable=1 selinux=1"
echo Making ramdisk image ...
(cd ${RAMDISK} ; mkbootfs . | gzip -9c > ../${RAMDISK}.cpio.gz )
echo Making boot image ...
mkbootimg --kernel ${KERNEL} --ramdisk ${RAMDISK}.cpio.gz --cmdline "${CMDLINE}" -o boot.img --base ${BASE} --pagesize ${PAGESIZE} --ramdisk_offset ${RAMDISK_OFFSET} --tags_offset ${TAGS_OFFSET}
"ramdisk" is a directory containing the unpacked AOSP stock ramdisk (plus my modifications). These offset values were obtained from unpackbootimg executable but I can't remember where I found the source. I'll send you a copy if you want it.
Gene Poole said:
mkbootimg has an undocumented --tags_offset option. I don't know why it doesn't show up in the --help. I found it in the source for mkbootimg (in the AOSP tree) when I first ran the unpackbootimg and noticed that it dumped text files containing info about the offsets.
I have a shell script I use to make boot images. Here it is:
Code:
#!/bin/sh
RAMDISK=ramdisk
KERNEL=zImage
BASE=0x00000000
PAGESIZE=2048
RAMDISK_OFFSET=0x02900000
TAGS_OFFSET=0x02700000
CMDLINE="console=ttyHSL0,115200,n8 androidboot.hardware=hammerhead user_debug=31 maxcpus=2 msm_watchdog_v2.enable=1 selinux=1"
echo Making ramdisk image ...
(cd ${RAMDISK} ; mkbootfs . | gzip -9c > ../${RAMDISK}.cpio.gz )
echo Making boot image ...
mkbootimg --kernel ${KERNEL} --ramdisk ${RAMDISK}.cpio.gz --cmdline "${CMDLINE}" -o boot.img --base ${BASE} --pagesize ${PAGESIZE} --ramdisk_offset ${RAMDISK_OFFSET} --tags_offset ${TAGS_OFFSET}
"ramdisk" is a directory containing the unpacked AOSP stock ramdisk (plus my modifications). These offset values were obtained from unpackbootimg executable but I can't remember where I found the source. I'll send you a copy if you want it.
Click to expand...
Click to collapse
My mkbootimg does not have the tags_offset.
When I try to build the boot image with tags_offset, mkbootimg shows me the help message, which means it got no tags_offset option.
EDIT: Nevermind, I cloned and compiled the latest mkbootimg from here. Trying to boot it now...
EDIT2: IT WORKS!!
Since the AOSP build has to create a boot image, it is included in the utilities. I always use the one native to the build tree. It is in:
[aosp_root]/out/host/linux-x86/bin/mkbootimg
and the source is in:
[aosp_root]/system/core/mkbootimg/

Try to port Ubuntu Touch for Moto G 2014

Hi , i'm trying to port Ubuntu Touch for Moto G 2014
can any one help me to resolve this error
make: *** No rule to make target '/home/walid/phablet/out/host/linux-x86/framework/signapk.jar', needed by '/home/walid/phablet/out/target/product/titan/obj/APPS/TimeService_intermediates/TimeService.apk'. Stop.
Edit :
I'm in the end step of booting
[ 7.433841,1] initrd: mounting /dev/disk/by-partlabel/boot as /root/android//boot
[ 7.454993,3] initrd: checking mount label recovery
[ 7.457615,0] initrd: mounting /dev/disk/by-partlabel/recovery as /root/android//recovery
[ 7.497315,3] initrd: checking mount label mmc_host*
[ 7.517051,2] initrd: checking mount label usb1
[ 7.554915,0] initrd: checking mount label zram0
[ 7.558913,1] initrd: mounting /dev/zram0 as /root/android/none
[ 7.563701,1] initrd: mounting /root/var/lib/lxc/android/system.img as /root/android/system
[ 7.631982,1] systemd-udevd[181]: Validate module index
At this point the system try to mount system.img
But after that the system crash
[ 7.998344,1] Crash partition in use!
[ 8.998513,1] wcnss crash shutdown 0
[ 8.998592,1] Rebooting in 5 seconds..
[ 13.998672,1] Going down for restart now
[ 13.999581,1] failed to disable wdog debug: -4
[ 13.999672,1] Calling SCM to disable SPMI PMIC arbiter
PREV
Linux version 3.4.42-g832c593-dirty ([email protected]) (gcc version 4.8 (GCC) ) #5 SMP PREEMPT Thu Feb 2 21:02:43 UTC 2017
full log her,
https://drive.google.com/file/d/0B-F-xs4jYP12dWdsWGFXYlpIeEU/view?usp=sharing
Can any one help me please
Edit again:
Ubuntu Touch now work in my phone , yes work , but no RIL, no Camera and no Wifi.
I will start fix this bugs as soon as possible
https://drive.google.com/file/d/0B-F-xs4jYP12ellZQ25FR05SWVk/view?usp=sharing
walidham said:
Hi , i'm trying to port Ubuntu Touch for Moto G 2014
can any one help me to resolve this error
make: *** No rule to make target '/home/walid/phablet/out/host/linux-x86/framework/signapk.jar', needed by '/home/walid/phablet/out/target/product/titan/obj/APPS/TimeService_intermediates/TimeService.apk'. Stop.
Click to expand...
Click to collapse
ask to dev by PM nobody responde here
marianoasis said:
ask to dev by PM nobody responde here
Click to expand...
Click to collapse
thanks, i resolved the error by adding signapk.jar in out/host/linux-x86/framework.
The problem now, in deodexed apk file(TimeService.apk...) , i will try disabled it in build.
walidham said:
thanks, i resolved the error by adding signapk.jar in out/host/linux-x86/framework.
The problem now, in deodexed apk file(TimeService.apk...) , i will try disabled it in build.
Click to expand...
Click to collapse
good luck with that. and happy new year dude!
marianoasis said:
good luck with that. and happy new year dude!
Click to expand...
Click to collapse
Thanks,
I have compiled and generated boot.img, system.img and recovery.img
But after installation, phone can't boot.
Now come the real work, i will fix boot first (i must see ubuntu touch start).
Happy new year
marianoasis said:
good luck with that. and happy new year dude!
Click to expand...
Click to collapse
Hi
I compiled Source code based on ubport ub5.1 using CM12.1 device tree
recovery.img work fine, i can boot in recovery mod (Ubports Recovery)
But boot.img is big i got this error
error: /home/walidham/ub5/out/target/product/titan/boot.img too large (10729472 > [10771200 - 270336])
Can any one help me how i can reduce boot.img size ?
walidham said:
Hi
I compiled Source code based on ubport ub5.1 using CM12.1 device tree
recovery.img work fine, i can boot in recovery mod (Ubports Recovery)
But boot.img is big i got this error
error: /home/walidham/ub5/out/target/product/titan/boot.img too large (10729472 > [10771200 - 270336])
Can any one help me how i can reduce boot.img size ?
Click to expand...
Click to collapse
Did you resolved the error(making boot.IMG smaller).... After compiling what did you get zimage or boot.img directly.....????
radelpha said:
After compiling what did you get zimage or boot.img directly.....????
Click to expand...
Click to collapse
when i change max size in BoardConfig.mk, after compilation i have 3 files : system.img, recovery.img and boot.img and others files like ramdisk_android.img, ramdisk_ubuntu.img, dt.img....
But still can't flash boot.img (failled due to the size is big).
I'm now trying to delete unneeded drivers and files in device tree and hope will work
walidham said:
when i change max size in BoardConfig.mk, after compilation i have 3 files : system.img, recovery.img and boot.img and others files like ramdisk_android.img, ramdisk_ubuntu.img, dt.img....
But still can't flash boot.img (failled due to the size is big).
I'm now trying to delete unneeded drivers and files in device tree and hope will work
Click to expand...
Click to collapse
Hmmm... Give it a try... Try unpacking the boot.IMG(Ubuntu) and unpack stock titans boot.IMG then replace its zimage(stock) with ubuntu's zimage then repack it.... Hope this works.....
radelpha said:
Hmmm... Give it a try... Try unpacking the boot.IMG(Ubuntu) and unpack stock titans boot.IMG then replace its zimage(stock) with ubuntu's zimage then repack it.... Hope this works.....
Click to expand...
Click to collapse
When i just unpack and repack the boot.img generated, the size is reduced (10.8mb to 9.5mb), i don't know why?, i got 5 files :
boot.img-base,
boot.img-cmdline,
boot.img-pagessize,
boot.img-ramdisk.gz and
boot.img-zimage
I will try your idea
walidham said:
When i just unpack and repack the boot.img generated, the size is reduced (10.8mb to 9.5mb), i don't know why?, i got 5 files :
boot.img-base,
boot.img-cmdline,
boot.img-pagessize,
boot.img-ramdisk.gz and
boot.img-zimage
I will try your idea
Click to expand...
Click to collapse
Yes.... Flash this boot.IMG with only fastboot or else it won't work.....
Now i have the three files : recovery.img, boot.img and systme.img based on cm-12.1
recovery work , but after flashing boot and system , phone stop in moto logo,
Her some logs :
<3>[ 2.643604,2] init: failed to open '/sys/class/graphics/fb1/msm_fb_type'
<3>[ 2.643745,2] init: failed to open '/sys/class/graphics/fb2/msm_fb_type'
<3>[ 2.644593,2] init: Unable to open persistent property directory /data/property errno: 2
<6>[ 2.763154,0] cpr_scale: Down: cpr status = 0x000025dd (error_steps=7)
<3>[ 0.947143,0] mdss_mdp_parse_dt_prop_len: Error from prop qcom,mdss-ad-off : spec error in device tree
<4>[ 1.077626,1] mmi_factory: probe of factory_support.71 failed with error -16
Can any one help me
I'm in the end step of booting
[ 7.433841,1] initrd: mounting /dev/disk/by-partlabel/boot as /root/android//boot
[ 7.454993,3] initrd: checking mount label recovery
[ 7.457615,0] initrd: mounting /dev/disk/by-partlabel/recovery as /root/android//recovery
[ 7.497315,3] initrd: checking mount label mmc_host*
[ 7.517051,2] initrd: checking mount label usb1
[ 7.554915,0] initrd: checking mount label zram0
[ 7.558913,1] initrd: mounting /dev/zram0 as /root/android/none
[ 7.563701,1] initrd: mounting /root/var/lib/lxc/android/system.img as /root/android/system
[ 7.631982,1] systemd-udevd[181]: Validate module index
At this point the system try to mount system.img
But after that the system crash
[ 7.998344,1] Crash partition in use!
[ 8.998513,1] wcnss crash shutdown 0
[ 8.998592,1] Rebooting in 5 seconds..
[ 13.998672,1] Going down for restart now
[ 13.999581,1] failed to disable wdog debug: -4
[ 13.999672,1] Calling SCM to disable SPMI PMIC arbiter
PREV
Linux version 3.4.42-g832c593-dirty ([email protected]) (gcc version 4.8 (GCC) ) #5 SMP PREEMPT Thu Feb 2 21:02:43 UTC 2017
full log her,
https://drive.google.com/file/d/0B-F...ew?usp=sharing
Stuck in boot animation
https://drive.google.com/file/d/0B-F-xs4jYP12dWFlSUVqTmV3RDQ/view?usp=sharing
Ubuntu Touch now work in my phone , yes work , but no RIL, no Camera and no Wifi.
I will start fix this bugs as soon as possible
@walidham i try to port using cm 13.1 what you defconfig ? thanks, and good work, waiting for fix ...
horuxan said:
@walidham i try to port using cm 13.1 what you defconfig ? thanks, and good work, waiting for fix ...
Click to expand...
Click to collapse
Sorry, you want port Ubuntu Touch using cm-13.0 ?
If yes, you must change titan_defconfig using this script
https://github.com/janimo/phablet-porting-scripts
But you must disable some flags like CONFIG_DEBUG_RODATA
Congo for your first boot... and please contact @h2o64 as he ported ubuntu touch to moto g 2013.... Hope he will help you
walidham said:
Sorry, you want port Ubuntu Touch using cm-13.0 ?
If yes, you must change titan_defconfig using this script
https://github.com/janimo/phablet-porting-scripts
But you must disable some flags like CONFIG_DEBUG_RODATA
Click to expand...
Click to collapse
thanks @walidham )))) :fingers-crossed:
---------- Post added at 05:33 PM ---------- Previous post was at 05:32 PM ----------
walidham said:
Sorry, you want port Ubuntu Touch using cm-13.0 ?
If yes, you must change titan_defconfig using this script
https://github.com/janimo/phablet-porting-scripts
But you must disable some flags like CONFIG_DEBUG_RODATA
Click to expand...
Click to collapse
thanks @walidham )))) :fingers-crossed:

Twrp (DEV-ONLY) compiling op6t (NEW-TEST) twrp-op6t-unified-test-0.6.img

I made this thread so all those trying to compile twrp for op6t can come together.
We can share ideas. What we have and have not got to work. What will work and what won't work.
Basically a thread where all information regarding twrp can be found in one location.
###########
#Please pm me #
##########
If using open source built roms and you have issues with twrp we may need to modify source in the rom or our twrp source.
Please report to rom maker as well.
Things to include.
What source 9.0 or 8.1
Compiling errors.
Post #2
Is where the download links are kept and updated.
Post #3 is where the other variations of twrp for source built roms or ports will be available to download if needed.
New test. twrp-op6t-test-0.3.img TEST ONLY!
@Dameon87 & myself have been working on this recovery for a while. We think it will get better. There are still bugs and issues with twrp. We would like your feedback.
Thanks
I am not responsible for anything that can happen to your device.
Rebuilt and fully working mke2fs
Decryption works
Storage works.
Please test and let us know what works and what doesn't.
twrp-op6t-test-0.2.img
https://www.androidfilehost.com/?fid=11410963190603862182
Updated twrp
Added more functionality ability to flash all zips and Ota's
Backup and restore all partitions including data.
Twrp-op6t-test-0.3.img
https://www.androidfilehost.com/?fid=11410963190603871199
New test twrp-unified-0.4.img
Everything working as usual
Cleaned up source and added @mauronofrio notch theme
Twrp-0.4.img
https://www.androidfilehost.com/?fid=11410963190603875438
Twrp installer thanks to @mauronofrio
https://www.androidfilehost.com/?fid=11410963190603876589
Updated twrp to decrypt 9.0.10
Twrp-0.5.img
https://www.androidfilehost.com/?fid=11410963190603879261
Twrp installer
https://www.androidfilehost.com/?fid=11410963190603879262
New test
Fixed screenshot color when taking screen shots in recovery.
Fixed touch vibration.
Please test and report back.
Twrp-0.6.img
https://www.androidfilehost.com/?fid...63190603880512
Twrp installer
https://www.androidfilehost.com/?fid...63190603880513
Device source
https://github.com/TWINNFAMOUS/android_device_oneplus_fajita
Bootable recovery source
https://github.com/OP6T-TWRP/android_bootable_recovery
Hope you all enjoy
This is where I will keep other twrp variations if needed for all source built roms and ports for our device. When available these will only be meant for testing. Thanks
twinnfamous said:
I made this thread so all those trying to compile twrp for op6t can come together.
We can share ideas. What we have and have not got to work. What will work and what won't work.
Basically a thread where all information regarding twrp can be found in one location.
Things to include.
What source 9.0 or 8.1
Compiling errors.
Click to expand...
Click to collapse
You're from the HTC u11 life! You made that phone awesome while I had it. Good to see you here!
I'm trying to build with 8.1 source and I get errors so build doesn't finish.
Is there anyone that's building successfully with 8.1?
Me, can you explain what are you doing exactly? Which source are you using?
mauronofrio said:
Me, can you explain what are you doing exactly? Which source are you using?
Click to expand...
Click to collapse
I'm trying with full omni source on 8.1. I've used the device source from both op6 & op6t without modifying just to see if it would be and it fails. I'll post output error soon as I can.
I don't have issues building with 9.0 source after I modify device source but it won't boot to twrp just stock recovery like it's not selecting the rite slot
twinnfamous said:
I'm trying to build with 8.1 source and I get errors so build doesn't finish.
Is there anyone that's building successfully with 8.1?
Click to expand...
Click to collapse
Make sure if you're using a newer version of Ubuntu with GCC 7+ you do: export LC_ALL=C
That should get you past the initial build errors.
Dameon87 said:
Make sure if you're using a newer version of Ubuntu with GCC 7+ you do: export LC_ALL=C
That should get you past the initial build errors.
Click to expand...
Click to collapse
Thanks for the info. I upgraded to linuxmint19 Recently. Guess I didn't pay attention to the changelog.
You also need to change two lines in the build/tools/buildinfo.sh :
echo "ro.build.version.release=$PLATFORM_VERSION"
echo "ro.build.version.security_patch=$PLATFORM_SECURITY_PATCH"
to:
echo "ro.build.version.release_orig=$PLATFORM_VERSION"
echo "ro.build.version.security_patch_orig=$PLATFORM_SECURITY_PATCH"
Dameon87 said:
You also need to change two lines in the build/tools/buildinfo.sh :
echo "ro.build.version.release=$PLATFORM_VERSION"
echo "ro.build.version.security_patch=$PLATFORM_SECURITY_PATCH"
to:
echo "ro.build.version.release_orig=$PLATFORM_VERSION"
echo "ro.build.version.security_patch_orig=$PLATFORM_SECURITY_PATCH"
Click to expand...
Click to collapse
And you need to increase the PLATFORM_VERSION to 16.1.0 ( in the new pixel 3 TWRPs is used 16 ) in build/core/version_defaults.mk to override Google's anti-rollback features
Dameon87 said:
You also need to change two lines in the build/tools/buildinfo.sh :
echo "ro.build.version.release=$PLATFORM_VERSION"
echo "ro.build.version.security_patch=$PLATFORM_SECURITY_PATCH"
to:
echo "ro.build.version.release_orig=$PLATFORM_VERSION"
echo "ro.build.version.security_patch_orig=$PLATFORM_SECURITY_PATCH"
Click to expand...
Click to collapse
mauronofrio said:
And you need to increase the PLATFORM_VERSION to 16.1.0 ( in the new pixel 3 TWRPs is used 16 ) in build/core/version_defaults.mk to override Google's anti-rollback features
Click to expand...
Click to collapse
The only issue I found was my lack of awareness. Ive been fighting with the 8.1 source all because the newer os I installed. I'm testing things out.
One thing I know is if the security patch level and date doesn't match what's in the phone then decryption won't work.
So I'm starting there.
I pulled this log from the phone it's only a part of it.
I've been trying everything and this is where it fails at in recovery.
e4crypt_initialize_global_de fail
So I started looking at any logs I can find in the phone and found this. Thought it might be helpful.
All the de folder locations are in the log
Also we use keymaster 4 that shows in The log as well.
I'm still using 8.1 source with 9.0 bootable recovery.
I'm thinking of focusing on trying to get get it to work with 9.0 source.
Log.
Mount system_root for mountting system
[ 1.120382] e4crypt_initialize_global_de
[ 1.120509] Keyring created with id 744456481 in process 530
[ 1.126746] I:List of Keymaster HALs found:
[ 1.126902] I:Keymaster HAL #1: Keymaster HAL: 4 from QTI SecurityLevel: TRUSTED_ENVIRONMENT HAL: [email protected]::IKeymasterDevice/default
[ 1.141729] Using Keymaster HAL: 4 from QTI for encryption. Security level:TRUSTED_ENVIRONMENT , HAL: [email protected]::IKeymasterDevice / defaulte4crypt_init_user0
[ 1.147584] Skipping non-de-key .
[ 1.147590] Skipping non-de-key ..
[ 1.152120] I:List of Keymaster HALs found:
[ 1.152266] I:Keymaster HAL #1: Keymaster HAL: 4 from QTI SecurityLevel: TRUSTED_ENVIRONMENT HAL: [email protected]::IKeymasterDevice/default
[ 1.160865] Using Keymaster HAL: 4 from QTI for encryption. Security level:TRUSTED_ENVIRONMENT , HAL: [email protected]::IKeymasterDevice / defaultInstalled de key for user 0
[ 1.160871] e4crypt_prepare_user_storage
[ 1.166977] ensure policy /data/system_de/0
[ 1.167599] I:Found policy 8372743e0b3d7924 at /data/system_de/0 which matches expected value
[ 1.167608] ensure policy /data/misc_de/0
[ 1.168197] I:Found policy 8372743e0b3d7924 at /data/misc_de/0 which matches expected value
[ 1.168206] ensure policy /data/user_de/0
[ 1.169338] I:Found policy 8372743e0b3d7924 at /data/user_de/0 which matches expected value
[ 1.358232] I:FBE enable...
[ 1.358334] Unable to locate gatekeeper password file '/data/system/gatekeeper.pattern.key'
[ 1.358412] (4294937945 ticks)(pid:530)[bootable/recovery/oem/src/main/oem.cpp]tree_init:90:efault password, decrept...
[ 1.358454] Unable to locate gatekeeper password file '/data/system/gatekeeper.pattern.key'
[ 1.358516] Skipping non-key .
[ 1.358549] Skipping non-key ..
[ 1.364930] I:List of Keymaster HALs found:
[ 1.365014] I:Keymaster HAL #1: Keymaster HAL: 4 from QTI SecurityLevel: TRUSTED_ENVIRONMENT HAL: [email protected]::IKeymasterDevice/default
[ 1.373672] Using Keymaster HAL: 4 from QTI for encryption. Security level:TRUSTED_ENVIRONMENT , HAL: [email protected]::IKeymasterDevice / defaultSuccessfully retrieved key
[ 1.373733] Installed ce key for user 0
[ 1.373765] e4crypt_prepare_user_storage
[ 1.377707] ensure policy /data/system_ce/0
[ 1.378426] I:Found policy d0acf3009500dfb4 at /data/system_ce/0 which matches expected value
[ 1.378462] ensure policy /data/misc_ce/0
[ 1.379037] I:Found policy d0acf3009500dfb4 at /data/misc_ce/0 which matches expected value
[ 1.379069] ensure policy /data/data
[ 1.380547] I:Found policy d0acf3009500dfb4 at /data/data which matches expected value
[ 1.380597] Decrypted Successfully!
twinnfamous said:
I pulled this log from the phone it's only a part of it.
I've been trying everything and this is where it fails at in recovery.
e4crypt_initialize_global_de fail
So I started looking at any logs I can find in the phone and found this. Thought it might be helpful.
All the de folder locations are in the log
Also we use keymaster 4 that shows in The log as well.
I'm still using 8.1 source with 9.0 bootable recovery.
I'm thinking of focusing on trying to get get it to work with 9.0 source.
Log.
Mount system_root for mountting system
[ 1.120382] e4crypt_initialize_global_de
[ 1.120509] Keyring created with id 744456481 in process 530
[ 1.126746] I:List of Keymaster HALs found:
[ 1.126902] I:Keymaster HAL #1: Keymaster HAL: 4 from QTI SecurityLevel: TRUSTED_ENVIRONMENT HAL: [email protected]::IKeymasterDevice/default
[ 1.141729] Using Keymaster HAL: 4 from QTI for encryption. Security level:TRUSTED_ENVIRONMENT , HAL: [email protected]::IKeymasterDevice / defaulte4crypt_init_user0
[ 1.147584] Skipping non-de-key .
[ 1.147590] Skipping non-de-key ..
[ 1.152120] I:List of Keymaster HALs found:
[ 1.152266] I:Keymaster HAL #1: Keymaster HAL: 4 from QTI SecurityLevel: TRUSTED_ENVIRONMENT HAL: [email protected]::IKeymasterDevice/default
[ 1.160865] Using Keymaster HAL: 4 from QTI for encryption. Security level:TRUSTED_ENVIRONMENT , HAL: [email protected]::IKeymasterDevice / defaultInstalled de key for user 0
[ 1.160871] e4crypt_prepare_user_storage
[ 1.166977] ensure policy /data/system_de/0
[ 1.167599] I:Found policy 8372743e0b3d7924 at /data/system_de/0 which matches expected value
[ 1.167608] ensure policy /data/misc_de/0
[ 1.168197] I:Found policy 8372743e0b3d7924 at /data/misc_de/0 which matches expected value
[ 1.168206] ensure policy /data/user_de/0
[ 1.169338] I:Found policy 8372743e0b3d7924 at /data/user_de/0 which matches expected value
[ 1.358232] I:FBE enable...
[ 1.358334] Unable to locate gatekeeper password file '/data/system/gatekeeper.pattern.key'
[ 1.358412] (4294937945 ticks)(pid:530)[bootable/recovery/oem/src/main/oem.cpp]tree_init:90:efault password, decrept...
[ 1.358454] Unable to locate gatekeeper password file '/data/system/gatekeeper.pattern.key'
[ 1.358516] Skipping non-key .
[ 1.358549] Skipping non-key ..
[ 1.364930] I:List of Keymaster HALs found:
[ 1.365014] I:Keymaster HAL #1: Keymaster HAL: 4 from QTI SecurityLevel: TRUSTED_ENVIRONMENT HAL: [email protected]::IKeymasterDevice/default
[ 1.373672] Using Keymaster HAL: 4 from QTI for encryption. Security level:TRUSTED_ENVIRONMENT , HAL: [email protected]::IKeymasterDevice / defaultSuccessfully retrieved key
[ 1.373733] Installed ce key for user 0
[ 1.373765] e4crypt_prepare_user_storage
[ 1.377707] ensure policy /data/system_ce/0
[ 1.378426] I:Found policy d0acf3009500dfb4 at /data/system_ce/0 which matches expected value
[ 1.378462] ensure policy /data/misc_ce/0
[ 1.379037] I:Found policy d0acf3009500dfb4 at /data/misc_ce/0 which matches expected value
[ 1.379069] ensure policy /data/data
[ 1.380547] I:Found policy d0acf3009500dfb4 at /data/data which matches expected value
[ 1.380597] Decrypted Successfully!
Click to expand...
Click to collapse
Was this taken from the default/stock recovery or just a standard boot? I've been using the twrp-8.1 branch (Which uses android_bootable_recovery 9.0 branch by default now). I've tried a multitude of things, but I simply just get the e4crypt_initialize_global_de fail error as well. I think the way things are done for the Pixel 3/XL are the way to proceed, but aside the device tree we don't have much else to go on.
Dameon87 said:
Was this taken from the default/stock recovery or just a standard boot? I've been using the twrp-8.1 branch (Which uses android_bootable_recovery 9.0 branch by default now). I've tried a multitude of things, but I simply just get the e4crypt_initialize_global_de fail error as well. I think the way things are done for the Pixel 3/XL are the way to proceed, but aside the device tree we don't have much else to go on.
Click to expand...
Click to collapse
Maybe Fstab files need modifying
The recovery.fstab I pulled out of the boot.Img has a data partition labeled f2fs
And a Data partition labeled ext4
twinnfamous said:
Maybe Fstab files need modifying
The recovery.fstab I pulled out of the boot.Img has a data partition labeled f2fs
And a Data partition labeled ext4
Click to expand...
Click to collapse
Already tried that but I didn't really get anything different. There's a few issues that are happening I think.
Dmesg repeats this over and over and over:
<3>[19700123_15:34:23.729788]@4 FG: fg_psy_get_property: unsupported property 27
<14>[19700123_15:34:26.049860]@4 init: starting service 'boot-1-0'...
<11>[19700123_15:34:26.050060]@4 init: property_set("ro.boottime.boot-1-0", "798060609590") failed: property already set
<11>[19700123_15:34:26.050448]@0 init: cannot execve('/sbin/[email protected]'): No such file or directory
<14>[19700123_15:34:26.051342]@4 init: Sending signal 9 to service 'boot-1-0' (pid 762) process group...
<14>[19700123_15:34:26.051372]@4 init: Successfully killed process cgroup uid 0 pid 762 in 0ms
Then just getting this according to the recovery.log:
I:File Based Encryption is present
e4crypt_initialize_global_de returned fail
e4crypt_initialize_global_de returned fail
e4crypt_initialize_global_de returned fail
Dameon87 said:
Already tried that but I didn't really get anything different. There's a few issues that are happening I think.
Dmesg repeats this over and over and over:
<3>[19700123_15:34:23.729788]@4 FG: fg_psy_get_property: unsupported property 27
<14>[19700123_15:34:26.049860]@4 init: starting service 'boot-1-0'...
<11>[19700123_15:34:26.050060]@4 init: property_set("ro.boottime.boot-1-0", "798060609590") failed: property already set
<11>[19700123_15:34:26.050448]@0 init: cannot execve('/sbin/[email protected]'): No such file or directory
<14>[19700123_15:34:26.051342]@4 init: Sending signal 9 to service 'boot-1-0' (pid 762) process group...
<14>[19700123_15:34:26.051372]@4 init: Successfully killed process cgroup uid 0 pid 762 in 0ms
Then just getting this according to the recovery.log:
I:File Based Encryption is present
e4crypt_initialize_global_de returned fail
e4crypt_initialize_global_de returned fail
e4crypt_initialize_global_de returned fail
Click to expand...
Click to collapse
This is probably why it won't even boot twrp built with 9.0
twinnfamous said:
This is probably why it won't even boot twrp built with 9.0
Click to expand...
Click to collapse
Are you doing a minimal build env, or pulling in the entire Omni tree? There is only a twrp-8.1 branch for the minimal manifest, but that does pull in android_bootable_recovery 9.0 branch. I can get both to compile and boot fine.
Dameon87 said:
Are you doing a minimal build env, or pulling in the entire Omni tree? There is only a twrp-8.1 branch for the minimal manifest, but that does pull in android_bootable_recovery 9.0 branch. I can get both to compile and boot fine.
Click to expand...
Click to collapse
Full sources on both 8.1 and 9.0
twinnfamous said:
Full sources on both 8.1 and 9.0
Click to expand...
Click to collapse
Alright I'm doing a full sync of the omni repo and will give that a try next. I had been just using the minimal manifest.

Categories

Resources