Booting in EL2, for KVM use. - OnePlus 6 Questions & Answers

Hey guys,
Been working on a personal project, and came to this question, which also happens to be the first Im having to post about online..
Is it even possible to boot the kernel in EL2 mode with the sdm845 SoC ?
My end goal here being running qemu - which I'm already are - under KVM ( The tough part )
I Already tried enabling the necessary options in the kernel build, flashing them, with no success.
What I've been reading around is that since the system uses the TrustZone environment, this may not be possible.
[Kernel] Stock Android Pie kernel with KVM
I have been trying for some time now to enable KVM on the Pixel XL, by compiling the stock Google kernel and adding the KVM switches to "marlin_defconfig". Unfortunately, while the kernel with KVM compiles properly and could be flashed, /dev/kvm...
forum.xda-developers.com
On the other hand, under the chipset specifications I've been seen that only EL3 is really protected by the security implementations.
Documentation – Arm Developer
developer.arm.com
I know some exynos chipsets support booting in EL2 out of the box, but I see not much development for Qualcomm based ones.
ARM KVM (Kernel Virtual Machine) enabled Kernel for Samsung Galaxy S8
Hi. Can someone that compiles kernels for this phone compile one with KVM enabled and make it available to download? It should not be too hard. This would really make these machines appealing if you could spin up VMs on them especially...
forum.xda-developers.com
KVM
Limbo is a QEMU-based emulator for Android. It currently supports x86, ARM, PowerPC, and Sparc emulation for Intel x86 and ARM android devices. See wiki https://virtualmachinery.weebly.com for APK...
github.com
So, summing up, is it possible, and if so through what actions, to boot a kernel under LE2 mode on a snapdragon processor?
Also, side note, I'm willing to brick my device, if its worth the try, and adds to any progress of future development.
Edit1: Added links- sources
Cheers!

Sadly, with SDM845 it is impossible to enable KVM in android Linux kernels. As the kernel is booted under EL1 by the firmware. But with this firmware https://github.com/msm8916-mainline/qhypstub, msm8916/msm8935 can.

Is there a way to enable KVM for SM8450 (Snapdragon 8 gen 1) ? I would like to use Qemu on Galaxy Tab S8

linlin3309 said:
Sadly, with SDM845 it is impossible to enable KVM in android Linux kernels. As the kernel is booted under EL1 by the firmware. But with this firmware https://github.com/msm8916-mainline/qhypstub, msm8916/msm8935 can.
Click to expand...
Click to collapse
How i check my device booting with EL1 or EL2 ?
Via `dmesg` ?

Related

[Kernel] Stock Android Pie kernel with KVM

