[Guide]Building 64 Bit Kernel/64 Bit devices - Android

Hi Guys I am going to tell you how to compile/build kernel for 64 bit devices.
New devices are coming with 64 bit architecture and there is no guide for compiling 64 bit Kernel.
So let's start
Part 1
System Requirements
Code:
[CENTER]
* Ubuntu
* Internet Connections
* At least 2GB Ram
[/CENTER]
Install Packages
Code:
* sudo apt-get update
* sudo apt-get install -y build-essential kernel-package libncurses5-dev bzip2 bin86 libqt3-headers libqt3-mt-dev wget libncurses5 git-core nautilus-open-terminal
Restart your pc.
Downloads Kernel Source Code (64 bit)
From github you can downloads by ZIP that can compress kernel source in zip and save data and lot's of time.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
or
You can clone by GIT.
Code:
git clone <clone url>
[HIDE][IMG]http://i.imgur.com/T6hICCS.png[/IMG][/HIDE]
Download Toolchain
Uber Toolchain - https://bitbucket.org/UBERTC/aarch64-linux-android-4.9-kernel/downloads
Sabermod Toolchain - http://sabermod.com/Toolchains%20%28DEV%20ONLY%29/aarch64/aarch64-kernel/
Part 2
Setup the things
Code:
* sudo gedit .bashrc
Now edit the Toolchain Path
#Android Toolchain PATH
export ARCH=arm64
export CCOMPILE=$CROSS_COMPILE
export CROSS_COMPILE=
export PATH=$PATH:
Rename The Kernel Folder name to kernel that you have at HOME .
Part 3
Building/Compiling The 64 Bit Kernel
* Go to kernel/arch/arm64/configs and find and copy the name of the defconfig of you 64 bit device.
* Open a terminal
Code:
* cd kernel
* make ARCH=arm64 device_defconfig
This will create .config at kernel folder.
Code:
* make menuconfig
This command will show graphic interface of features that you can enable or disable.
Code:
make -j#
Replace the # with your CPU cores and now this will create Image at kernel/arch/arm64/boot
Rename Image to zImage.
Kernel is compiled now you can enjoy.​

Works on MTK devices?

XMoDuLeSx said:
Works on MTK devices?
Click to expand...
Click to collapse
No only for snapdragon.

Is there any theard to build MTK(mt6735) kernel for beginners?

dhrtlockeroo9 said:
Is there any theard to build MTK(mt6735) kernel for beginners?
Click to expand...
Click to collapse
wondering as well..keep getting errors and its my first kernel build.. only device i have,so yeah...did u manage to build it? which toolchain did u use for android 7?

Moto X Play.
Could you tell if this same method would work for the following processor:
Chipset: Qualcomm MSM8939 Snapdragon 615
CPU: Octa-core (4x1.7 GHz Cortex-A53 & 4x1.0 GHz Cortex-A53)
GPU: Adreno 405
Do let me know.
Please & Thank you!

ManthanRB said:
Could you tell if this same method would work for the following processor:
Chipset: Qualcomm MSM8939 Snapdragon 615
CPU: Octa-core (4x1.7 GHz Cortex-A53 & 4x1.0 GHz Cortex-A53)
GPU: Adreno 405
Do let me know.
Please & Thank you!
Click to expand...
Click to collapse
It should work .
Sent from my OnePlus3 using XDA Labs

Can I build a android 9 kernel for my sony xperia z5? Kernel only without bluetooth and so on.....

i am facing this error and can not resolve the problem.
property '#gpio-cells' in node /soc/msm_cdc_pinctrl_us_euro_sw or bad phandle (referred from /soc/sound:qcom,cdc-us-eu-gpios[0])
arch/arm64/boot/dts/qcom/msm8953-pmi8937.dtb: Warning (gpios_property): Missing property '#gpio-cells' in node /soc/cdc_comp_pinctrl or bad phandle (referred from /soc/sound:qcom,cdc-comp-gpios[0])
arch/arm64/boot/dts/qcom/msm8953-pmi8937.dtb: Warning (gpios_property): Missing property '#gpio-cells' in node /soc/msm_cdc_pinctrl_pri or bad phandle (referred from /soc/sound:qcom,pri-mi2s-gpios[0])
arch/arm64/boot/dts/qcom/msm8953-pmi8937.dtb: Warning (gpios_property): Missing property '#gpio-cells' in node /soc/msm_cdc_pinctrl_quin or bad phandle (referred from /soc/sound:qcom,quin-mi2s-gpios[0])
arch/arm64/boot/dts/qcom/msm8953-pmi8937.dtb: Warning (gpios_property): Missing property '#gpio-cells' in node /soc/msm_cdc_pinctrl_us_euro_sw or bad phandle (referred from /soc/sound-9335:qcom,cdc-us-eu-gpios[0])
arch/arm64/boot/dts/qcom/msm8953-pmi8937.dtb: Warning (gpios_property): Missing property '#gpio-cells' in node /soc/msm_cdc_pinctrl_quin or bad phandle (referred from /soc/sound-9335:qcom,quin-mi2s-gpios[0])
arch/arm64/boot/dts/qcom/msm8953-pmi8937.dtb: Warning (interrupts_property): interrupts size is (12), expected multiple of 8 in /soc/[email protected]
CC lib/mpi/generic_mpih-lshift.o
DTC arch/arm64/boot/dts/qcom/msm8953-ext-codec-rcm-overlay.dtbo
Error: ../arch/arm64/boot/dts/qcom/msm8953-audio-cdp.dtsi:14.1-11 syntax error
FATAL ERROR: Unable to parse input tree
scripts/Makefile.dtbo:24: recipe for target 'arch/arm64/boot/dts/qcom/msm8953-ext-codec-rcm-overlay.dtbo' failed
make[3]: *** [arch/arm64/boot/dts/qcom/msm8953-ext-codec-rcm-overlay.dtbo] Error 1
../scripts/Makefile.build:653: recipe for target 'arch/arm64/boot/dts/qcom' failed
make[2]: *** [arch/arm64/boot/dts/qcom] Error 2
arch/arm64/Makefile:194: recipe for target 'dtbs' failed
make[1]: *** [dtbs] Error 2
make[1]: *** Waiting for unfinished jobs..

