Skip to the relevant sections if needed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
First go here: | |
https://wiki.codeaurora.org/xwiki/bin/QAEP/release | |
This site gives information about all msm soc release details with tag + android version | |
Search your msm here.. Check the latest one and look for correct android version and mark that tag. | |
Now open one of the following links (dependent on your linux kernel version) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
First you'll need to clone acdb_extract. I used the one by J510-Dev which is originally based on the one by luca020400. | |
git clone https://github.com/J510-Dev/acdb_extract | |
Then, as the README says you must generate the acdb header. For Qualcomm devices? The stock audio hal would be audio.primary.msm8996.so which is found on my stock ROM from /system/lib/hw/audio.primary.msm8996.so which I could just copy into the acdb_get folder... so for example, I'd use this: | |
./generate_acdb_data.sh audio.primary.msm8996.so | |
which will generate a file called acdb_data.h which is needed for the next step. | |
Since acdb_extract doesn't require being built in the AOSP environment? You can just build it using... |
This could happen because of a CMOS reset or other reasons, to reset the entries just:
- Boot into a live arch linux ISO
- Use
fdisk -l
to check the disks - Mount the root partition to
/mnt
and the EFI partition to/mnt/efi
- Chroot into the partition with
arch-chroot /mnt
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Make sure the device's and/or commonized device proprietary-files are updated with the same blobs that you want in your proprietary vendor repo. | |
In my example, I'll use the LeEco Le Max 2 (x2), so I would then copy the current LeEco msm8996-common and then x2 blobs (just to clarify, I mean the blobs themselves within the proprietary folder) to the desktop in a folder named vendorblobs | |
Then open terminal in the device tree and... | |
./extract-files.sh ~/Desktop/vendorblobs/ | tee ~/Desktop/extractor.log | |
Check extractor.log to ensure it worked ok and there was no errors / not found. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Make sure the device's and/or commonized device proprietary-files are updated with the same blobs that you want in your proprietary vendor repo. | |
Next, to use the kang and section mode we need the switches "-k -s". -k tells extract-files to only kang/pull updated blobs without deleting any blobs. -s tells it to only update ones from a commented section of your proprietary-files. | |
for example, if i have this in my proprietary-files | |
# ADSP - from oneplus3t - OnePlus/OnePlus3/OnePlus3T:9/PKQ1.181203.001/1911042108 - OOS 9.0.6 | |
vendor/lib/libadsp_hvx_callback_skel.so | |
vendor/lib/libadsp_hvx_stub.so |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Workarounds for building R on 8GB RAM environment: | |
1. At the start of the build: | |
[ 99% 138/139] /mnt/ssd/lineage/out/soong/.bootstrap/bin/soong_build /mnt/ssd/lineage/out/soong/build.ninja | |
This used to take around 30mins, after enabling zram now it takes around 30secs (thanks to @kdrag0n for the zram idea) which is on par with what happens in 16GB RAM building environments | |
sudo apt install zram-config for installing zram-config package | |
sudo nano /etc/fstab and add a # in front of the swap disk if you have one and then reboot | |
After booting cat /proc/swaps to check if zram is enabled or not |
- Download these 2 files
- Compile AOSP without fcm from stock and wait for check_vintf to error out
- Delete Python prefix from all lines (e.g.
checkvintf E 06-24 00:30:22 49120 49120 check_vintf.cpp:554]
) - Paste the result in fqnames.txt
- Launch the script
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
git remote add clo https://git.codelinaro.org/clo/la/kernel/msm-5.4 && git fetch clo | |
./best-caf-kernel.py "LA*" | tee ~/Desktop/best_caf_tag.txt | |
number of tags to check: 273 | |
LA.AU.0.2.0.r1-00500-gen3_gvmgh.0 has 3593778 lines changed | |
LA.AU.0.2.0.r1-00500-gen3_gvmgh.0 is the new best match with 3593778 lines changed | |
LA.AU.0.2.0.r1-01300-gen3_gvmgh.0 has 3965658 lines changed | |
LA.AU.0.2.0.r1-01500-gen3_gvmgh.0 has 3965658 lines changed | |
LA.AU.0.2.0.r1-01800-gen3_gvmgh.0 has 3965614 lines changed | |
LA.AU.0.2.0.r1-02100-gen3_gvmgh.0 has 3972551 lines changed |