I have been trying for some time now to enable KVM on the Pixel XL, by compiling the stock Google kernel and adding the KVM switches to "marlin_defconfig".
Unfortunately, while the kernel with KVM compiles properly and could be flashed, /dev/kvm doesn't show up.
Analyzing the output of "dmesg" would show this offending line:
Code:
[ 1.039716] c3 1 kvm [1]: HYP mode not available
I know, however, that the SoC definitely supports KVM (it's based on the ARMv8-A architecture, which means that it has virtualization support, according to this page: https://www.linux-kvm.org/page/Processor_support).
I'm stumped. Can anybody tell me what to do? It would be greatly appreciated!
My marlin_defconfig is attached below.
WaseemAlkurdi said:
I have been trying for some time now to enable KVM on the Pixel XL, by compiling the stock Google kernel and adding the KVM switches to "marlin_defconfig".
Unfortunately, while the kernel with KVM compiles properly and could be flashed, /dev/kvm doesn't show up.
Analyzing the output of "dmesg" would show this offending line:
I know, however, that the SoC definitely supports KVM (it's based on the ARMv8-A architecture, which means that it has virtualization support, according to this page: https://www.linux-kvm.org/page/Processor_support).
I'm stumped. Can anybody tell me what to do? It would be greatly appreciated!
My marlin_defconfig is attached below.
Click to expand...
Click to collapse
This should have been posted in Q&A..
stebomurkn420 said:
This should have been posted in Q&A..
Click to expand...
Click to collapse
Was going to post it under Q&A, but changed my mind, since (a) it's a dev-related question warranting dev attention, and (b) I expect that this thread is going to become the "official" thread of the kernel once it's done.
Thanks for your concern though!
how does kvm affect the kernel? are you trying to add it just for the hell of it? or wanting to work on something bigger?
ztotherad said:
how does kvm affect the kernel? are you trying to add it just for the hell of it? or wanting to work on something bigger?
Click to expand...
Click to collapse
@ztotherad
It's already built-in the kernel sources, but I'm trying to enable it. I am actually attempting to run QEMU in KVM mode as to emulate both Linux and (most importantly) Windows 10 ARM. at native speeds.
I have QEMU built (Limbo's is too old, so I built it myself from source), I just need KVM.
WaseemAlkurdi said:
@ztotherad
It's already built-in the kernel sources, but I'm trying to enable it. I am actually attempting to run QEMU in KVM mode as to emulate both Linux and (most importantly) Windows 10 ARM. at native speeds.
I have QEMU built (Limbo's is too old, so I built it myself from source), I just need KVM.
Click to expand...
Click to collapse
You can't use kvm even If you enable it in kernel.KVM on ARM is based on the ARM virtualization support, i.e. you'll need ARM EL2 permission (on ARMv8) or HYP (on ARMv7).Just like on x86 , you'll have to enable VT-X or AMD-V in BIOS or so.
However sadly, on Qualcomm devices, EL2 isn't designed to be in our reach, even If you unlock bootloader ,all you'll get is full control of EL1.EL2 is instead running QHEE,which is basically for security.So if you still want to run kvm on a Qualcomm device you'll at least either need a prototype device(unfused) to custom qualcomm bootloaders and underlying stuffs, and let your kernel running in EL2, or need a really really powerful exploit like trustzone exploit, to take the control of EL2, EL3, breaking chain-of-trust etc.
Android phones are mostly designed for security concerns and mostly shipped without hypervisor permission.However there are some exceptions like Samsung Exynos that allows you to switch to EL2 with some specific ways.
fxsheep said:
You can't use kvm even If you enable it in kernel.KVM on ARM is based on the ARM virtualization support, i.e. you'll need ARM EL2 permission (on ARMv8) or HYP (on ARMv7).Just like on x86 , you'll have to enable VT-X or AMD-V in BIOS or so.
However sadly, on Qualcomm devices, EL2 isn't designed to be in our reach, even If you unlock bootloader ,all you'll get is full control of EL1.EL2 is instead running QHEE,which is basically for security.So if you still want to run kvm on a Qualcomm device you'll at least either need a prototype device(unfused) to custom qualcomm bootloaders and underlying stuffs, and let your kernel running in EL2, or need a really really powerful exploit like trustzone exploit, to take the control of EL2, EL3, breaking chain-of-trust etc.
Android phones are mostly designed for security concerns and mostly shipped without hypervisor permission.However there are some exceptions like Samsung Exynos that allows you to switch to EL2 with some specific ways.
Click to expand...
Click to collapse
Thanks for the reply! (Apologies for the extreme delay)
You said:
.However there are some exceptions like Samsung Exynos that allows you to switch to EL2 with some specific ways.
Click to expand...
Click to collapse
Can you provide any examples?
WaseemAlkurdi said:
Thanks for the reply! (Apologies for the extreme delay)
You said:
Can you provide any examples?
Click to expand...
Click to collapse
https://github.com/limboemu/limbo/wiki/KVM
I dunno if this works.(Samsung S8 example)Afaik on Exynos you need a special SMC call to the secure monitor (ARM EL3)
fxsheep said:
https://github.com/limboemu/limbo/wiki/KVM
I dunno if this works.(Samsung S8 example)Afaik on Exynos you need a special SMC call to the secure monitor (ARM EL3)
Click to expand...
Click to collapse
I've seen that link. It's basically a kernel compilation guide.
It also makes a serious mistake: that an x86 VM would be able to make use of arm64 KVM. This is impossible.
But what I haven't seen anywhere is this:
a special SMC call to the secure monitor (ARM EL3)
Click to expand...
Click to collapse
Any pointers?
WaseemAlkurdi said:
I've seen that link. It's basically a kernel compilation guide.
It also makes a serious mistake: that an x86 VM would be able to make use of arm64 KVM. This is impossible.
But what I haven't seen anywhere is this:
Any pointers?
Click to expand...
Click to collapse
https://t.me/raspberrypiwoa/34623
https://t.me/raspberrypiwoa/34624
https://t.me/raspberrypiwoa/34625
---------- Post added at 10:56 AM ---------- Previous post was at 10:54 AM ----------
WaseemAlkurdi said:
I've seen that link. It's basically a kernel compilation guide.
It also makes a serious mistake: that an x86 VM would be able to make use of arm64 KVM. This is impossible.
But what I haven't seen anywhere is this:
Any pointers?
Click to expand...
Click to collapse
btw,
https://t.me/c/1160371980/102118
Arm el2 patch
I was searching about KVM and I found that to linux/Android must be boot in EL2 mode for KVM to be work
And I found arm64 el2 patch :
https://patchwork.kernel.org/patch/6749811/
So I would say that try this patch,compile kernel again and install it and paste result here.
If it doesn't work,then try xen virtualiztion but first try this patch
Thank you, waiting for result
Ever get this to work?
WaseemAlkurdi said:
I have been trying for some time now to enable KVM on the Pixel XL, by compiling the stock Google kernel and adding the KVM switches to "marlin_defconfig".
Unfortunately, while the kernel with KVM compiles properly and could be flashed, /dev/kvm doesn't show up.
Analyzing the output of "dmesg" would show this offending line:
Code:
[ 1.039716] c3 1 kvm [1]: HYP mode not available
I know, however, that the SoC definitely supports KVM (it's based on the ARMv8-A architecture, which means that it has virtualization support, according to this page: https://www.linux-kvm.org/page/Processor_support).
I'm stumped. Can anybody tell me what to do? It would be greatly appreciated!
My marlin_defconfig is attached below.
Click to expand...
Click to collapse
I was wondering if you ever got this to work, since I have an exynos device and am trying to get kvm to work too. Also you ever try this: https://patchwork.kernel.org/[email protected]/ patch? Cause if not I might give it a ago.
Same here, enabled the necessary kernel flags, flashed, but still dmesg informs me my cores are at EL1.
Seems @fxsheep has a clear point, but, who knows.
*I'm using the sdm 845 SoC on oneplus6
Any progress on your side?
Sleirsgoevy could get into EL2 and could use kvm.
See it here
raspiduino said:
Sleirsgoevy could get into EL2 and could use kvm.
See it here
Click to expand...
Click to collapse
This just uses Exynos-specific exploit, and as such useless for Snapdragon devices.

Exynos BootROM exploit question

Hi all,
I see that unsigned "raw binary aarch64 executables" can be run using the recently developed tool here:
https://github.com/frederic/exynos-usbdl
My question is - does this open up the possibility to get a mainline u-boot.bin (and using that, mainline linux kernel) running on the Exynos S7? That would be exciting...
Thanks all,
Jack K
no, because it only bypasses FLASH signature checking, but exynos bootrom always checks on boot if it is oem signed bootloader or some other custom bootloader. mainline linux MAYBE could be possible for just one boot, because it will stay in memory of course, but don't think that there will be some super new and super cool technology that will allow to change bootrom, because that won't happen, bootrom is placed directly in cpu memory, only way to change bootrom is to change the cpu
On the contrary all you need is the bootROM as uboot. If you were to want the phone running on a linux environment you could always port a linux build into a gsi or create a multiboot script. Or even more crafier yet you could make an OTA with an alternate fstab?

[NON-ANDROID]Native Linux thread for A8/A8+ (Arch Linux ARM, postmarketOS, ect.)

This thread is for native Linux development on Galaxy A8/A8+. This means no Halium here. It's also aimed at people who know how to compile their stuff, ect., so don't complain to me about no fancy zip installer.
I have made some fixes in our DECON framebuffer driver, ect that makes TTY, and Xorg, and anything that uses the framebuffer work! (Based on @prashantp01's Quantum Quack kernel because that's what I had at the time and it's a good kernel).
I have tested this using Arch Linux ARM (ALARM), and it boots just fine!
A postmarketOS tree for the regular A8 is in the way of being merged, and I need someone to try the A8+ version.
Please provide a photo of the phone running PostmarketOS with weston on A8+!
Prebuilt zip for A8+ and A8 with postmarketOS weston (not really useful, but good for screenshot) here:
A8: https://drive.google.com/file/d/1cVamhYGmBrDVrzzcIVyCmhLHJIQ3u3Xq/view?usp=sharing
A8+: https://drive.google.com/file/d/1xe9rFu4TRzxmM9yV4lINOHOHsEQ2TD0O/view?usp=sharing
This may also be useful for other 7885 and 7885 based (7884 variants, 7904) devices as well!
What currently works on Arch (and probably on any other native linux distro):
Booting (Arch Linux sometimes hangs on "Triggering uevents" for a few minutes, sometimes boots instantly)
Screen (inc. brightness and turning on/off (due to a hacky workaround in kernel, the screen may show a corrupted screen for a split second when turning on)
Framebuffer console (TTY)
Xorg (unaccelerated)
Touchscreen
Hardware buttons
Battery indicator (detects some other stuff as batteries/charging ports too ATM)
USB OTG (Mouse, keyboard, ect)
(After adding some configs)USB SSH, and web access from PC using USB
Basically anything using Xorg (LightDM, Xfce, GNOME, KDE Plasma, Firefox, Chromium, GIMP, VLC, ect ect ect)
Anything that can use framebuffer (weston's framebuffer backend)
NOTE: This is a guide assumes you know how to do some stuff. For some help you can also reference this
Rough instructions for Arch Linux (Using prebuilt boot.img):
Partition your SD card (using PC or something) so that your second partition will contain your rootfs (the boot.imgs provided use the 2nd SD card partition as root! Change in defconfig if you are building your kernel.)
Install the generic version of ARMv8 Arch Linux ARM to the second partition of your SD card.
Install additional packages by chrooting from Android, or using USB networking
(For dual-boot) back up boot.img
Install the correct boot.img.
To boot back into Android, restore your boot.img
Prebuilt Arch Linux boot.imgs
Source code
VDavid003 said:
This thread is for native Linux development on Galaxy A8/A8+. This means no Halium here. It's also aimed at people who know how to compile their stuff, ect., so don't complain to me about no fancy zip installer.
I have made some fixes in our DECON framebuffer driver, ect that makes TTY, and Xorg, and anything that uses the framebuffer work! (Based on @prashantp01's Quantum Quack kernel because that's what I had at the time and it's a good kernel).
I have tested this using Arch Linux ARM (ALARM), and it boots just fine! A postmarketOS port will follow soon!
This may also be useful for other 7885 and 7885 based (7884 variants, 7904) devices as well!
What currently works on Arch (and probably on any other native linux distro):
Booting (Arch Linux sometimes hangs on "Triggering uevents" for a few minutes, sometimes boots instantly)
Screen (inc. brightness and turning on/off (due to a hacky workaround in kernel, the screen may show a corrupted screen for a split second when turning on)
Framebuffer console (TTY)
Xorg (unaccelerated)
Touchscreen
Hardware buttons
Battery indicator (detects some other stuff as batteries/charging ports too ATM)
USB OTG (Mouse, keyboard, ect)
(After adding some configs)USB SSH, and web access from PC using USB
Basically anything using Xorg (LightDM, Xfce, GNOME, KDE Plasma, Firefox, Chromium, GIMP, VLC, ect ect ect)
Anything that can use framebuffer (weston's framebuffer backend)
NOTE: This is a guide assumes you know how to do some stuff. For some help you can also reference this
Rough instructions for Arch Linux (Using prebuilt boot.img):
Partition your SD card (using PC or something) so that your second partition will contain your rootfs (the boot.imgs provided use the 2nd SD card partition as root! Change in defconfig if you are building your kernel.)
Install the generic version of ARMv8 Arch Linux ARM to the second partition of your SD card.
Install additional packages by chrooting from Android, or using USB networking
(For dual-boot) back up boot.img
Install the correct boot.img.
To boot back into Android, restore your boot.img
Prebuilt Arch Linux boot.imgs
Source code
Click to expand...
Click to collapse
Thanks david
VDavid003 said:
This thread is for native Linux development on Galaxy A8/A8+. This means no Halium here. It's also aimed at people who know how to compile their stuff, ect., so don't complain to me about no fancy zip installer.
I have made some fixes in our DECON framebuffer driver, ect that makes TTY, and Xorg, and anything that uses the framebuffer work! (Based on @prashantp01's Quantum Quack kernel because that's what I had at the time and it's a good kernel).
I have tested this using Arch Linux ARM (ALARM), and it boots just fine! A postmarketOS port will follow soon!
This may also be useful for other 7885 and 7885 based (7884 variants, 7904) devices as well!
What currently works on Arch (and probably on any other native linux distro):
Booting (Arch Linux sometimes hangs on "Triggering uevents" for a few minutes, sometimes boots instantly)
Screen (inc. brightness and turning on/off (due to a hacky workaround in kernel, the screen may show a corrupted screen for a split second when turning on)
Framebuffer console (TTY)
Xorg (unaccelerated)
Touchscreen
Hardware buttons
Battery indicator (detects some other stuff as batteries/charging ports too ATM)
USB OTG (Mouse, keyboard, ect)
(After adding some configs)USB SSH, and web access from PC using USB
Basically anything using Xorg (LightDM, Xfce, GNOME, KDE Plasma, Firefox, Chromium, GIMP, VLC, ect ect ect)
Anything that can use framebuffer (weston's framebuffer backend)
NOTE: This is a guide assumes you know how to do some stuff. For some help you can also reference this
Rough instructions for Arch Linux (Using prebuilt boot.img):
Partition your SD card (using PC or something) so that your second partition will contain your rootfs (the boot.imgs provided use the 2nd SD card partition as root! Change in defconfig if you are building your kernel.)
Install the generic version of ARMv8 Arch Linux ARM to the second partition of your SD card.
Install additional packages by chrooting from Android, or using USB networking
(For dual-boot) back up boot.img
Install the correct boot.img.
To boot back into Android, restore your boot.img
Prebuilt Arch Linux boot.imgs
Source code
Click to expand...
Click to collapse
So one can boot Armbian on A8+ as we do with Android box? Where is dtb for this?
p5uresh said:
So one can boot Armbian on A8+ as we do with Android box? Where is dtb for this?
Click to expand...
Click to collapse
Yes you could probably boot it. The dtb is inside the boot.img
Try installing it to an sd card, chrooting into it from android, generating an initramfs, then replacing the initramfs in the boot.img with the one you generated. (Maybe it could even work without that, wiht arch's initramfs?)
VDavid003 said:
Yes you could probably boot it. The dtb is inside the boot.img
Try installing it to an sd card, chrooting into it from android, generating an initramfs, then replacing the initramfs in the boot.img with the one you generated. (Maybe it could even work without that, wiht arch's initramfs?)
Click to expand...
Click to collapse
OK
Thanks.
postmarketOS tree on the way! Please someone send photo of A8+ running it! Info in first post!
this is absolutely amazing, thank you for the work
im very happy with gentoo linux on my phone haha
saraphiem said:
this is absolutely amazing, thank you for the work
im very happy with gentoo linux on my phone haha
Click to expand...
Click to collapse
You got gentoo to boot? How did the drivers and compatability work out? I am asking this quite seriously as I do want to port it to my own device in the future.
Please update download links
Fandroid Tech said:
You got gentoo to boot? How did the drivers and compatability work out? I am asking this quite seriously as I do want to port it to my own device in the future.
Click to expand...
Click to collapse
well, it boots, tty works as expected with a phsyical keyboard lmao
the power button interestingly triggers a reboot, openrc & sysvinit goes through the "proper" shutdown process
i wasn't able to get much more than that working, unfortunately :c
saraphiem said:
well, it boots, tty works as expected with a phsyical keyboard lmao
the power button interestingly triggers a reboot, openrc & sysvinit goes through the "proper" shutdown process
i wasn't able to get much more than that working, unfortunately :c
Click to expand...
Click to collapse
I tried running it in a chroot, running gentoo on an 10 year old armhf cpu was hell in itself. The bigger problem was trying to update an old system. The closest anybody has gotten to gentoo mobile is sharkbait os, but that was just a chroot I think.
Fandroid Tech said:
I tried running it in a chroot, running gentoo on an 10 year old armhf cpu was hell in itself. The bigger problem was trying to update an old system. The closest anybody has gotten to gentoo mobile is sharkbait os, but that was just a chroot I think.
Click to expand...
Click to collapse
haha sure does take a while to compile things

How to reflash Galaxy A02s with 64bit Android

Hello forum guys, I've registered now to see if any enlightened souls could help me.
So straight to the problem...As stated in the title I have a Galaxy A02s and I am having problems with its Android.
I did a lot of research but I'm just getting more doubts, I read things like custom mod, kernel 64, treble info, and so on.
I will specify my device with the Aida64 information for better understanding:
Chipset: Qualcomm Snapdragon 450
Core Architecture: 8x ARM CORTEX-A53 @ 1804MHz
Manufacturing Process: 14nm
Instruction Set: 64-bit ARMv8-A (32-bit Mode)
And Treble Info says:
In the Architecture part: "Your device is ARM32 but uses a 64-bit binder. This usually indicates that the hardware supports 64-bits but the software does not. In this case, a 'binder64' or 'a64' image should be used. "
And in the Image Requested part: "Your device needs an image file called 'system-arm32_binder64-ab.img.xz.'"
I don't know if this Treble has anything to do with leaving Android in 64-bit, but I was researching and researching and that's what I got, however, I have little knowledge about these things and I didn't find any tutorial teaching how to install/update to 64-bit
That's it, I hope you can help me, thank you in advance
What's your real problem?
Any 64-bit SoC flawlessly runs 32-bit Android OS and 32-bit apps
jwoegerbauer said:
What's your real problem?
Click to expand...
Click to collapse
sorry, stopping to read again what i wrote i realized i didn't specify what i needed help lol
So I just don't want this 32-bit mode, I googled to see if my processor had architecture to run in 64-bit, and apparently yes, so I wanted to put android in 64-bit, but I have no idea of how to do this
thanks again
Replace this thread's title by your real problem: How to reflash Galaxy A20s with 64bit Android
Certainly, you flashed a 32bits system.
Just flash a 64bits system.
VD171 said:
Certainly, you flashed a 32bits system.
Just flash a 64bits system.
Click to expand...
Click to collapse
I bought the phone and it came like this, but how do I do it ? To a 64bits system
I'm also with the same problem, I would need some ROM for the 64-bit system, but I realized that there is none so far, is there any other way to change it to 64-bit without changing the ROM?
Short answer: NO
Short answer: NEVER
I'd like to ask how is the 32bit system with the 64bit system?
Releases · EnesSastim/Downloads
Contribute to EnesSastim/Downloads development by creating an account on GitHub.
github.com
Bump thread
Bumped thread, again.

s5 neo 64bit capabilities & custom roms

i picked up on a s5 neo because of the 64bit cpu over the snapdragon 801, cost only 60$ and is supported by lineage-os to my surprise the latest official version of it runs on 32bit even though the cpu can run 64bit, i did look at phone info [samsung] on the stock rom and it ran in 32 bit as well, the most i know about it is that it was android 6.0.1, so my questions is will lineage-os put this phone on 64bit since it can run it and did it ever have 64bit support at all from android, because i didn't try android 7 at all, i did try the Cosmic-Kernel that appears to run in 64bit but truth be told i haven't got a clue what im doing as to install it so i didn't try to hard to install it, heres a link to the github for it
https://github.com/Cosmic-Kernel/android_kernel_samsung_s5neolte
You have to distinguish between a device's Linux kernel and device's Android OS. Both are different to each device.
A kernel for Android OS basically is a mainstream Linux kernel, with additional drivers for the specific device, and other additional functionality, such as enhanced power management or faster graphics support.
If I'm not mistaken the kernel determines if the OS is 32bit, not necessarily the OS am I right or can the OS and kernel be 32bit
Actually any 64-bit ARM SoC can run 32-bit software ( Linux kernel -> modules, Android OS -> libraries & executables ) due to its 32-bit compatibilty mode.
This will change: ARM has announced that from 2023, all of its new smartphone CPU cores will be 64-bit only, with no 32-bit compatibility mode.
BTW:
Have never heard that Linux kernel determines whether Android OS has to run in 32-bit mode or 64-bit mode.
jwoegerbauer said:
Actually any 64-bit ARM SoC can run 32-bit software ( Linux kernel -> modules, Android OS -> libraries & executables ) due to its 32-bit compatibilty mode.
This will change: ARM has announced that from 2023, all of its new smartphone CPU cores will be 64-bit only, with no 32-bit compatibility mode.
BTW:
Have never heard that Linux kernel determines whether Android OS has to run in 32-bit mode or 64-bit mode.
Click to expand...
Click to collapse
jwoegerbauer said:
Actually any 64-bit ARM SoC can run 32-bit software ( Linux kernel -> modules, Android OS -> libraries & executables ) due to its 32-bit compatibilty mode.
This will change: ARM has announced that from 2023, all of its new smartphone CPU cores will be 64-bit only, with no 32-bit compatibility mode.
BTW:
Have never heard that Linux kernel determines whether Android OS has to run in 32-bit mode or 64-bit mode.
Click to expand...
Click to collapse
I know of running 32bit software on a 64 bit processor works on the same way with typical desktops and laptops, I'm trying to figure out how to make it run in 64bit mode, and determine the easiest way to do it

Categories

Resources