Related

{All 2011}[GUIDE][DEV] How to build CyanogenMod 12.1

This thread is intended for devs & advanced users only.
Here you can learn how to build CyanogenMod 12.1 for any of the 2011 xperia devices.
I will use 'smultron' as an example device, you should replace the codename with the device you want to build.
For the first time you try to build CM12.1
Follow this guide up to "Initialize the CyanogenMod source repository" step (don't execute this step).
http://wiki.cyanogenmod.org/w/Build_for_smultron
Initialize the CyanogenMod source repository
Enter the following to initialize the repository:
Code:
cd ~/android/system/
repo init -u git://github.com/CyanogenMod/android.git -b cm-12.1
Get the required local manifest
Code:
mkdir -p ~/android/system/.repo/local_manifests
curl https://raw.githubusercontent.com/LegacyXperia/local_manifests/cm-12.1/semc.xml > ~/android/system/.repo/local_manifests/semc.xml
Download the source code
Code:
repo sync
Setup the build environment
Code:
. build/envsetup.sh
Download some commits from CyanogenMod gerrit which are not accepted yet
Code:
ln -s vendor/extra/updates.sh updates.sh
./updates.sh
Setup the build environment & prepare the device-specific code.
Code:
cd ~/android/system
. build/envsetup.sh
breakfast smultron
Build the ROM (takes long time)
Code:
brunch smultron
If the build finishes successfully, you will find the build here (change DATE into the date):
~/android/system/out/target/product/smultron/cm-12.1-DATE-UNOFFICIAL-LegacyXperia-smultron.zip
The next times you want to build, you only need to do the following:
Sync the repositories & make sure you are using the latest local_manifest.
Code:
cd ~/android/system/
curl https://raw.githubusercontent.com/LegacyXperia/local_manifests/cm-12.1/semc.xml > ~/android/system/.repo/local_manifests/semc.xml
repo sync
Setup the build environment
Code:
. build/envsetup.sh
Download some commits from CyanogenMod gerrit which are not accepted yet
Code:
./updates.sh
Build the ROM
Code:
brunch smultron
If the build finishes successfully, you will find the build here (change DATE into the date):
~/android/system/out/target/product/smultron/cm-12.1-DATE-UNOFFICIAL-LegacyXperia-smultron.zip
Steps to build only the kernel:
Sync the repositories.
Code:
cd ~/android/system/
repo sync
Setup the environment
Code:
. build/envsetup.sh
Download some commits from CyanogenMod gerrit which are not accepted yet
Code:
./updates.sh
Build the kernel
Code:
breakfast smultron
make -j4 bootimage
If the build finishes successfully, you will find the boot image here:
~/android/system/out/target/product/smultron/boot.img
Some suggestions for faster builds:
* Enable ccache
* Use the fastest hdd on your pc to store the source, build output & ccache
* You can also buy an ssd, if it's not large enough to hold everything, just store the build output & ccache
* mount /tmp on tmpfs (RAM).
The above have greatly improved my dirty build times with removed /out/target from 1h30m to 30m.
Mounting /tmp on tmpfs made the biggest improvement for me.
Credits: Thanks to hnl_dk for the initial CM9 & CM10 guides.
Reserved
getting insuficiant storage aviable in pa gappps (pico/micro) packages
Druboo666 said:
getting insuficiant storage aviable in pa gappps (pico/micro) packages
Click to expand...
Click to collapse
yes...same here
from build of 21st...i am getting this error
and even other zips are not getting flashed
TWRP
delete
Other than a fast HDD, does you computer need to be fast to build it? (Running a 2007 Core 2 Duo...)
Theonew said:
More cores are better. Here are the requirements to build it from source:
- 6GB of download.
- 25GB disk space to do a single build.
- 80GB disk space to build all AOSP configs at the same time.
- 16GB RAM recommended, more preferred, anything less will measurably benefit from using an SSD.
- 5+ hours of CPU time for a single build, 25+ minutes of wall time, as measured on a workstation (dual-E5620 i.e. 2x quad-core 2.4GHz HT, with 24GB of RAM, no SSD).
Click to expand...
Click to collapse
And I would say that a fast internet connection is also recommended, since the full source for initial sync is more than 10GBs (on ICS it already was, probably like 20GBs for lollipop).
brunch build error 12.1
Hi,
I am trying to build the image from the sources as per the build instructions to make my own test build.
After repo downloads, while building i am getting error "init/Kconfig:953: can't open file "usr/Kconfig"" in the brunch smultron command.
I am following these commands:
1) repo init -u git://github.com/CyanogenMod/android.git -b cm-12.1
2) curl https://raw.githubusercontent.com/Le...-12.1/semc.xml > /tmp/android/system/.repo/local_manifests/semc.xml
3) repo sync
4) ln -s vendor/extra/updates.sh updates.sh
5) ./updates.sh
6) . build/envsetup.sh
7) breakfast smultron
8) brunch smultron
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Can you tell me whats wrong.
Thanks.
joshipallav said:
Hi,
I am trying to build the image from the sources as per the build instructions to make my own test build.
After repo downloads, while building i am getting error "init/Kconfig:953: can't open file "usr/Kconfig"" in the brunch smultron command.
I am following these commands:
1) repo init -u git://github.com/CyanogenMod/android.git -b cm-12.1
2) curl https://raw.githubusercontent.com/Le...-12.1/semc.xml > /tmp/android/system/.repo/local_manifests/semc.xml
3) repo sync
4) ln -s vendor/extra/updates.sh updates.sh
5) ./updates.sh
6) . build/envsetup.sh
7) breakfast smultron
8) brunch smultron
Can you tell me whats wrong.
Thanks.
Click to expand...
Click to collapse
Delete the folder ~/android/system/kernel
repo sync again and make sure you get no errors
run make clean
try to build again
@Langes
hi.. just wanted to know.. any guide to Build for AOSP 5.1.1 Lollipop for Xperia Devices 2011 like cm12.1 here
and silly question time.. lol
is it possible that AOSP Android M source can also be built for Xperia Play (2011 Devices) .. I mean changes made by Mike (the AOSP Mike) + Source of Android M .. will it give us some output or :/
I built this rom today with new 3.10 kernel. It seems to be improved in some points (what isn't neccessary because of kernel), but with new kernel I can't use wifi and mobile data seems to be not working too. To build I fetched the new kernel and cherry-picked following commits:
Code:
#msm7x30-common: Update USB configuration for 3.10
cherries+=(LX_594)
#Use common msm7x30 kernel
#cherries+=(LX_422)
#msm7x30-common: Use common msm7x30 kernel
cherries+=(LX_421)
#mogami-common: wl12xx updates for 3.10
cherries+=(LX_407)
#media/msm7x30: Update for 3.10 support
cherries+=(LX_403)
#display/msm7x30: Update for 3.10 support
cherries+=(LX_402)
#audio/msm7x30: Update for 3.10 support
cherries+=(LX_401)
#kernel
#usb: Import msm charger changes from 6.2.B.0.200
cherries+=(LX_430)
#usb: msm72k_otg: Remove userspace events [REVISIT]
cherries+=(LX_428)
Is there something I missed to get working internet connection? (I didn't really test the rom for other things so far)
Getting this error when building AOSP rest all goes fine..
build also starts but getting this error.. any suggestion ?
Hey Mike, I tried to build CM14 and it fails. After some investigation it seems that imgdiff is missing. This was fixed on CM13: http://review.cyanogenmod.org/#/c/135193, which can't be applied to CM14 (no RECOVERY_PATCH_INSTALL).
I hope this helps.
zweif said:
Hey Mike, I tried to build CM14 and it fails. After some investigation it seems that imgdiff is missing. This was fixed on CM13: http://review.cyanogenmod.org/#/c/135193, which can't be applied to CM14 (no RECOVERY_PATCH_INSTALL).
I hope this helps.
Click to expand...
Click to collapse
I already have a cm14 zip for anzu, just unable to flash it because it's about 330MB and device runs out of memory when attempting to flash. Will try to find a solution/hack on the weekend
I managed to build cm14 zip for mango (installation fails as expected).
I modified build/core/Makefile, I don't fully understand how these dependencies work, but maybe there is a dependency issue.
There are dependencies: imgdiff <- RECOVERY_FROM_BOOT_PATCH <- INSTALLED_SYSTEMIMAGE <- BUILT_TARGET_FILES_PACKAGE (where make_recovery_patch is called, which needs imgdiff)
Now INSTALLED_SYSTEMIMAGE is defined before RECOVERY_FROM_BOOT_PATCH, but dependencies of INSTALLED_SYSTEMIMAGE are defined after that. Could this cause an issue?
After moving
Code:
INSTALLED_SYSTEMIMAGE := $(PRODUCT_OUT)/system.img
SYSTEMIMAGE_SOURCE_DIR := $(TARGET_OUT)
from line 1284 to line 1314 build was successfull.
mikeioannina said:
I already have a cm14 zip for anzu, just unable to flash it because it's about 330MB and device runs out of memory when attempting to flash. Will try to find a solution/hack on the weekend
Click to expand...
Click to collapse
I managed to flash cm14 after disabling dex-preoptimization. Zip size decreases to ~260MB. I didn't do extensive testing - messaging seems to work, dialing a number causes restart (system, not kernel), the only sounds I noticed were dialing sounds, i miss a browser and other apps - but it seems nice for a first impression.
Concerning my problem with imgdiff: After reading some make documentation I have no clue why it isn't built. Maybe these dependencies aren't tracked because RECOVERY_FROM_BOOT_PATCH is set to an empty string when BOARD_CANT_BUILD_RECOVERY_FROM_BOOT_PATCH is defined?
I can manually call 'make imgdiff' as workaround.
I tried some things that could have affected imgdiff before my last post, and I'm not sure if I cleared output directory. Did you try a clean build or could imgdiff come from a previous build on your machine?
bro, How much space does it need to sync the repo??
& if I want to port a ROM based on CM (Like Resurrection Remix or Liquid Smooth), would I have to use the command "repo sync"?
I'm trying to build CM14.0, but jack server is giving me a bad time with out of memory error. I have tried changing jack.server.max-service to 1, heap size to 2g, 3g and 4g, even to build without ninja, but always getting out of memory. In CM13.0 I could build without jack, but now the built is failing without it. I'm using Ubuntu 16.04 on an i3 with 4g RAM and 8g swap, I've seen cases with machines with better specs failing (e.g. i5, 8g RAM). Is it a bug with jack, or my specs is the limiting factor?
Edit: I guess this is the EOL for me :crying:.
azakosath said:
I'm trying to build CM14.0, but jack server is giving me a bad time with out of memory error. I have tried changing jack.server.max-service to 1, heap size to 2g, 3g and 4g, even to build without ninja, but always getting out of memory. In CM13.0 I could build without jack, but now the built is failing without it. I'm using Ubuntu 16.04 on an i3 with 4g RAM and 8g swap, I've seen cases with machines with better specs failing (e.g. i5, 8g RAM). Is it a bug with jack, or my specs is the limiting factor?
Edit: I guess this is the EOL for me :crying:.
Click to expand...
Click to collapse
Jack troubleshooting
If your computer becomes unresponsive during compilation or if you experience Jack compilations failing on “Out of memory error”
You can improve the situation by reducing the number of Jack simultaneous compilations by editing your $HOME/.jack-server/config.properties and changing jack.server.max-service= to a lower value.
Description with default values follows:
jack.server.max-service=<number> Maximum number of simultaneous Jack tasks. Default is 4.
jack.server.max-jars-size=<size-in-bytes> Maximum size for Jars, in bytes. -1 means no limit. Default is 100 MiB.
jack.server.time-out=<time-in-seconds> Time out delay before Jack gets to sleep. When Jack sleeps, its memoryusage is reduced, but it is slower to wake up. -1 means "do not sleep".Default is 2 weeks.
jack.server.service.port=<port-number> Server service TCP port number. Default is 8076. Needs to match theservice port defined in $HOME/.jack-settings on the client host (SeeClient section).
jack.server.admin.port=<port-number> Server admin TCP port number. Default is 8077. Needs to match theservice port defined in $HOME/.jack-settings on the client host (SeeClient section).
jack.server.config.version=<version> Internal, do not modify.
Mardon said:
Jack troubleshooting...
Click to expand...
Click to collapse
Thanks for answering, but I have already read these. I tried several combinations (max services and "-Xmx") without luck. Even:
Code:
export USE_NINJA=false
to build without ninja. The result was always the same, jack server was hanging and failing after 30 or more compilations.
P.S. I did use the changes that are not merged yet, but I don't think this is related.
You also can try
breakfast devicename
And after that
make -j1 bacon
To force 1 job compiling only
Gesendet von meinem GT-I8190 mit Tapatalk

[ROM] [Testing] Tab-Pi | AOSP/Android TV for Raspberry Pi 3 android-7.1.2_r17

Code:
****Disclaimer: I'm not responsible if you destroy your device. Use at your own risk.****
Introduction:
Welcome to my builds of AOSP for the Raspberry Pi 3. You can get a very similar feel to that of a Nexus player when you combine this build with TV GAPPS. I welcome other developers to assist me in this project!​
Bug Reporting:
Please only report bugs in the following format:
Device Firmware base:
Kernel &Version:
ROM date of release/nightly:
Governor:
Scheduler:
Any changes made within a kernel/ROM manager:
Any bootup scripts:
Brief description of bug:
Intended behavior:
Actual behavior:
Steps to reproduce bug:
Do this
Do that
See the bug
****Attach a logcat or you will be ignored****
Features:
AOSP for Raspberry Pi 3
More features to be added
Click to expand...
Click to collapse
Instructions:
Install Linux on your computer or a VM
Make sure you have adb installed
Download ROM and GAPPS
Insert your SD card into your computer or via adapter
Prepare SD card with the following partitions:
Code:
p1 512MB for BOOT : Do fdisk : W95 FAT32(LBA) & Bootable, mkfs.vfat
p2 1024MB for /system : Do fdisk, new primary partition, mkfs.ext4
p3 512MB for /cache : Do fdisk, mkfs.ext4
p4 remainings for /data : Do fdisk, mkfs.ex4
Set volume label for each partition - system, cache, userdata : use -L option of mkfs.ext4, e2label command, or -n option of mkfs.vfat
Un-tar/gz the downloaded ROM
Get your partition names with fdisk:
Code:
fdisk -l
Write the partitions: (In this example I will use mmcblk0 as my storage name)
Code:
$ sudo dd if=boot.img of=/dev/mmcblk0p1 bs=1M
Code:
$ sudo dd if=system.img of=/dev/mmcblk0p2 bs=1M
Un-tar your downloaded GAPPS
Boot up your Pi and connect it to your network (highly recommended to hardwire it or it will be a b*** to flash GAPPS)
Open up a terminal and cd into the directory you extracted the GAPPS in
Edit the gapps.sh script where it says IP to match the IP of your Pi
Flash GAPPS:
Code:
$ chmod +x gapps.sh && ./gapps.sh
Your Pi will reboot a few times and you'll be all set
Download:
Download Repository
Changelog:
06/28/2017
Merge tag 'android-7.1.2_r17' into all repos
Add prebuilt fugu (Nexus Player) launcher and other vendor apps
Use only SW video decoder
04/20/2017
Initial release
Click to expand...
Click to collapse
Bugs:
DRM content currently does not work as we do not have any certifications for this device. I could use help hacking this.
Screen flickers sometimes
Youtube app plays sound but no video (you can use a 3rd party app to get videos to play)
Let me know...
Sources:
Kernel
Device Tree
GAPPS script derived from: https://github.com/bjsiu/rpi3-gapps
ROM originally derived from: https://github.com/android-rpi
Android Security Patch Version: June 5, 2017
XDA:DevDB Information
AOSP/Android TV for Raspberry Pi 3 (Testing), ROM for the Raspberry Pi
Contributors
tabp0le
Source Code: https://github.com/tab-pi/platform_manifest
ROM OS Version: 7.x Nougat
ROM Kernel: Linux 4.x
Based On: AOSP
Version Information
Status: Testing
Created 2017-04-21
Last Updated 2018-10-15
Reserved
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Reserved
Anyone want to explain this to an idiot like me? Struggling hard over here just trying to format the SD
matistight said:
Anyone want to explain this to an idiot like me? Struggling hard over here just trying to format the SD
Click to expand...
Click to collapse
You can use gparted to make it easier. Delete all partitions from the SD. Then make a 512MB partition with label boot and format as fat32. Change flags to boot and lba. Then make a 1024MB ext4 partition with label system. Then another be 512MB ext4 label cache. Then another with remaining space labeled data.
Does Chromecast'ing / Screen mirroring work?
would this also work on Raspberry Pi 2?
How do you control through the interface? Does hdmi-cec work(like in kodi) so you can use your remote control?
Sent from my SM-G935F using Tapatalk
tabp0le said:
Code:
****Disclaimer: I'm not responsible if you destroy your device. Use at your own risk.****
Bugs:
DRM content currently does not work as we do not have any certifications for this device. I could use help hacking this.
Click to expand...
Click to collapse
Once upon a time, I tried doing the same thing for the RK3288 android-on-a-stick. I think I was able to get *some* of the DRM stuff to work by stealing a bunch of the binary blobs from the Razer Forge ATV device and hacking the build.prop to look like a razer - but never fully got Netflix to work.
My suggestion for an approach to hacking DRM support in for this device would be to do the same thing for the 7.1.2 build for Nexus Player - diff your ROM against the extracted source for Nexus, find any missing binary blobs in /bin, /xbin, and /vendor, (probably /vendor more than anything), and then start modding the build.prop to make it look like a nexus player till it works or you break something.
Download-Link is broken.
Would be interested if it works with pi2 as well
ad_on_is said:
Download-Link is broken.
Click to expand...
Click to collapse
It returns me a 502 Bad Gateway too.
Download link is broken.
:crying:
Please correct Download link - i'm waiting hard for Android TV on my RPi3
This sounds like a fantastic project! I'm excited to see how well it works out
Link working now
Very interested to know if the casting ability works. Is the ability for a device to appear as a "chromecast" device hardware or software limited?
This could be interesting. I wish Google would actually populate their GIT that they started for it...
arusiasotto said:
This could be interesting. I wish Google would actually populate their GIT that they started for it...
Click to expand...
Click to collapse
Found this: android-rpi
Sounds like the beginning of a nice project. Interested to see how this pans out!

[REFERENCE] ELS - exynos-linux-stable (4.9.193)

{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Project: Exynos-Linux-Stable​- Exynos-Linux-Stable is an organisation on GitLab & GitHub containing upstreamed linux for some of the latest flagship handset from SAMSUNG like the S7, S7E, S8, S8+, Note 8, S9, S9+, Note 9 kernel upstreamed to be inline with respective linux branches.
What does this bring?
- All of the devices mentioned above uses Long Term Support (LTS) releases, they are like old softwares.
- LTS releases are supported through their specified support duration by security updates, bug fixes, backports, and new device drivers, just like a regular release.
So updating or up-streaming your device's kernel brings many improvements talking security, performance wise etc...
How do I use?
If you are a developer, the reference tree is located in the exynos-linux-stable organization: https://github.com/exynos-linux-stable
This can either be merged into your existing kernel tree if you have one or be used as a fresh base. You do not need my permission to use it nor do you need to give me credit (although it would be appreciated).
If you are a user, ask your kernel developer KINDLY to use this source for his kernel that has all the changes added in!
Getting notified about updates
There are a few ways to get notified of linux-stable updates:
The exynos-linux-stable Telegram channel: https://t.me/exynos_linux_stable
Subscribe to this thread
XDA:DevDB Information
ELS - exynos-linux-stable, Kernel for the Samsung Galaxy Note 9
Contributors
farovitus
Source Code: https://github.com/exynos-linux-stable/crownlte
Kernel Special Features:
Version Information
Status: Stable
Stable Release Date: 2019-05-18
Created 2018-08-24
Last Updated 2019-09-17
Reserved
Reserved
This source appears to be broken (apparently now differently to when I tried a few days ago):
Code:
~$ mkdir note-9
~$ cd note-9
~/note-9$ git clone https://bitbucket.org/UBERTC/aarch64-linux-android-4.9-kernel
~/note-9$ git clone https://github.com/exynos-linux-stable/crownlte
~/note-9$ cd crownlte
~/note-9/crownlte$ export ARCH=arm64 CROSS_COMPILE=aarch64-linux-android- PATH=$PWD/aarch64-linux-android-4.9-kernel/bin:$PATH
~/note-9/crownlte$ make exynos9810-crownlte_defconfig
~/note-9/crownlte$ make -j1
CHK include/config/kernel.release
CHK include/generated/uapi/linux/version.h
CHK include/generated/utsrelease.h
CHK include/generated/bounds.h
CHK include/generated/timeconst.h
CHK include/generated/asm-offsets.h
CALL scripts/checksyscalls.sh
CHK include/generated/compile.h
CC init/version.o
LD init/mounts.o
AS init/_uh.o
init/_uh.S: Assembler messages:
init/_uh.S:40: Error: file not found: init/uh.8g.elf
scripts/Makefile.build:393: recipe for target 'init/_uh.o' failed
make[1]: *** [init/_uh.o] Error 1
Makefile:1036: recipe for target 'init' failed
make: *** [init] Error 2
stock source builds in the same environment.
Phoenix09 said:
This source appears to be broken (apparently now differently to when I tried a few days ago):
stock source builds in the same environment.
Click to expand...
Click to collapse
Well i did compile the source before i pushed it to GitHub and it was totally fine... but i will double check tomorrow.
farovitus said:
Well i did compile the source before i pushed it to GitHub and it was totally fine... but i will double check tomorrow.
Click to expand...
Click to collapse
did you manage to check?
Sent from my SM-N960F using Tapatalk
Phoenix09 said:
did you manage to check?
Click to expand...
Click to collapse
No, i am quiet busy these days. Send me a link of your source so i can check it out from my phone.
Again, i am sure the ELS source will compile just fine.
farovitus said:
No, i am quiet busy these days. Send me a link of your source so i can check it out from my phone.
Again, i am sure the ELS source will compile just fine.
Click to expand...
Click to collapse
https://github.com/exynos-linux-stable/crownlte
I made zero changes, what I posted is exactly what I did, it does not compile.
Edit: what OS are you compiling on?
Sent from my SM-N960F using Tapatalk
Phoenix09 said:
This source appears to be broken (apparently now differently to when I tried a few days ago):
stock source builds in the same environment.
Click to expand...
Click to collapse
Source compile just fine. Please do a proper clone to the source to avoid any issue.
4.9.140 has been merged.
farovitus said:
4.9.140 has been merged.
Click to expand...
Click to collapse
that now builds for me.. in the exact same environment, Ubuntu 14.04 in vagrant with a script:
Code:
#!/bin/sh
set -e
sudo apt-get update
sudo apt-get install -y git build-essential bc
cd $HOME
[ -d aarch64-linux-android-4.9-kernel ] || git clone --depth=1 https://bitbucket.org/UBERTC/aarch64-linux-android-4.9-kernel
[ -d crownlte ] || git clone --depth=1 https://github.com/exynos-linux-stable/crownlte
export ARCH=arm64 CROSS_COMPILE=aarch64-linux-android- PATH=$HOME/aarch64-linux-android-4.9-kernel/bin:$PATH
cd crownlte
make exynos9810-crownlte_defconfig
make -j8
4.9.141 has been released.
hi, i need a stock note 9 pie kernel (CSB3), i flashed another kernel and it wont allow me to go past my login, can you please direct me to a stock pie kernel so i can flassh and get in?
mafioso345 said:
hi, i need a stock note 9 pie kernel (CSB3), i flashed another kernel and it wont allow me to go past my login, can you please direct me to a stock pie kernel so i can flassh and get in?
Click to expand...
Click to collapse
Don't ask here.. Just take a Rom like ketan and flash only kernel via aroma. Done
Ketan p06 has CSB3 base so that kernel will work no problem.
- 4.9.177 merged in.
- Merged CSDE OSRC into crownlte exynos-linux-stable tree.
https://github.com/exynos-linux-stable/crownlte
As always, join https://t.me/exynos_linux_stable to get instantly notified of every ELS update.
I know it's a stupid question but how to pack kernel inside IMG? I want to get image for heimdall.
I've honestly googled but it looks like everybody just knows how to do this. And nobody discuss it
-W_O_L_F- said:
I know it's a stupid question but how to pack kernel inside IMG? I want to get image for heimdall.
I've honestly googled but it looks like everybody just knows how to do this. And nobody discuss it
Click to expand...
Click to collapse
You'll want to use Android Image Kitchen to unpack and repack kernels inside images. You can diff the unpacked boot.img provided in devbase with mine to see the basic ramdisk modifications to prevent forced encryption or various other issues. Or you can just unpack my image, it's relatively basic with it's modifications. Hope this helps.
EDIT: You can also look at my make9810.sh script on GitHub to see the various steps I take for repacking my images.
Can someone explain what this is for? Is this purely for use with linux on DEX or are you guys flashing linux direct to your Note9 somehow? Or updating the kernel that android is running on?
bandario said:
Can someone explain what this is for? Is this purely for use with linux on DEX or are you guys flashing linux direct to your Note9 somehow? Or updating the kernel that android is running on?
Click to expand...
Click to collapse
It's a reference kernel source with all recent patches from vanilla kernel applied to Samsung stock one. Some developers use this source as a base for their custom kernels. This is what it's for.
ELS is for Android. But I'm developing a kernel that can boot Linux (GNU/Linux) on Note9. And yes, it's based on ELS sources.
4.9.193 has been merged into the exynos-linux-stable tree.
https://github.com/exynos-linux-stable/crownlte

[UNOFFICIAL][RMX218x][R] Havoc-OS v4.12

{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Havoc-OS 4.x is based on AOSP, inspired by Google Pixel.
Has a refined Material Design 2 UI crafted by @SKULSHADY.
Many useful features that provide a smooth premium experience.
Just flash and enjoy...​
https://photos.app.goo.gl/WSbmYy7QeB6K9CSn6​
Founder & Lead Developer:
SKULSHADY (Anushek Prasal)
DevOPS & Scaling:
Irongfly (Sukeerat Singh Goindi)
Support Team:
theo.j22 (Tushar Jain)
​
If you like our work and would like to support this project then please consider donating.
PayPal: https://www.paypal.me/ANUSHEK
UPI: [email protected]​
Working
- VoLTE
- WiFi & Bluetooth
- Video in NewPipe and Facebook
- Sounds are fine
- SafetyNet
Bugs
- Permissive
- 'Double Tap To Wake' in some
- If your fingerprint is not working, then see this
Notes
- It is Encrypted and Permissive
- Source compiled 4.9.206 kernel
do keep in mind that a permissive SELinux environment is not at all meant for being a daily driver. Unless you don’t have any problem with running a less secure software, you’re better off not installing it as your primary device.
Click to expand...
Click to collapse
ROM: https://androidfilehost.com/?fid=17825722713688262349 (Only for UI 1)
Mirror link is available here
About Us: https://havoc-os.com
Recovery: https://forum.xda-developers.com/t/unofficial-twrp-v3-5-2-for-realme-c12.4296429/
Code Review: https://review.havoc-os.com​
1. Download the ROM, GApps (Optional) from the links above.
2. Flash the ROM, GApps (Optional and FlameGApps are suggested).
3. 'Format Data' and Wipe Cache
4. Reboot and Enjoy.​
Irawan's for trees
TechyMinati for initial trees and kernel fixes
Apon77 for server at here
LineageOS (https://github.com/LineageOS)
Crdroid (https://github.com/crdroidandroid)
Pixel Experience (https://github.com/PixelExperience)
And all the other Developers, Testers, Donators and Users.​
https://github.com/Havoc-OS
https://github.com/Havoc-Devices
https://github.com/HemanthJabalpuri/device_realme_RMX2185/tree/havoc
https://github.com/realme-kernel-opensource/realmeC11_realmeC12_realmeC15_AndroidQ-kernel-source​
microG
Havoc-OS supports Signature Spoofing and microG works out of the box without any additional steps.
Use below steps for bare minimal replacement of Play Services i.e, without any Location Services, Maps and Play Store InApp Purchases
- Flash Havoc-OS without flashing GApps
- Download and install GmsCore from https://github.com/microg/GmsCore/r...2.212658/com.google.android.gms-212658044.apk
- Download and install GsfProxy from https://github.com/microg/android_packages_apps_GsfProxy/releases/download/v0.1.0/GsfProxy.apk
- Download and install FakeStore from https://github.com/microg/FakeStore/releases/download/v0.1.0/FakeStore-v0.1.0.apk
- Go to AppInfo of microG Services Core from AppDrawer and grant all the permissions
- Open microG Services Core, go to Self-Check and make sure that all options are checked. If something is not checked, then click on it and allow for asked permission
- Go back and choose Account for adding Google Account
- Also enable Google device registration, Cloud Messaging if not enabled
- Reboot
BUILDING
Below are the instructions that I used to build Havoc-OS in Ubuntu 20.04 LTS.
Setup build environment
It will download and install packages required for building
Bash:
git clone https://github.com/akhilnarang/scripts
cd scripts && bash setup/android_build_env.sh
git config --global user.name "HemanthJabalpuri"
git config --global user.email "[email protected]"
mkdir ~/work && cd ~/work
Sync Havoc-OS ROM sources
It will download sources that have size upto 100GB. So be prepared to have that much internet and time to wait till it downloads
Bash:
repo init -u https://github.com/Havoc-OS/android_manifest.git -b eleven
repo sync -c -j$(nproc --all) --force-sync --no-clone-bundle --no-tags
Apply required patches
For fix booting
Bash:
cd external/selinux
curl -sL https://github.com/phhusson/platform_external_selinux/commit/f3d5e2eb212ebd4189428d6adb915880573962f9.patch | patch -p1 -b
cd -
Clone Device and Vendor trees
Our device specific trees to build.
Bash:
git clone --depth=1 https://github.com/HemanthJabalpuri/android_device_realme_RMX2185 -b havoc device/realme/RMX2185
git clone --depth=1 https://github.com/dodyirawan85/vendor_realme_RMX2185 -b lineage-18.1 vendor/realme/RMX2185
git clone --depth=1 https://github.com/dodyirawan85/android_kernel_realme_mt6765 -b lineage-17.1 kernel/realme/mt6765
Build the ROM
It is the crucial step. Its time to build ROM from sources. It may take so much depending on your PC specifications. It may take upto 7 - 15 hours for a decent PC
Bash:
. build/envsetup.sh
lunch havoc_RMX2185-userdebug
m bacon 2>&1 | tee log.txt
Get final flashable ROM zip
Code:
out/target/product/RMX2185/{ROM_NAME}.zip
Reserved
Blotooth not working, please help
Updated to 4.12
Havoc-OS-v4.12-20211221-RMX2185-Unofficial.zip​for the -Android- Generic Device/Other, by HemanthJabalpuri
OOPS!
no mirrors found.
why??
r4mskyy said:
Havoc-OS-v4.12-20211221-RMX2185-Unofficial.zip​for the -Android- Generic Device/Other, by HemanthJabalpuri
OOPS!
no mirrors found.
why??
Click to expand...
Click to collapse
Sorry, you can find mirror at here https://roms.cirrus-ci.workers.dev/0:/RMX2185/Havoc-OS-v4.12-20211221-RMX2185-Unofficial.zip
no erro?
Works okay except for one part -- System UI seems to die and start back up, then die, then start back up again. It gets annoying sometimes.
Using a Realme C12. (It calls my phone an RMX2185 instead of RMX2189)
GPS doesn't work. There's no gps.conf on it.

[A13]Lineage OS 20 build makefile error.Please help me!

I am building Lineage OS 20 on an i9100.
The development environment is Ubuntu 22.04 LTS and the device source code is from @ rINanDO.
So, I am facing this problem. I have everything ready and when I type "brunch i9100" I get the error in the image.
I have tried everything and keep getting the error so I am posting this.
Please help and advice me.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
yonekome said:
I am building Lineage OS 20 on an i9100.
The development environment is Ubuntu 22.04 LTS and the device source code is from rINanDO.
So, I am facing this problem. I have everything ready and when I type "brunch i9100" I get the error in the image.
I have tried everything and keep getting the error so I am posting this.
Please help and advice me.View attachment 5724229
Click to expand...
Click to collapse
Ask @rINanDO bro
Concept48 said:
Ask @rINanDO bro
Click to expand...
Click to collapse
I thought perhaps this was not an error due to his device source code, so I wrote here
yonekome said:
I am building Lineage OS 20 on an i9100.
The development environment is Ubuntu 22.04 LTS and the device source code is from @ rINanDO.
So, I am facing this problem. I have everything ready and when I type "brunch i9100" I get the error in the image.
I have tried everything and keep getting the error so I am posting this.
Please help and advice me.View attachment 5724229
Click to expand...
Click to collapse
I have the same issue when compiling Awaken A13. It's something related to clang, you should switch to clang proton. Let me know if you fixed it and how.
Nem1x said:
I have the same issue when compiling Awaken A13. It's something related to clang, you should switch to clang proton. Let me know if you fixed it and how.
Click to expand...
Click to collapse
Good job Nemix !!
yonekome said:
I thought perhaps this was not an error due to his device source code, so I wrote here
Click to expand...
Click to collapse
I fixed it by cloning Proton Clang and adding these lines to BoardConfig in device:
TARGET_KERNEL_CLANG_VERSION := proton
TARGET_KERNEL_CLANG_PATH := $(shell pwd)/prebuilts/clang/host/linux-x86/clang-proton
To clone proton clang run:
git clone --depth=1 https://github.com/kdrag0n/proton-clang.git prebuilts/clang/host/linux-x86/clang-proton
Nem1x said:
I fixed it by cloning Proton Clang and adding these lines to BoardConfig in device:
TARGET_KERNEL_CLANG_VERSION := proton
TARGET_KERNEL_CLANG_PATH := $(shell pwd)/prebuilts/clang/host/linux-x86/clang-proton
To clone proton clang run:
git clone --depth=1 https://github.com/kdrag0n/proton-clang.git prebuilts/clang/host/linux-x86/clang-proton
Click to expand...
Click to collapse
Nice bro , so soon Android 13 in the test bank
Nem1x said:
I fixed it by cloning Proton Clang and adding these lines to BoardConfig in device:
TARGET_KERNEL_CLANG_VERSION := proton
TARGET_KERNEL_CLANG_PATH := $(shell pwd)/prebuilts/clang/host/linux-x86/clang-proton
To clone proton clang run:
git clone --depth=1 https://github.com/kdrag0n/proton-clang.git prebuilts/clang/host/linux-x86/clang-proton
Click to expand...
Click to collapse
Thanks for the advice.
I have a question about a script to add to BoardConfig.
The place to add it is in my case
android/lineage/device/samsung/i9100/BoardConfig.mk
Click to expand...
Click to collapse
and
android/lineage/device/samsug/galaxys2-common/BoardCommonConfig.mk
Click to expand...
Click to collapse
at the bottom?
I ran clone proton clang command first and added the script to the above location, but the error did not go away.
Nem1x said:
TARGET_KERNEL_CLANG_VERSION := proton
TARGET_KERNEL_CLANG_PATH := $(shell pwd)/prebuilts/clang/host/linux-x86/clang-proton
Click to expand...
Click to collapse
Yeah it goes at. android/lineage/device/samsung/i9100/BoardConfig.mk
I think that it doesn't matter where you put it. Bottom of the file should work.
Nem1x said:
Yeah it goes at. android/lineage/device/samsung/i9100/BoardConfig.mk
I think that it doesn't matter where you put it. Bottom of the file should work.
Click to expand...
Click to collapse
Hmmm.
I apply them and still get an error.
I'm stumped.
Try to add these lines as well in BoardConfig:
KERNEL_LD := LD=ld.lld
TARGET_KERNEL_ADDITIONAL_FLAGS := DTC_EXT=$(shell pwd)/prebuilts/misc/linux-x86/dtc/dtc LLVM=1
Nem1x said:
Try to add these lines as well in BoardConfig:
KERNEL_LD := LD=ld.lld
TARGET_KERNEL_ADDITIONAL_FLAGS := DTC_EXT=$(shell pwd)/prebuilts/misc/linux-x86/dtc/dtc LLVM=1
Click to expand...
Click to collapse
I added them, but I get an error…
I think I found the solution.
kbuild: use HOSTLDFLAGS for single .c executables · PixelExperience-Devices/[email protected]
When compiling executables from a single .c file, the linker is also invoked. Pass the HOSTLDFLAGS like for other linker commands. Signed-off-by: Robin Jarry <[email protected]> Cc: Josh...
github.com
lavender: Disable LLVM_BINUTILS · PixelExperience-Devices/[email protected]
• LLVM is now enabled by default as google is moving away from GCC. • Kernel side patches are required and as of now our kernel isn't compaitable. • Refs- https://gerrit.pixelexperience.org/c/v...
github.com
I hope you can find paths.
Remove previous patches as well.
Nem1x said:
kbuild: use HOSTLDFLAGS for single .c executables · PixelExperience-Devices/[email protected]
When compiling executables from a single .c file, the linker is also invoked. Pass the HOSTLDFLAGS like for other linker commands. Signed-off-by: Robin Jarry <[email protected]> Cc: Josh...
github.com
lavender: Disable LLVM_BINUTILS · PixelExperience-Devices/[email protected]
• LLVM is now enabled by default as google is moving away from GCC. • Kernel side patches are required and as of now our kernel isn't compaitable. • Refs- https://gerrit.pixelexperience.org/c/v...
github.com
I hope you can find pataths.
Click to expand...
Click to collapse
It worked fine!
I added these.
~/android/lineage/kernel/samsung/smdk4412/scripts/Makefile.host
# Create executable from a single .c file
# host-csingle -> Executable
quiet_cmd_host-csingle = HOSTCC [email protected]
cmd_host-csingle = $(HOSTCC) $(hostc_flags) -o [email protected] $< \
cmd_host-csingle = $(HOSTCC) $(hostc_flags) $(HOSTLDFLAGS) -o [email protected] $< \
$(HOST_LOADLIBES) $(HOSTLOADLIBES_$(@F))
$(host-csingle): $(obj)/%: $(src)/%.c FORCE
$(call if_changed_dep,host-csingle)
Click to expand...
Click to collapse
and
~/android/lineage/device/samsung/i9100/BoardConfig.mk
# Kernel
TARGET_KERNEL_SOURCE := kernel/samsung/smdk4412
TARGET_KERNEL_LLVM_BINUTILS := false
BOARD_KERNEL_SEPARATED_DTBO := true
Click to expand...
Click to collapse
Thanks for the great support.
so did you manage to build lineage 20.0?
notnoelchannel said:
so did you manage to build lineage 20.0?
Click to expand...
Click to collapse
I did. I don't know about him.
notnoelchannel said:
so did you manage to build lineage 20.0?
Click to expand...
Click to collapse
50% complete, but new error.

Categories

Resources