Building Lineage OS 14.1 for Grouper - clang error - Nexus 7 Q&A, Help & Troubleshooting

Hi everyone, I have decided to build LOS 14.1. I know builds already exist, but I thought I would like to do it myself to enable me to update to the latest sources easily.
I have taken @AndDiSa's kernel and device tree for AOSP-7.1.0, and modified them to be compatible (I believe anyway) with LOS sources.
However, when I build, I get a significant way through and then I get the error "clang++: error: unknown argument: "-mapcs" " (I have attached a screenshot of the actual terminal output - There was a lot of text I didn't understand above it)
I have searched and searched, but I cannot find any reference to this argument.
Any help would be much appreciated
Edit: By the way, if you want to see the sources, they are the grouper kernel and device trees on my github (https://github.com/thepiguy0)

@ThePiGuy probably you would like to have a look at my change request. This should help to solve the compile error

AndDiSa said:
@ThePiGuy probably you would like to have a look at my change request. This should help to solve the compile error
Click to expand...
Click to collapse
Thanks for the quick reply I have applied the patch now. I'll update you on the outcome

@AndDiSa following on from that, it does appear to have solved the compilation issue (it has now got further than it did last time). How come your fix hasn't been merged (I noticed that it was submitted last year)?

@ThePiGuy nobody felt responible to review and to merge the fix. I have had submitted two other changes. Not sure whether they are still needed to compile, ...
I have the impression the Nexus 7 is almost abandoned on LineageOS, but I might be wrong.

AndDiSa said:
@ThePiGuy nobody felt responible to review and to merge the fix. I have had submitted two other changes. Not sure whether they are still needed to compile, ...
I have the impression the Nexus 7 is almost abandoned on LineageOS, but I might be wrong.
Click to expand...
Click to collapse
It's a real shame, as LOS is generally one of the best ways to revive a device, and the nexus 7 2012 was immensely popular.
As for compiling, I have hit another error. It states that there is an unknown type name "aligned_u64" in the file if_packet.h which is located in the kernel, under include/linux/.
I have found the line, and it is under the hdr_v1 structure. How should I fix this? I have noticed that LOS default repos and your LOS branch have a different and much shorter version of this file

@ThePiGuy replace by "__aligned_u64" and it should compile as was already posted by @Charles IV

Hope the change works for you.
Most official Lineage development seems halted for grouper, although hazzer does seem to be doing a bit of meddling.
I also just bought a Nexus 7 for 5 LOSCoins, so maybe they're doing something with it

Charles IV said:
Hope the change works for you.
Most official Lineage development seems halted for grouper, although hazzer does seem to be doing a bit of meddling.
I also just bought a Nexus 7 for 5 LOSCoins, so maybe they're doing something with it
Click to expand...
Click to collapse
Your fix worked beautifully - I got to the packaging of the OS at the end (after modifying a few SEPolicies), and then something happened - it was so close
Edit: @AndDiSa any ideas?

@ThePiGuy looks as if you are trying to build the userimage formated as f2fs file system. I am not sure whether this is supported as I never changed there anything and, hostestly speaking, which is not of much use as you can always format the /data partition in recovery. If you have boot.img and system.img everything should be fine and you can flash them using fastboot.

AndDiSa said:
@ThePiGuy looks as if you are trying to build the userimage formated as f2fs file system. I am not sure whether this is supported as I never changed there anything and, hostestly speaking, which is not of much use as you can always format the /data partition in recovery. If you have boot.img and system.img everything should be fine and you can flash them using fastboot.
Click to expand...
Click to collapse
Ok I will do. I didn't change anything relating to the formatting of the userimage (not knowingly anyway), so I'm surprised that is has defaulted to that. Where would I change this to get it back to ext4?

@AndDiSa unfortunately once I flashed the System.img and boot.img, I got into a bootloop where it would show the google logo and unlocked padlock, flash and start again. Could it be due to outdated proprietary blobs? Would I be better off using unlegacy android blobs (they seem to be updated fairly frequently for such an old device)

@ThePiGuy I doubt that the blobs are the reason why ... If it remains on the Google start page it's an indication that there is either a kernel crash or that there are permission issues, i.e. your selinux configuration has some problems. Did you try to boot into TWRP directly and to have a look at /proc/last_kmsg ?

AndDiSa said:
@ThePiGuy I doubt that the blobs are the reason why ... If it remains on the Google start page it's an indication that there is either a kernel crash or that there are permission issues, i.e. your selinux configuration has some problems. Did you try to boot into TWRP directly and to have a look at /proc/last_kmsg ?
Click to expand...
Click to collapse
No I didn't (I'm very new to this - the only other thing I have built is for my G4, which just seemed to work without any issues)
Having had a look now, it looks like it is a kernel panic (I have attached the last_mksg with a .txt extension to get XDA to allow it)

@ThePiGuy which kernel sources do you use? I had similar issues years ago when I was trying to set up the Nougat-Kernel.
Can you please check whether you have the __BRILLO__ option set in system/core/init/Android.mk?
Code:
diff --git a/init/Android.mk b/init/Android.mk
index 67541b8..ff343e9 100644
--- a/init/Android.mk
+++ b/init/Android.mk
@@ -10,7 +10,7 @@ else
init_options += -DALLOW_LOCAL_PROP_OVERRIDE=0 -DALLOW_PERMISSIVE_SELINUX=0
endif
-init_options += -DLOG_UEVENTS=0
+init_options += -DLOG_UEVENTS=0 -D__BRILLO__
init_cflags += \
$(init_options) \

AndDiSa said:
@ThePiGuy which kernel sources do you use? I had similar issues years ago when I was trying to set up the Nougat-Kernel.
Can you please check whether you have the __BRILLO__ option set in system/core/init/Android.mk?
Code:
diff --git a/init/Android.mk b/init/Android.mk
index 67541b8..ff343e9 100644
--- a/init/Android.mk
+++ b/init/Android.mk
@@ -10,7 +10,7 @@ else
init_options += -DALLOW_LOCAL_PROP_OVERRIDE=0 -DALLOW_PERMISSIVE_SELINUX=0
endif
-init_options += -DLOG_UEVENTS=0
+init_options += -DLOG_UEVENTS=0 -D__BRILLO__
init_cflags += \
$(init_options) \
Click to expand...
Click to collapse
I have forked your kernel source (you can see my fork at https://github.com/thepiguy0/android_kernel_asus_grouper).
Unfortunately I can't see that file at all

@ThePiGuy that Android.mk is located in the system/core project in the init directory, not in the kernel.

AndDiSa said:
@ThePiGuy that Android.mk is located in the system/core project in the init directory, not in the kernel.
Click to expand...
Click to collapse
Ah yes I see it now. No I didn't have that option. I'll add it and see if it works

(Accidental duplicate post - see below)

@AndDiSa one thing that has just occurred to me - I have just noticed all the patches in your grouper manifest - will I need to apply all those patches if I use your sources?

Related

[DEV] ICS Kernel Sources

**DEV ONLY**
Acer released ICS kernel sources for A200. Like HC sources, it seems to support picasso board as well.
Tried to compil with config from leaked kernel. Had to fix a build issue, but all went fine.
ATM It doesn't boot, and dunno why. I tried to enable console to check what's wrong without success.
picasso and picasso_e config are really closed.
Maybe someone can do some magic with this =)
Kernel sources : http://global-download.acer.com/GDF...AB&Step3=A200&OS=a08&LC=fr&BC=Acer&SC=EMEA_13
ICS A500 Config : http://minus.com/memdYnyCy#3 - http://pastebin.com/CfErz5cz
vache said:
**DEV ONLY**
Acer released ICS kernel sources for A200. Like HC sources, it seems to support picasso board as well.
Tried to compil with config from leaked kernel. Had to fix a build issue, but all went fine.
ATM It doesn't boot, and dunno why. I tried to enable console to check what's wrong without success.
picasso and picasso_e config are really closed.
Maybe someone can do some magic with this =)
Kernel sources : http://global-download.acer.com/GDF...AB&Step3=A200&OS=a08&LC=fr&BC=Acer&SC=EMEA_13
ICS A500 Config : http://minus.com/memdYnyCy#3 - http://pastebin.com/CfErz5cz
Click to expand...
Click to collapse
I had the same idea yesterday. There were some drivers missing missing im moving from HC and atmel touch yas529 compass and some camera drivers need work to compile. Also the memory carveout will need to be changed to boot on orig bootloader.
vache said:
**DEV ONLY**
Acer released ICS kernel sources for A200. Like HC sources, it seems to support picasso board as well.
Tried to compil with config from leaked kernel. Had to fix a build issue, but all went fine.
ATM It doesn't boot, and dunno why. I tried to enable console to check what's wrong without success.
picasso and picasso_e config are really closed.
Maybe someone can do some magic with this =)
Kernel sources : http://global-download.acer.com/GDF...AB&Step3=A200&OS=a08&LC=fr&BC=Acer&SC=EMEA_13
ICS A500 Config : http://minus.com/memdYnyCy#3 - http://pastebin.com/CfErz5cz
Click to expand...
Click to collapse
if you dont mind me asking... how did you get past the build issue? im getting a mess of errors....
EDIT:
got it. nvm. (shows how much a few weeks of research and learning gets me )
Sorry, wrong place. Delete Post.
has anyone had any luck getting this to boot? i cant get anything out of it :/ no adb no nothing. ideas?
EDIT:
just an observation, the size of this kernel after its compiled is aprox. 3.3 mb, where as the kernel in the leaked copy is aprox. 3.4 mb. which reinforces my belief that something is missing here. which seeing as it is not our "official" source would make sense... going to keep researching.
okay, so i got it to compile, and i got it to sort of boot. it turns on, after the acer screen all it does is display garbage on the screen, nothing useful, just random pixels then reboots. still no adb. it also appears to begin the boot sequence as it looks like its reading my flashdrive the exact same way it does with a normal boot. im going to mess with the video driver libs, and use ones that are designed for this kernel and report back. if anyone thinks they can help let me know, or post here.
EDIT:
i think the garbage is normal with the old bootloader. i hope some of the stuff im posting is helpful lol
Grrr,,
Well on the unlocked bootloader the kernel sorta boots:
However I'm running into the following:
Code:
[ 1.131021] Unpacking initramfs...
[ 1.146564] Initramfs unpacking failed: uncompression error
This then followed by much more errors that Init can't be found/executed and an automatic reboot.
(FYI I have the stock ICS kernel in a recovery image that I used to read out the last_kmsg of my kernels attempt to boot)
This issue came up both with a patched a200 and a510 kernel (with the stock ICS config as a template).. so something is up.. did they change the location of the initrc image?
all versions of code I have say (for Tegra2):
Code:
zreladdr-$(CONFIG_ARCH_TEGRA_2x_SOC) := 0x00008000
params_phys-$(CONFIG_ARCH_TEGRA_2x_SOC) := 0x00000100
initrd_phys-$(CONFIG_ARCH_TEGRA_2x_SOC) := 0x00800000
from: arch/arm/mach-tegra/Makefile.boot
(I know my code may be missing some drivers and camera is not quite initializing correctly.. but nothing related to init.. and besides a camera init warning nothing went wrong up too that point. I expect Init to be read, particuarly since the bootloader ought to have loaded the ramdisk into ram .. we are just de-compressing the cpio archive.. The uncompression error seems like a generic message for something unexpected reading the gzip data.. thus I wonder if it was just loaded elsewhere)
Edit:
Still lost..
The ramdisk is being loaded.. and position not static but passed into the kernel by the bootloader:
parse_tag_initrd2: 0x05000000,0x161e0e (an added debug string)
The first few bytes of the file are correct and the length is right.. but the CRC32 dosn't check out.. so something is overwrittiing it... seems odd that far into ram.
being slightly curious, I looked at the URL and changed the Step3=A200 to Step3=A500, got a download, don't know if its the same though..
Step3=A500&OS=a08&LC=fr&BC=Acer&SC=EMEA_13
LC = looks like the language - maybe change this to eng.. maybe its possible to get the correct download by altering the URL..
http://global-download.acer.com/GDF...AB&Step3=A500&OS=a08&LC=fr&BC=Acer&SC=EMEA_13
kiwi_mat said:
being slightly curious, I looked at the URL and changed the Step3=A200 to Step3=A500, got a download, don't know if its the same though..
Step3=A500&OS=a08&LC=fr&BC=Acer&SC=EMEA_13
LC = looks like the language - maybe change this to eng.. maybe its possible to get the correct download by altering the URL..
http://global-download.acer.com/GDF...AB&Step3=A500&OS=a08&LC=fr&BC=Acer&SC=EMEA_13
Click to expand...
Click to collapse
it old kernel source 4.0.3 for A200 (dating 21.02.2012)
ready...
set...
GO
http://global-download.acer.com/GDFiles/Document/App.%20Guide/App.%20Guide_Acer_1.0_A_A.zip?acerid=634729317909661533&Step1=Tablet&Step2=ICONIA%20TAB&Step3=A500&OS=a08&LC=en&BC=Acer&SC=AAP_9
compiled the following from the supplied defconfigs for testing purposes, flash at your own risk:
picasso_defconfig-signed.zip
picasso_e_defconfig-signed.zip
vangogh_defconfig-signed.zip
waydownsouth said:
On your marks...
Get set...
GO
Click to expand...
Click to collapse
And after waiting 5h longer my local mirror at last had the file.
Github
I hate dealing with kernels w/o full git history.. since asking acer for their git tree probably won't achieve results:
I've integrated the code on top of a nvidia tegra sample git repository (to re-add git history) and uploaded the source to my github:
https://github.com/ezterry/AcerTabKernel
Tag: A500_ICS_4.0.3_OfficialDrop is identical to the code in the acer ZIP
(actually master also is at the time of this writing, but bits and pieces of my own hackery may be added to that)
Feel free to clone to your own projects (or use github as a download mirror)
Quick Test
I did a quick test, took the config.gz from ICS, and built the kernel, (then re-patched with my script for system r/w) just to make sure the kernel we had could be re-created, appears to have booted my A500 Public Recovery Image without incident.
Code:
[email protected]:/ # [email protected]:~$ adb shell
~ # uname -a
Linux localhost 2.6.39.4+ #1 SMP PREEMPT Sun May 20 02:06:41 EDT 2012 armv7l GNU/Linux
~ # cat /proc/version
Linux version 2.6.39.4+ ([email protected]) (gcc version 4.4.3 (GCC) ) #1 SMP PREEMPT Sun May 20 02:06:41 EDT 2012
also checked the picasso_defconfig with the config in the stock rom:
Code:
[email protected]:/usr-vm/android/aosp/acer-kernel/kernel$ diff .config arch/arm/configs/picasso_defconfig
4d3
< # Thu Mar 29 22:57:19 2012
1337d1335
< # CONFIG_TOUCHSCREEN_CYPRESS is not set
2826c2824
< CONFIG_ACER_SECURE_MOUNT=y
---
> # CONFIG_ACER_SECURE_MOUNT is not set
so only change is CONFIG_ACER_SECURE_MOUNT was added to the stock rom (meaning we don't need to configure it out (or rum the hack script I've been running) to allow system remount.
Building crash course
I'll keep this short since its 3:20AM and I know most reading this thread have built an android kernel before but here is the crash course: (remember this uses linux to build)
Have an android build tree or my Public Recovery tree on your computer
add the arm toolchain to your path
eg: export PATH=<path/to/android/tree/root>/prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin:$PATH
change directory into where you extracted the kernel code (or cloned it into)
run:
export ARCH=arm;export CROSS_COMPILE=arm-eabi-;export KERNEL_DIR=`pwd`
run 'make picasso_defconfig' to get acer's default .config (or fetch your own template)
if you want to re-configure parts of the kernel run 'make menuconfig'
to build run 'make -j5' (where 5 ought to be the number of cores in your computer +1)
This generates the zImage that is then placed in the boot.img with mkbootimg
to get modules prepared for install run 'make modules_install INSTALL_MOD_PATH=./build'
This will set up modules as if installed on your linux box in a ./build sub directory these are then manually installed into the rom
----
Ok now with this update its well past my bedtime.. I'll poke more when I am awake
waydownsouth said:
ready...
set...
GO
http://global-download.acer.com/GDF... TAB&Step3=A500&OS=a08&LC=en&BC=Acer&SC=AAP_9
compiled the following from the supplied defconfigs for testing purposes, flash at your own risk:
picasso_defconfig-signed.zip
picasso_e_defconfig-signed.zip
vangogh_defconfig-signed.zip
Click to expand...
Click to collapse
Looks like Acer figured you out. The file is no longer available at that address. I get a 404 error.
Sent from my A500 using XDA Premium HD app
BakaNeko59 said:
Looks like Acer figured you out. The file is no longer available at that address. I get a 404 error.
Sent from my A500 using XDA Premium HD app
Click to expand...
Click to collapse
Works just fine for me. Are you running an ad blocker?
amphi66 said:
Works just fine for me. Are you running an ad blocker?
Click to expand...
Click to collapse
Not all of the Acer download mirrors got the file at the same time.. so its possible some are not synced yet.
Sent from my Galaxy Nexus using Tapatalk 2
waydownsouth said:
ready...
set...
GO
http://global-download.acer.com/GDF... TAB&Step3=A500&OS=a08&LC=en&BC=Acer&SC=AAP_9
compiled the following from the supplied defconfigs for testing purposes, flash at your own risk:
picasso_defconfig-signed.zip
picasso_e_defconfig-signed.zip
vangogh_defconfig-signed.zip
Click to expand...
Click to collapse
Put it into a boot.img flashed it with the modules and running nice (no need to use the systemRW hack) , any OC posible for next release ? (a500)
Will do more testing ................
ezterry said:
Not all of the Acer download mirrors got the file at the same time.. so its possible some are not synced yet.
Sent from my Galaxy Nexus using Tapatalk 2
Click to expand...
Click to collapse
It already shows in here as well: http://support.acer.com/product/default.aspx?modelId=3851
Is it just me or when you use self compiled kernel cpufreq doesn't work well?
Skrilax_CZ said:
Is it just me or when you use self compiled kernel cpufreq doesn't work well?
Click to expand...
Click to collapse
Not here , I only used the zImage and put it together with the ramdisk I use for my tweaked kernel and it is very smooth with almost no browser glitches , in fact I didn't have any today.
I got the highest score with this one 2740 quadrant .
I also didn't use the modules , I used the stock one from Acer , I did notice a little performance drop using the modules that came with the kernel waydownsouth build so I switch to the stock ones from the Acer 1.031.00 release.
Skrilax_CZ said:
Is it just me or when you use self compiled kernel cpufreq doesn't work well?
Click to expand...
Click to collapse
No problem here..
and even now a test build with overclock:
http://forum.xda-developers.com/showpost.php?p=26432810&postcount=4
(richardtrip's patches merged cleanly once i found them..)
Still not sure what to do about the initrd issue some people are having with my recovery.. (any insight into the logic in these bootloaders about how it loads the ramdisk into ram?)
Do you happen to have a mirror or another address for the Acer source to download the single file? I still get a 404 error on three different systems and two different browsers (including my tab itself) when I try http://global-download.acer.com/GDFiles/Document/App. Guide/App. Guide_Acer_1.0_A_A.zip.
Thanks

Cant Build for find 5

Hello, I am new to the community and although I have flashed loads of roms to various devices this is the first I have tried to build from source.
As it says in the title I am trying to build for my Oppo find 5 which there is a nightly build for, I wanted to try and build from source though.
I have set up the build environment as described on the omni website.
I have followed a set of instructions but when I come to build using
Code:
brunch find5
i dont get a zip in the out folder. I do get the following notes though in the terminal after the build.
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: Some input files use unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
Click to expand...
Click to collapse
Those errors are meaningless. Post the full log as an attachment please.
Although I'd suggest reading through the errors first - the first skill anyone needs in Android development is the ability to look through a log and analyze what is what.
At the very least you might've forgotten envsetup. You probably forgot to pull blobs with extract-files (or finding them through some other source...) too - nearly everyone does.
Hello Entropy,
I have an issue too when building find5 KK. In fact no really building as i manage to get the homemade zip file, manage to flash it, it boots ok, everything is working except that my radio is not recognised so no IMEI and no mobile network, wifi is ok. Here is a link to my own build witch has exactly the same size in KB that the official nightly. Strange stuff is that if i flash the official nightly over my build then no issue, and the radio is recognised.
Blobs are coming from donkey github
I tried to flash from aokp 4.3 build, then also from Color OS, same result.
Flashed maxwen radios 4.1 and 4.2 over my build same issue
I'm building from virtual box ubuntu 12.04, JDK 1.6 update 45, on a Mac.
The only thing i see that may be wrong is that at the end of each build before the package is delivered i see no radio.img found, skipping install, but i've read that it was coming without radio.
Tried to add a line in the build.prop to disable selinux "ro.boot.selinux=disabled" i did not help.
I use maxwen TWRP patched recovery, but also tried with last cwm recovery and same result.
With the same build environment i manage to build I9300 omni kitkat without issue.
Any idea what could be wrong?
Many thanks in advance, and also thanks for the great job you all with Omni:good:
jejecule said:
Hello Entropy,
I have an issue too when building find5 KK. In fact no really building as i manage to get the homemade zip file, manage to flash it, it boots ok, everything is working except that my radio is not recognised so no IMEI and no mobile network, wifi is ok. Here is a link to my own build witch has exactly the same size in KB that the official nightly. Strange stuff is that if i flash the official nightly over my build then no issue, and the radio is recognised.
Blobs are coming from donkey github
I tried to flash from aokp 4.3 build, then also from Color OS, same result.
Flashed maxwen radios 4.1 and 4.2 over my build same issue
I'm building from virtual box ubuntu 12.04, JDK 1.6 update 45, on a Mac.
The only thing i see that may be wrong is that at the end of each build before the package is delivered i see no radio.img found, skipping install, but i've read that it was coming without radio.
Tried to add a line in the build.prop to disable selinux "ro.boot.selinux=disabled" i did not help.
I use maxwen TWRP patched recovery, but also tried with last cwm recovery and same result.
With the same build environment i manage to build I9300 omni kitkat without issue.
Any idea what could be wrong?
Many thanks in advance, and also thanks for the great job you all with Omni:good:
Click to expand...
Click to collapse
hm - that actually sounds strange
sounds like wrong blobs - are you are really using the ones
from donkeycojote
maxwen said:
hm - that actually sounds strange
sounds like wrong blobs - are you are really using the ones
from donkeycojote
Click to expand...
Click to collapse
yes i'm sure. i was first using the one from themuppets github, then Guillaume advised me to use the coyote ones. Size of the find5 vendor folder is 40,1MB, 132 files. Strangely i had this issues with my last 5 builds, but with the today one, problem disappeared and now my baseband is recognised and everything ok, though i still have this no radio.img message at the end of the build.
Really strange indeed i hate not to know what was the issue Anyway i will build again tomorrow and let you know, Chasmodo from Asylum team is also helping me a lot in understanding some stuffs as i'm a new and noob in building
One question about blobs: when i try to extract it from my device, it works when i run an 4.3 aokp build but then i get error in building. If i try to extract blobs from omni 4.4 (official nightly) i get some access denied on some blobs and then also some errors in the build. No issue with coyote ones though.
Many thanks for your time mate!
So guys, my problem with find5 modem seems to be fixed, no issue with today build neither. But.....now facing exactly the same issue with jftlexx(i9505)...
Build went OK, blobs from coyote, flash and boot OK....but no modem again, I may be do wrong stuff when flashing or missing something.
Before flashing I always do factory reset + wipe system, then flash build, gapps(pa ones mostly) + supersu.
Same repo, same vendor, I9300 OK but manually added local manifest as in your tuto.
Rebuilding atm
Thanks a lot
Sent from my Find 5 using xda app-developers app

Long boot fix for CyanogenMod

I think that i have found the cause of 5 minute boot time on CyanogenMod that is discussed in official CM thread in development forum. Unfortunately i can not post there, so i will post here in hope that someone notices and reposts into that thread.
The loop is caused by this line of code:
https ://github.com/CyanogenMod/android_system_core/blob/cm-12.1/init/devices.c#L1081
I guess that this code tries to wait for /system to be mounted. It checks if it's mounted by checking whether /system/etc/firmware exists. That directory simply does not exist in flounder's system image. I am not sure whether the condition is wrong, or the directory should actually exist or some firmware file the system is searching for is missing.
Doing this
Code:
touch /system/etc/firmware
fixes the long boot and ANR dialog on boot up. Also you can put this
Code:
#!/sbin/sh
. /tmp/backuptool.functions
if [ "$1" == "restore" -a ! -e "$S/etc/firmware" ]; then
touch "$S/etc/firmware"
fi
into /system/addon.d/50-long-boot-fix.sh and make it executable to make the fix persistent across system updates. Or, better, notify someone who can actually fix this.
Come on people, 76 views and no one with 10+ posts bothered to post a link into this thread? Nexus 9 is now removed from the list of devices to receive nightly builds because of this bug. I know that i can fill a bug report in CM bug tracker, but i think Nexus 9 is maintained by someone from outside of CM team, so it might not be the best place to notify the maintainer.
Someone, please post a link into that thread.
Exactly. This was actually mentioned in the official CM thread. Someone tried to submit a fix reverting this commit, but CM devs did not like it (see http ://review.cyanogenmod.org/#/c/106264/ ). I just looked through the diff and that if-goto-loop quickly caught my attention. And then i figured out that it may loop forever if that folder does not exist.
That cycle loops forever because it is not able to find a firmware file. I do not know whether it is ok or some file is actually missing. Creating an empty /system/etc/firmware file just makes it give up. It also logs which firmware file was not found when it gives up, but i did not find that line in both logcat and dmesg.
I think i will try to create a bug report in CM bug tracker today or tomorrow.
We could probably fix this through the device tree by adding that touch command to the init.
Well, as i have said, i have no idea what the real fix should be. I consider creating an empty /system/etc/firmware to be a temporary workaround. There might be some firmware files missing or maybe /system/etc/firmware should actually be e.g. a symlink to /vendor/firmware (this does not seem to make a lot of sense though). Does anyone know where to find that INFO() printed in this line:
https ://github.com/CyanogenMod/android_system_core/blob/cm-12.1/init/devices.c#L1089
I can not find it in dmesg or logcat.
Anyway, if you are going to fix it by just creating a file, then maybe better at least create an empty directory . Also i guess you can not really touch it in init, because /system is read only.
Should i report this to CM bug tracker?
awesome.
http://review.cyanogenmod.org/#/c/112675/
http://review.cyanogenmod.org/#/c/112678/
many thanks to @vovams
Great! Just installed 20151014 nightly and everything seems to be fine. Good job, guys!
Finally!!!! Few months later back to cm
WOW, THANKS TO THE GUY WHOM SUBMITTED THE BUG!!!!, fast boot time, last time 10min each reboot really annoying, im running fresh 2015-10-16 however the only thing i encountered which im fine is internal problem thing, although i have the the latest bootloader for nexus 9 (lmy48t)
HasnaCuz said:
WOW, THANKS TO THE GUY WHOM SUBMITTED THE BUG!!!!, fast boot time, last time 10min each reboot really annoying, im running fresh 2015-10-16 however the only thing i encountered which im fine is internal problem thing, although i have the the latest bootloader for nexus 9 (lmy48t)
Click to expand...
Click to collapse
Same here, no more long boot, but I always get the message internal problem also.
Enviado desde mi iPhone utilizando Tapatalk
HasnaCuz said:
WOW, THANKS TO THE GUY WHOM SUBMITTED THE BUG!!!!, fast boot time, last time 10min each reboot really annoying, im running fresh 2015-10-16 however the only thing i encountered which im fine is internal problem thing, although i have the the latest bootloader for nexus 9 (lmy48t)
Click to expand...
Click to collapse
You also need the latest vendor image. And there is a fix for it as well. I'll poke around and find you a link.
Sent from my Nexus 9

New June images

Google have done it again - two new images, MMB30J & MOB30M, with no apparent explanation of what difference there is, if any...
June security update is out, once again we have 2 images
mob30j and mob30m...
I flashed 30m, and I'm still looking for the patch descriptions, but the Radio and Bootloader images are the same as 30i.
Changes in Boot.img, Recovery.img, and System.img based on file size.
Will post more when I find more...
-Chris
2 different branches. if you notice the MOB file is the same for Nexus 6 , Nexus Player , Nexus 9 , Nexus 5 , and Nexus 7 2013 (MOB30M) universal img for the devices..
MMB30J is for the N6 only.
SynisterWolf said:
2 different branches. if you notice the MOB file is the same for Nexus 6 , Nexus Player , Nexus 9 , Nexus 5 , and Nexus 7 2013 (MOB30M) universal img for the devices..
MMB30J is for the N6 only.
Click to expand...
Click to collapse
I really liked this theory, till I saw that the Nexus 7 2013 also has a 30j and 30m. So we share similar hardware?? Google drives me crazy sometimes...
-Chris
Encryptable boot/kernel images:
MMB30J:
https://www.androidfilehost.com/?fid=24562946973631749
MOB30M
https://www.androidfilehost.com/?fid=24562946973631748
cdaly1970 said:
I really liked this theory, till I saw that the Nexus 7 2013 also has a 30j and 30m. So we share similar hardware?? Google drives me crazy sometimes...
-Chris
Click to expand...
Click to collapse
not the same hardware but core android OS. So they combined binarys into one big file and have the OS choose based on device name.
I really hope that this bug with NO deep sleep after charging is finally solved...
link
In case anyone is interested, the MOB30M OTA went in simply over MOB30I encrypted. All looks absolutely fine so far. TWRP & SuperSU installed and also working.
I still don't get why they insist on posting two unexplained images.
dahawthorne said:
I still don't get why they insist on posting two unexplained images.
Click to expand...
Click to collapse
Maybe..... to make sure we will talk/write about them?
It could be the new bootloader brick option in one of the updates while the other may not have it. Cant really tell with google making fixes to their release versions but not pushing the fixes to AOSP.
Wow, and still no say on the difference between the two? I flashed MOB30I on my device and I'm a T-Mobile user, it worked for me without any big issues, but I feel like the other build would work just as well, I really wonder what the change is. Apparently different radios in both, but would they make 2 completely separate images just because of the radio difference? Google does strange things sometimes.
Wasn't this dealing with two different modems since one wasn't approved by AT&T? I know I tried the new modem and it killed my battery life, or at least like it felt like it did. I went to the modem in the first image of the two they released. I haven't looked at these two new images yet.
cdaly1970 said:
mob30j and mob30m...
I flashed 30m, and I'm still looking for the patch descriptions, but the Radio and Bootloader images are the same as 30i.
Changes in Boot.img, Recovery.img, and System.img based on file size.
Will post more when I find more...
-Chris
Click to expand...
Click to collapse
My MOB30M doesn't include a radio, and the MD5 matches too. Oddly, the android-info.txt file says that 5.34 is required, so maybe it won't install unless it's already there.
So there's 2 which one are you supposed to flash ?
Is the radio/bootloader different or the same ? Anyone check yet
Once again this goes to show Google has no idea what they are doing. No big surprise there. And people wonder why many use IOS as their main device. Lol
MOB30I\6.0.1_r42 to MOB30M\6.0.1_r46 change log. Does not include any proprietary changes:
project build/
bbe9b53 MOB30M
b9d4958 "MOB30L"
18648c1 "MOB30K"
e240735 Update security patch string to 2016-06-01
f30ec8b "MOB30J"
project external/aac/
d99efb7 Fix aacDecoder_drcExtractAndMap()
project external/libvpx/
65c49d5 Fix ParseElementHeader to support 0 payload elements
project frameworks/av/
b57b396 SampleTable.cpp: Fixed a regression caused by a fix for bug 28076789.
45737cb Resolve merge conflict when cp'ing ag/931301 to mnc-mr1-release
2b6f22d h264dec: check for overflows when calculating allocation size.
918eeaa codecs: check OMX buffer size before use in (avc|hevc|mpeg2)dec
7cea5cb codecs: check OMX buffer size before use in (gsm|g711)dec
dd35467 AudioSource: initialize variables
ad40e57 Check mp3 output buffer size
d2f4719 codecs: check OMX buffer size before use in (h263|h264)dec
4e32001 DO NOT MERGE codecs: check OMX buffer size before use in (vorbis|opus)dec
db82969 Fix OMX_IndexParamConsumerUsageBits size check
0bb5ced Fix size check for OMX_IndexParamConsumerUsageBits
94d9e64 Fix initialization of AAC presentation struct
295c883 DO NOT MERGE Verify OMX buffer sizes prior to access
project frameworks/base/
9878bb9 Kill the real/isolated uid group, not the ApplicationInfo uid
613f63b Add new, hidden MotionEvent flag for partially obscured windows.
project frameworks/native/
03a53d1 Add new MotionEvent flag for partially obscured windows.
project hardware/qcom/media/
89913d7 DO NOT MERGE mm-video-v4l2: venc: add safety checks for freeing buffers
46e305b DO NOT MERGE mm-video-v4l2: vdec: add safety checks for freeing buffers
f22c2a0 DO NOT MERGE mm-video-v4l2: vdec: deprecate unused config OMX_IndexVendorVideoExtraData
560ccdb DO NOT MERGE mm-video-v4l2: vidc: validate omx param/config data
project packages/apps/Bluetooth/
a283d52 "DO NOT MERGE" Add write SMS protection
project packages/apps/PackageInstaller/
2068c79 DO NOT MERGE Take advantage of new MotionEvent flag to prevent tapjacking.
project packages/services/Telephony/
1e2e90f DO NOT MERGE Use E PhoneAccount for MT ECM Call
project system/bt/
158910b btif: Don't persist remote devices to the config
project system/core/
864e2e2 Fix overflow in path building
EDIT: Android Police have just posted change logs too. Theirs is slightly different as they seem to have missed some commits.
Can someone please post the contents of the build.prop for MOB30M. I don't have a PC at the moment to extract it myself from the system image.
zelendel said:
Once again this goes to show Google has no idea what they are doing. No big surprise there. And people wonder why many use IOS as their main device. Lol
Click to expand...
Click to collapse
I think the problem is that we don't understand what they are doing. It is very clear to them but not light shed on our end.
Sent from my Nexus 6 using XDA-Developers mobile app
JimSmith94 said:
My MOB30M doesn't include a radio, and the MD5 matches too. Oddly, the android-info.txt file says that 5.34 is required, so maybe it won't install unless it's already there.
Click to expand...
Click to collapse
The Radio and Bootloader img files are in the root of the downloaded file. While the boot, system, and rest of the .imgs are in the nested image-shamu-mob30m.zip file.
-Chris
zelendel said:
Once again this goes to show Google has no idea what they are doing. No big surprise there. And people wonder why many use IOS as their main device. Lol
Click to expand...
Click to collapse
Moderator edit: No need for name-calling. One of the Forum Rules (read them lately?) specifically calls out "Respect" - this applies to ALL members of the XDA community.
Sent from my Nexus 6 using Tapatalk

I need a little bit of help porting crDroid 6 to the sm-t350

I need a little bit of help portingh crDroid 6 to the sm-t350. Nubianprince started then got pulled away by work. I have initalized the crdroid repo, but i when i run repo sync i think it only downloaded like, 300 mb. i do have an android pie enviroment, does repo link resources? i dont know what is going on there. I will upload my roomservice.xml. I had to remove a couple lines from the original and manually clone them because it keeped giving me an error. the original is here https://github.com/Nubianprince/local_manifests/blob/master/crdroid-ten.xml .
Currently i am using this device tree: https://github.com/Nubianprince/android_vendor_samsung_gt58wifi most custom roms i see are using this: https://github.com/Valera1978/android_device_samsung_gtaxlwifi . I have not seen any non sm-5xx devices using it though, so i hesitate to switch. i worked out a a couple errors of things being defined twice, and then built. but i think i am missing something as the build fails with this: FAILED: ninja: 'out/target/product/gt58wifi/root/init.usb.configfs.rc', needed by 'out/target/product/gt58wifi/ramdisk-recovery.cpio', missing and no known rule to make it
Is there a "quick fix" to provide this file? I am not actually sure what i am missing, or what creates it.
Any help would be appreciated.
This file "init.usb.configfs.rc" is missing from your device tree, somewhere in one of your files you have the path pointing to "init.usb.configfs.rc" which does not exist. Let me know if that makes sense.
nubianprince said:
This file "init.usb.configfs.rc" is missing from your device tree, somewhere in one of your files you have the path pointing to "init.usb.configfs.rc" which does not exist. Let me know if that makes sense.
Click to expand...
Click to collapse
Yes, it does make sense. I just don't know enough about the android environment to know where the file, or what is pointing to it, would / should be.
Okay. I believe there is a missing, or many many missing makefiles. I found the file and manually copied it to out, and then the build fails with another missing file. Rinse and repeat, there are a ton of files not being put where they should be. Now what to do with that information, i am not sure ??. I tried including a couple of the make files from android 9, but they didn't make any difference.
oh yeah, and if i do lunch instead of brunch it fails with a different file missing: FAILED: ninja: 'out/target/product/gt58wifi/system/addon.d/50-lineage.sh', needed by 'out/target/product/gt58wifi/verified_assembled_framework_manifest.xml', missing and no known rule to make it
it makes no sense adding files to the "out" folder, fix the issues in your "device" folder check your device.mk file
Wow. That was really awful. I don't even know what i was thinking there. What i was trying to say, is that i was manual copying the files to see if it was just one or two not being copied. I have been comparing the Pie and Q makefiles to try to determine what file was supposed to be copying it to out, but i cant find it in Pie, all i know for now is that it is being copied in Pie but not Q. For now I'm gonna' keep looking for the correct file.
lividhen99 said:
Wow. That was really awful. I don't even know what i was thinking there. What i was trying to say, is that i was manual copying the files to see if it was just one or two not being copied. I have been comparing the Pie and Q makefiles to try to determine what file was supposed to be copying it to out, but i cant find it in Pie, all i know for now is that it is being copied in Pie but not Q. For now I'm gonna' keep looking for the correct file.
Click to expand...
Click to collapse
What device tree are you using, do you have it on Github?
nubianprince said:
What device tree are you using, do you have it on Github?
Click to expand...
Click to collapse
I am just using the device trees (ten branch) on your GitHub. I haven't made any changes that have gotten me anywhere so i haven't committed my local changes to my GitHub.
That crdroid ten branch still need a lot of work, the last build I did when I was working on it was not getting past the logo
nubianprince said:
That crdroid ten branch still need a lot of work, the last build I did when I was working on it was not getting past the logo
Click to expand...
Click to collapse
I have been away for a while and haven't followed along, but the last week I spent compiling ROMs. I also tried compiling Android 10 using "stock" lineageos gt58wifi and I got stuck at the logo as well. I also tried another device from the msm8916 repository and got stuck at the logo.
The "stock" gt58wifi build, as we all know, has problems with audio, bluetooth, smart cover, etc, etc in all versions 14.1, 15.0, 16.0 and won't even boot with 17.1.
When I first compiled it, it would fail due an error with a config.xml file. I submitted a patch, like others, but haven't seen anything yet.
https://github.com/Galaxy-MSM8916/android_device_samsung_gt58wifi/pulls
nubianprince said:
That crdroid ten branch still need a lot of work, the last build I did when I was working on it was not getting past the logo
Click to expand...
Click to collapse
I'm working on SM-T560NU 17.1. It too was stuck at the boot logo. I built an eng build and found it was the hardware vibrator that was getting stuck in a loop. If you remove the vibrator hal from
/device/samsung/msm8916-common/manifest.xml
that should work on the SM-T350 because both platforms share the same msm8916 code?
I did build SM-T350 with 17.1 and was stuck at boot logo and gave up. However, I have not rebuilt it knowing this new information. I will try again with the above change in a few days?
So, as retiredtab has said, he got android 10 booting. But it has all the issues android 9 did: no camera, sound, Bluetooth, or Hal sensor (sort of, it can turn the device on but not off). The system ui is also a little funny on crdroid, not sure about lineage. I don't know how to fix these issues, or where the roots of the problems may lay. Do you have any suggestions for learning more about the android source code? I feel like the aosp docs are good, but you kind of have to know what you're looking for.
I think part of the problem with the SM-T350 is that there has never been a fully working build since day 1. Lineageos 14 had problems to begin with and they were never fixed and got carried over to 15, 16 and now 17. If stock Lineageos 16 was fully working, then getting it to work on 17 would be less of a challenge.
The most likely problem to no audio, camera, bluetooth etc is the Samsung proprietary blobs are not in the correct directories or the configuration blob files are pointing to the wrong directory.
When I face this problem, I find it helpful to look at a working roomservice.xml file and do comparisons.
If there is no working roomservice.xml like "stock" lineageos 14, 15, and 16 for the SM-T350, then I look at similar models. For example, the T550 is the bigger brother and it helps to look through it's roomservice.xml file for hints.
Remember that a compiler mainly checks for syntax errors, not semantic. If you make a typo, a compiler will flag that as an error, but if you write correct syntax, but put a file or files in directory ABC instead of XYZ, the compiler won't say anything.
Another thing that might help is doing a logcat of a working build and comparing it to a non working build. There might be a very obvious error message like "can't find audio.hw.msm8916 in directory /device/samsung/msm8916" or something like that.
Learning how to use tools like meld and diff help tremendously in finding file and directory differences in case you put the blobs in the wrong place. See
https://www.tecmint.com/compare-find-difference-between-two-directories-in-linux/
I used meld when troubleshooting the stuck at boot logo.
If you are a visual learner, I found the following youtube channel helping in learning the overall process of building ROMs.
https://www.youtube.com/c/AlaskaLinuxUserAKLU/videos
I think we have lineage 16 fully working. I think the part I'm having trouble with here is the difference between where the files are read from in Android Q vs P.
If I understood what you said incorrectly, please say so.

Categories

Resources