Android Enthusiasts
Q&A for enthusiasts and power users of the Android operating system
Latest Questions
2
votes
3
answers
2433
views
Modifications of vendor image on Android 10
There is a vendor image in my device I want to change (unpack/mount, doing changes, pack/umount). My purpose is to update `boot.img` with my new kernel (in a rooted device). Unfortunately, it does not work due to incompatible versions between a newly compiled kernel (my compilation) to the previous...
There is a vendor image in my device I want to change (unpack/mount, doing changes, pack/umount). My purpose is to update
boot.img
with my new kernel (in a rooted device). Unfortunately, it does not work due to incompatible versions between a newly compiled kernel (my compilation) to the previous kernel modules stored in vendor.img
. As I figure it, I need to update the old ko
executables stored in vendor.img
in my product.
The first step is to do dd
from my device and adb pull
it out to my build environment. While I tried to do a mount on vendor.img
, I discovered it not working due share_blocks
attribute blocking it to mount as RW (dmesg
wrote: "...unsupported optional features (4000)"), To solve it, running the following command
e2fsck -y -E unshare_blocks vendor.img
will disable the share_blocks
feature that prevented me to do mount as RW. Of course, doing mount RW works correctly.
In the last phase, I tried to replace files in the vendor
filesystem and then I discovered another challenge into my way, Unfortunately, there was a problem with limited space in the file system,
For example: In case I want to replace the kernel module called abc.ko
, deleting the file doesn't show any new free space in the file system. At this point, I can't update the old kernel modules with the new ones (compatible with the newly compiled kernel). Of course, running df -h .
returned no free space and 100% used.
Does anyone have any idea what I need to do?
sivandahan
(43 rep)
Sep 19, 2021, 11:28 AM
• Last activity: Mar 27, 2025, 03:25 PM
1
votes
1
answers
893
views
How to build and flash Pixel 8 platform and kernel
I am a complete newbie to AOSP and I'm having trouble building and flashing android kernel for Pixel 8. I've been trying to follow [Building Pixel Kernels](https://source.android.com/docs/setup/build/building-pixel-kernels) instructions, but I'm experiencing some issues. I think my problem is that *...
I am a complete newbie to AOSP and I'm having trouble building and flashing android kernel for Pixel 8.
I've been trying to follow [Building Pixel Kernels](https://source.android.com/docs/setup/build/building-pixel-kernels) instructions, but I'm experiencing some issues. I think my problem is that **I don't know which platform manifest branch to use with which kernel manifest branch.**
- When I try to [flash the device using flash.android.com](https://source.android.com/docs/setup/build/building-pixel-kernels#flash_the_device_using_flashandroidcom) , there are no instructions on which platform and kernel combination is supported for Pixel 8 device (there's [a table](https://source.android.com/docs/setup/build/building-pixel-kernels#supported-kernel-branches) but it only has information regarding Pixel 6). I tried flashing
git-aosp-main-with-phones
, but after flashing the kernel, Pixel 8 will not boot correctly. I built the kernel by repo init & sync -ing android-gs-shusky-5.15-android14-d1
branch from android kernel manifest. I followed [the guide](https://source.android.com/docs/setup/build/building-pixel-kernels#download_and_compile_the_kernel) from the same instructions mentioned above for fetching kernel source, building it, and flashing it. But the device only displays android logo and after a few minutes, kernel panics.
- I decided to try fetching and building the platform myself, and I tried following combinations:
- platform manifest android-14.0.0_r27
and kernel manifest android-gs-shusky-5.15-android14-d1
- results: kernel panics after a couple of minutes
- platform manifest android-14.0.0_r6
and kernel manifest android-gs-shusky-5.15-android14-qpr1
- results: kernel doesn't panic, but Pixel 8 displays Google logo and doesn't proceed
If someone could point me to a working platform and kernel combination for Pixel 8, (or if I'm doing something else wrong) it would be extremely helpful!
min893
(11 rep)
Mar 11, 2024, 03:09 AM
• Last activity: Feb 17, 2025, 07:29 AM
1
votes
0
answers
51
views
Error during kernel build Google Pixel 5
I am building a kernel for a google pixel 5 (first time, guides here have been a huge help!). **Getting to the issue:** I'm trying out the following steps as they seem to be tailored to what I'm doing and using menuconfig cause lots of issues. https://groups.google.com/g/android-building/c/6HPwJloQ...
I am building a kernel for a google pixel 5 (first time, guides here have been a huge help!).
**Getting to the issue:**
I'm trying out the following steps as they seem to be tailored to what I'm doing and using menuconfig cause lots of issues.
https://groups.google.com/g/android-building/c/6HPwJloQkP8/m/oopcu67nAQAJ (response by Droid SMU with the step by step).
Now, after running ./build_redbull.sh from the top directory, the following issue appears:
INSTALL techpack/video/msm/msm-vidc.ko
DEPMOD 4.19.135
========================================================
Building external modules and installing them into staging directory
+ make -C private/msm-google-modules/wlan/qcacld-3.0 M=../msm-google-modules/wlan/qcacld-3.0 KERNEL_SRC=/local/home/bd/android/kernel/private/msm-google O=/local/home/bd/android/kernel/out/android-msm-pixel-4.19/private/msm-google CC=clang HOSTCC=clang LD=ld.lld HOSTLD=ld.lld HOSTLDFLAGS=-fuse-ld=lld NM=llvm-nm OBJCOPY=llvm-objcopy DEPMOD=depmod
make: Entering directory '/local/home/bd/android/kernel/private/msm-google-modules/wlan/qcacld-3.0'
make -C /local/home/bd/android/kernel/private/msm-google M=../msm-google-modules/wlan/qcacld-3.0 modules WLAN_ROOT=/local/home/bd/android/kernel/private/msm-google-modules/wlan/qcacld-3.0 MODNAME?=wlan CONFIG_QCA_WIFI_ISOC=0 CONFIG_QCA_WIFI_2_0=1 CONFIG_QCA_CLD_WLAN=m
make: Entering directory '/local/home/bd/android/kernel/private/msm-google'
make: Entering directory '/local/home/bd/android/kernel/out/android-msm-pixel-4.19/private/msm-google'
/local/home/bd/android/kernel/private/msm-google/../msm-google-modules/wlan/qcacld-3.0/Kbuild:48: ../../../../../aosp_groups_version//local/home/bd/android/kernel/private/msm-google-modules/wlan/qcacld-3.0/configs/default_defconfig: No such file or directory
make: *** No rule to make target '../../../../../aosp_groups_version//local/home/bd/android/kernel/private/msm-google-modules/wlan/qcacld-3.0/configs/default_defconfig'. Stop.
make: *** [/local/home/bd/android/kernel/private/msm-google/Makefile:1661: _module_../msm-google-modules/wlan/qcacld-3.0] Error 2
make: Leaving directory '/local/home/bd/android/kernel/out/android-msm-pixel-4.19/private/msm-google'
make: *** [Makefile:146: sub-make] Error 2
make: Leaving directory '/local/home/bd/android/kernel/private/msm-google'
make: *** [Makefile:26: all] Error 2
make: Leaving directory '/local/home/bd/android/kernel/private/msm-google-modules/wlan/qcacld-3.0'
Click to collapse
I checked the Kbuild line 48 mentioned (make line) and it looks like this:
48 include $(WLAN_ROOT)/configs/$(CONFIG_QCA_CLD_WLAN_PROFILE)_defconfig
The arguments are:
WLAN_ROOT := drivers/staging/qcacld-3.0
CONFIG_QCA_CLD_WLAN_PROFILE ?= $(WLAN_PROFILE)
What is worrying me is also the double // in the path aosp_groups_version//local (the make line).
**The question:**
I tried looking around in the forum but found nothing similar, has someone maybe encountered this? Or how would I go around trying to fix/debug a problem like this?
dsisko
(11 rep)
Jan 16, 2025, 08:27 AM
• Last activity: Jan 16, 2025, 08:28 AM
2
votes
1
answers
135
views
What is binder doing what unix sockets and sysv ipc can not?
Android has this binder thing. If I understand it well, from my linux-centered viewpoint, it is a char device in /dev, and apps are using it for some interprocess communication. Linux kernel has already a lot of things for that. Most imporantly, we can have shared memory, locks and unix sockets. Wha...
Android has this binder thing. If I understand it well, from my linux-centered viewpoint, it is a char device in /dev, and apps are using it for some interprocess communication.
Linux kernel has already a lot of things for that. Most imporantly, we can have shared memory, locks and unix sockets.
What is binder doing and how?
peterh
(1176 rep)
Jan 4, 2025, 11:13 AM
• Last activity: Jan 11, 2025, 05:19 PM
1
votes
0
answers
98
views
How to add mt7601u driver in android kernel 3.18.140?
I have rooted Redmi 4x (santoni) with installed Lineage-14.1 (Nougat, kernel is 3.18.140-Loup) and mediatek mt7601u wifi adapter. Last week was spent to connect this adapter to use with Nethunter, but I still have no success. The [kernel source][1] doesn't contain driver for this adapter. There is w...
I have rooted Redmi 4x (santoni) with installed Lineage-14.1 (Nougat, kernel is 3.18.140-Loup) and mediatek mt7601u wifi adapter. Last week was spent to connect this adapter to use with Nethunter, but I still have no success. The kernel source doesn't contain driver for this adapter. There is working kernel with the driver, but it's made for android 11 and 10 (installing on android 7 causes bootloop). I don't want to change my ROM.
I tried using driver from the linked kernel and from the linux repository, but they are incompatible with my kernel (compilation terminated). I also tried compiling kernel module from the repository . This module does nothing, no matter if there is firmware in /etc/wireless.
Expected: new wireless interface ra0 or wlan1 after connecting the device via OTG. Reality: only power supply and some strings about the device in dmesg(pid, vid, manufacturer, etc).
How to add the mt7601u driver in android kernel 3.18.140?
Эльдар Гатин
(11 rep)
Jan 1, 2025, 10:10 AM
• Last activity: Jan 2, 2025, 09:34 AM
3
votes
1
answers
6418
views
Booting kernel from fastboot
We all have heard of `fastboot boot xxxx` command. How does it work when you use it for the kernel (`fastboot boot boot.img`)? 1. Does it boot Android with that kernel if possible, or does it make that kernel permanent? If not, how does it work? 2. Does it just put the kernel you specified in RAM in...
We all have heard of
fastboot boot xxxx
command.
How does it work when you use it for the kernel (fastboot boot boot.img
)?
1. Does it boot Android with that kernel if possible, or does it make that kernel permanent? If not, how does it work?
2. Does it just put the kernel you specified in RAM instead of one in internal memory?
3. Also, what happens if the kernel can't boot for some reason? Does it soft-brick the device or just boot the existing kernel?
4. And if the kernel is ok and it boots, how to get back to using the kernel from internal memory?
Једноруки Крстивоје
(1835 rep)
Aug 11, 2017, 04:58 PM
• Last activity: Dec 8, 2024, 02:30 PM
0
votes
0
answers
371
views
Install Linux on Android phones (bare metal but with needed drivers)
So, to summarise the questions: 1. How do I get the bootloader to work if I want to install Linux ARM distro on Android phones (in this case, OnePlus 5T) 2. Is it possible to copy drivers in `/vendor` in any possible way to my Linux install and get it to work? Details: I've installed Ubuntu Touch on...
So, to summarise the questions:
1. How do I get the bootloader to work if I want to install Linux ARM distro on Android phones (in this case, OnePlus 5T)
2. Is it possible to copy drivers in
/vendor
in any possible way to my Linux install and get it to work?
Details:
I've installed Ubuntu Touch on my OnePlus 5T phone. After some experience with it, I found that it's not fun so I want to switch to other distros that allow me to install whatever GUI I want, 99% open-source (no Snap), be able to get into tty, and compile a custom kernel. Basically, most functionalities that could be found on x86 Linux distros. (It would be best if it's Gentoo)
However, there are 2 big problems that I couldn't get over with: bootloaders and modules.
From installing Gentoo Linux by hand, I'm pretty familiar with installing bootloaders with Grub on EFI. But there's no such thing as BIOS or EFI on phones (just fastboot), and as for the drivers, on Ubuntu Touch (which is supposed to be more "Linux" than "Android") don't have kernel modules .ko
file but says all the drivers are in /vendor
.
Since I cannot boot from USB in phones but am able to install alternative OS from flashing .img files, I have come up with a way to install Linux on phones (ignoring driver and bootloader issues):
1. Plug a USB drive on the phone and mount it to a directory
2. In the directory, download and extract Gentoo/Arch/etc. stage tarball
3. chroot
into the Linux environment and try all I can to install Linux on it
4. Unplug the USB drive, mount it on my Linux PC, and dd
into a .img file
5. Flash the .img file in whatever way
Is it possible, if so, how/why not?
I know that Android is based on the Linux kernel, but it's still much different from Linux distros that I've seen. I have much less Android knowledge than Linux, so feel free to correct my misunderstandings.
gentoo user Vergil
(1 rep)
Oct 1, 2024, 05:12 PM
• Last activity: Oct 2, 2024, 02:16 PM
1
votes
1
answers
84
views
Installing kernel from another device
I installed Samsung Galaxy S9 firmware (Android 8.0) on a Samsung Galaxy Note9 because they have almost the same specifications, but the problem is that some drivers don't work correctly (fingerprint, camera, audio). Can I install the Note9 kernel on a Galaxy S9 firmware for the drivers to work corr...
I installed Samsung Galaxy S9 firmware (Android 8.0) on a Samsung Galaxy Note9 because they have almost the same specifications, but the problem is that some drivers don't work correctly (fingerprint, camera, audio).
Can I install the Note9 kernel on a Galaxy S9 firmware for the drivers to work correctly?
sans400
(11 rep)
Aug 28, 2024, 09:10 AM
• Last activity: Aug 29, 2024, 02:51 PM
0
votes
0
answers
124
views
Building Android GKI kernel using "make"
I have kernel source for Qualcomm Snapdragon Kalama SOC. I wan't to build it, but i cannot use bazel as i'm building from Termux environment. The kernel is based on GKI. How to build the GKI kernel and the vendor modules using "make"? Should i merge GKI defconfig and vendor defconfig?
I have kernel source for Qualcomm Snapdragon Kalama SOC. I wan't to build it, but i cannot use bazel as i'm building from Termux environment. The kernel is based on GKI. How to build the GKI kernel and the vendor modules using "make"? Should i merge GKI defconfig and vendor defconfig?
Wolverine
(41 rep)
Aug 23, 2024, 01:35 PM
7
votes
1
answers
19574
views
Backup/dump kernel image (and full ROM) without root for Mediatek Devices
I would like to pull the boot image of my device Pipo N7. I don't have root. I found the following link: [Backup/dump kernel image without root or twrp/cwm][1]` But when I try to `find /dev -name 'by-name' 2>/dev/null` I can't get it to work it seems I need root. Is there any other way to get the bo...
I would like to pull the boot image of my device Pipo N7. I don't have root.
I found the following link:
Backup/dump kernel image without root or twrp/cwm `
But when I try to
find /dev -name 'by-name' 2>/dev/null
I can't get it to work it seems I need root.
Is there any other way to get the boot image pulled without root?
P.S. I would have commented on that link but I'm not allowed to since I don't have enough reputation.
Sruly
(1028 rep)
Oct 30, 2018, 03:57 PM
• Last activity: Jul 22, 2024, 12:15 PM
1
votes
0
answers
238
views
Boot Pixel 8 with AOSP kernel
I am currently using Google Pixel 8. I am trying to download the AOSP kernel, compile it, and flash it into my device. I followed the instructions from the document below. https://source.android.com/docs/setup/build/building-pixel-kernels#pixel-gki-kernel-branches. I used the right combinations for...
I am currently using Google Pixel 8. I am trying to download the AOSP kernel, compile it, and flash it into my device.
I followed the instructions from the document below.
https://source.android.com/docs/setup/build/building-pixel-kernels#pixel-gki-kernel-branches . I used the right combinations for my device and was able to compile and build the kernel using Kleaf.
Then, I went to fastboot mode and flashed my device using the commands below.
fastboot flash boot out/shusky/dist/boot.img
fastboot flash dtbo out/shusky/dist/dtbo.img
fastboot flash vendor_kernel_boot out/shusky/dist/vendor_kernel_boot.img
fastboot reboot fastboot
fastboot flash vendor_dlkm out/shusky/dist/vendor_dlkm.img
fastboot flash system_dlkm out/shusky/dist/system_dlkm.img
After these commands, the device was left in fastbootd mode.
What should I do to start my Pixel 8 with the built kernel? It seems when I simply reboot the device, it gets back to its original kernel.
김의준
(11 rep)
Jul 3, 2024, 11:42 AM
• Last activity: Jul 3, 2024, 03:11 PM
1
votes
0
answers
224
views
Unable to boot android emulator with my custom kernel
I did build a custom kernel like this: ``` mkdir -p ~/dlink-decompile cd ./dlink-decompile git clone https://android.googlesource.com/kernel/common.git cd common git checkout android14-6.1-2024-04_r11 make clean make mrproper make ARCH=x86_64 defconfig make menuconfig make scripts make cd .. git clo...
I did build a custom kernel like this:
And after a while, still remains the same. The emulator output upon console is:
mkdir -p ~/dlink-decompile
cd ./dlink-decompile
git clone https://android.googlesource.com/kernel/common.git
cd common
git checkout android14-6.1-2024-04_r11
make clean
make mrproper
make ARCH=x86_64 defconfig
make menuconfig
make scripts
make
cd ..
git clone https://github.com/aircrack-ng/rtl8188eus.git
cd rtl8188eus
make -C /home/pcmagas/dlink-decompile/common ARCH=x86_64 KSRC=~/dlink-decompile/common KDIR=~/dlink-decompile/common
Aiming to have the kernel embeded with an rtl8188eus
module. Then I made an AVD:
avdmanager create avd -n CustomKernel -k "system-images;android-34;google_apis_playstore;x86_64" -b "x86_64"
And I boot the AVD with the custom kernel:
emulator -avd CustomKernel -kernel /home/pcmagas/dlink-decompile/common/arch/x86_64/boot/bzImage -qemu -m 2048 -enable-kvm
But emulator fails to boot. Whereas if I ommit the -kernel /home/pcmagas/dlink-decompile/common/arch/x86_64/boot/bzImage
param, emulator boots fine.
Looking at the path /home/pcmagas/dlink-decompile/common/arch/x86_64/boot/bzImage
I see:
lrwxrwxrwx 1 pcmagas pcmagas 22 Ιουν 19 21:15 /home/pcmagas/dlink-decompile/common/arch/x86_64/boot/bzImage -> ../../x86/boot/bzImage
And Also file exists ion the symlinked path:
ls -l /home/pcmagas/dlink-decompile/common/arch/x86_64/boot/../../x86/boot/bzImage
-rw-rw-r-- 1 pcmagas pcmagas 11513440 Ιουν 19 19:22 /home/pcmagas/dlink-decompile/common/arch/x86_64/boot/../../x86/boot/bzImage
The emulator shows a grey screen:

INFO | Storing crashdata in: /tmp/android-pcmagas/emu-crash-34.2.14.db, detection is enabled for process: 77641
INFO | Android emulator version 34.2.14.0 (build_id 11834374) (CL:N/A)
INFO | Found systemPath /home/pcmagas/system-images/android-34/google_apis_playstore/x86_64/
INFO | Storing crashdata in: /tmp/android-pcmagas/emu-crash-34.2.14.db, detection is enabled for process: 77641
INFO | Duplicate loglines will be removed, if you wish to see each individual line launch with the -log-nofilter flag.
INFO | Increasing RAM size to 2048MB
INFO | Warning: QMetaObject::connectSlotsByName: No matching signal for on_new_posture_requested(int) ((null):0, (null))
INFO | Warning: QMetaObject::connectSlotsByName: No matching signal for on_dismiss_posture_selection_dialog() ((null):0, (null))
INFO | Warning: QMetaObject::connectSlotsByName: No matching signal for on_new_resizable_requested(PresetEmulatorSizeType) ((null):0, (null))
INFO | Warning: QMetaObject::connectSlotsByName: No matching signal for on_dismiss_resizable_dialog() ((null):0, (null))
INFO | Warning: QMetaObject::connectSlotsByName: No matching signal for on_sleep_timer_done() ((null):0, (null))
INFO | Warning: QMetaObject::connectSlotsByName: No matching signal for on_unfold_timer_done() ((null):0, (null))
library_mode host gpu mode host
INFO | Initializing hardware OpenGLES emulation support
android_startOpenglesRenderer: gpu infoI0620 21:37:23.875587 77641 HealthMonitor.cpp:279] HealthMonitor disabled.
cannot add library libvulkan.so: failed
added library libvulkan.so.1
createGlobalVkEmulation:995 Selecting Vulkan device: AMD Radeon RX 550 Series (RADV POLARIS11)
initialize: Supports id properties, got a vulkan device UUID
I0620 21:37:24.082889 77641 VkCommonOperations.cpp:1276] Initializing VkEmulation features:
I0620 21:37:24.082906 77641 VkCommonOperations.cpp:1277] glInteropSupported: true
I0620 21:37:24.082924 77641 VkCommonOperations.cpp:1278] useDeferredCommands: true
I0620 21:37:24.082927 77641 VkCommonOperations.cpp:1280] createResourceWithRequirements: true
I0620 21:37:24.082932 77641 VkCommonOperations.cpp:1281] useVulkanComposition: false
I0620 21:37:24.082935 77641 VkCommonOperations.cpp:1282] useVulkanNativeSwapchain: false
I0620 21:37:24.082939 77641 VkCommonOperations.cpp:1283] enable guestRenderDoc: false
I0620 21:37:24.082942 77641 VkCommonOperations.cpp:1284] ASTC LDR emulation mode: 2
I0620 21:37:24.082960 77641 VkCommonOperations.cpp:1285] enable ETC2 emulation: true
I0620 21:37:24.082963 77641 VkCommonOperations.cpp:1286] enable Ycbcr emulation: false
I0620 21:37:24.082983 77641 VkCommonOperations.cpp:1287] guestUsesAngle: false
I0620 21:37:24.082986 77641 VkCommonOperations.cpp:1288] useDedicatedAllocations: true
I0620 21:37:24.083206 77641 FrameBuffer.cpp:506] Graphics Adapter Vendor Google (AMD)
I0620 21:37:24.083213 77641 FrameBuffer.cpp:507] Graphics Adapter Android Emulator OpenGL ES Translator (AMD Radeon RX 550 Series (polaris11, LLVM 15.0.7, DRM 3.42, 5.15.0-112-generic))
I0620 21:37:24.083230 77641 FrameBuffer.cpp:508] Graphics API Version OpenGL ES 3.0 (4.6 (Core Profile) Mesa 23.2.1-1ubuntu3.1~22.04.2)
I0620 21:37:24.083233 77641 FrameBuffer.cpp:509] Graphics API Extensions GL_OES_EGL_sync GL_OES_EGL_image GL_OES_EGL_image_external GL_OES_depth24 GL_OES_depth32 GL_OES_element_index_uint GL_OES_texture_float GL_OES_texture_float_linear GL_OES_compressed_paletted_texture GL_OES_compressed_ETC1_RGB8_texture GL_OES_depth_texture GL_OES_texture_half_float GL_OES_texture_half_float_linear GL_OES_packed_depth_stencil GL_OES_vertex_half_float GL_OES_texture_npot GL_OES_rgb8_rgba8 GL_EXT_color_buffer_float GL_EXT_color_buffer_half_float GL_EXT_texture_format_BGRA8888 GL_APPLE_texture_format_BGRA8888
I0620 21:37:24.083252 77641 FrameBuffer.cpp:510] Graphics Device Extensions N/A
INFO | OpenGL Vendor=[Google (AMD)]
INFO | OpenGL Renderer=[Android Emulator OpenGL ES Translator (AMD Radeon RX 550 Series (polaris11, LLVM 15.0.7, DRM 3.42, 5.15.0-112-generic))]
INFO | OpenGL Version=[OpenGL ES 3.0 (4.6 (Core Profile) Mesa 23.2.1-1ubuntu3.1~22.04.2)]
INFO | Enabled VulkanAllocateDeviceMemoryOnly feature for gpu vendor AMD on Linux
INFO | Sending adb public key [QAAAAA35gig7grg+E7kDJj7JMLZ2lE8gXpjq8HXYB0V7UZHHe8uA9ma9OmwDT09UAb85aArFqRNLiJegREOaV2R/Co4wWRVBInXqCoRRkKEnbqO53SLzdRnyh1z6DYkXFQIfFkd9JqeOD46UItc/ru4SQi5hdY4FSjevalU3u0SIZGu7OdJ+pRAozzvKcfTU7F33cs2FJ0plzVl7Corqhyi53ncpoMRSfkearMDVTxPIKn4QjR1u6xv+oa5N8itlCw+benFmd7Da4n07MhDWt/vC4f5QeNwYKi1m0ncnPUh3/7NV5c+CdcGZJQfrldI/MNY+VIRJzt0PtyBRsn3u3xmtP/KjPC+gyGHuAh5jeY6u1dKsm0Oub6oDsBg46J7WXLul5xCuScdT7WR2RRjYE9PAp7KyXgoOYsIrNTgJH0Q0WbeVHwGbidqSZjp/GymyDdciW7+c1aBbyaA2fbB1O1kAGi+Ko8cpHPM9LmApqGvn2mvV2bdpHbFH8QYEXvTMxUHEPyA6MQ0LYFRXL1mu4yIFFaaQQ80Lb2wdv6jke1WIoXWYagnH7RIQ3lRRjgcWQlUAHkM2YjrJKN77f08A5/nP/pcbGZYRrfVnfp9S+St/R9uUVJK3dmoEW1SRVctwGZmlz4UgMn2aLZH+JxAU7WL25L3mwuMkUcLF4uLDOaelYEJnzBAXcAEAAQA= pcmagas@unknown]
WARNING: cannnot unmap ptr 0x7f9ced403000 as it is in the protected range from 0x7f9ced403000 to 0x7f9d6d603000
WARNING: cannnot unmap ptr 0x7f9d6d601000 as it is in the protected range from 0x7f9ced403000 to 0x7f9d6d603000
INFO | Monitoring duration of emulator setup.
WARNING | The emulator now requires a signed jwt token for gRPC access! Use the -grpc flag if you really want an open unprotected grpc port
INFO | Using security allow list from: /home/pcmagas/Android/emulator/lib/emulator_access.json
WARNING | *** Basic token auth should only be used by android-studio ***
INFO | The active JSON Web Key Sets can be found here: /run/user/1000/avd/running/77641/jwks/b6206e94-a6c8-4fb0-9c0b-1622ab1dbd73/active.jwk
INFO | Scanning /run/user/1000/avd/running/77641/jwks/b6206e94-a6c8-4fb0-9c0b-1622ab1dbd73 for jwk keys.
INFO | Started GRPC server at 127.0.0.1:8554, security: Local, auth: +token
INFO | Advertising in: /run/user/1000/avd/running/pid_77641.ini
I0620 21:37:24.292412 77712 FrameBuffer.cpp:2853] setDisplayConfigs w 320 h 640 dpiX 160 dpiY 160
I0620 21:37:24.292439 77712 FrameBuffer.cpp:2866] setDisplayActiveConfig 0
INFO | Loading snapshot 'default_boot'...
WARNING | Device 'cache' does not have the requested snapshot 'default_boot'
WARNING | Failed to load snapshot 'default_boot'
INFO | Activated packet streamer for bluetooth emulation
And I have no idea how I can debug this or find the error why. Can you help me?
Dimitrios Desyllas
(143 rep)
Jun 20, 2024, 06:40 PM
• Last activity: Jun 20, 2024, 06:50 PM
1
votes
1
answers
94
views
How I can point the `rtl8188eus` build towards the cloned android kernel source instead of the system one?
I try to build the https://github.com/aircrack-ng/rtl8188eus driver for android so I can load it into the emulator. So far I have installed both android sdk, afterwards I have installed ndk ``` sdkmanager "ndk;27.0.11902837" ``` And I have exported the following environmental variables: ``` export A...
I try to build the https://github.com/aircrack-ng/rtl8188eus driver for android so I can load it into the emulator.
So far I have installed both android sdk, afterwards I have installed ndk
sdkmanager "ndk;27.0.11902837"
And I have exported the following environmental variables:
export ANDROID_SDK_ROOT=/home/pcmagas/Android
export ANDROID_HOME=/home/pcmagas/Android
export PATH=$PATH:$ANDROID_SDK_ROOT/cmdline-tools/latest/bin
export PATH=$PATH:$ANDROID_SDK_ROOT/emulator
export NDK_HOME=$ANDROID_HOME/ndk/27.0.11902837
export PATH=$PATH:$NDK_HOME/toolchains/llvm/prebuilt/linux-x86_64/bin
Then I cloned the common kernel:
git clone https://android.googlesource.com/kernel/common.git
cd common
git checkout android14-6.1-2024-04_r11
Then I cloned the driver source:
cd ~
git clone https://github.com/aircrack-ng/rtl8188eus.git
cd rtl8188eus
make ARCH=x86_64 CROSS_COMPILE=x86_64-linux-android- CC=$TOOLCHAIN/x86_64-linux-android25-clang
But I get the error:
make: Entering directory '/usr/src/linux-headers-5.15.0-112-generic'
arch/x86/Makefile:142: CONFIG_X86_X32 enabled but no binutils support
make: /x86_64-linux-android25-clang: Δεν υπάρχει τέτοιο αρχείο ή κατάλογος
warning: the compiler differs from the one used to build the kernel
The kernel was built by: gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0
You are using:
/bin/sh: 1: /x86_64-linux-android25-clang: not found
(standard_in) 1: syntax error
CC [M] /home/pcmagas/dlink-decompile/rtl8188eus/core/rtw_cmd.o
/bin/sh: 1: /x86_64-linux-android25-clang: not found
make: *** [scripts/Makefile.build:297: /home/pcmagas/dlink-decompile/rtl8188eus/core/rtw_cmd.o] Error 127
make: *** [Makefile:1911: /home/pcmagas/dlink-decompile/rtl8188eus] Error 2
make: Leaving directory '/usr/src/linux-headers-5.15.0-112-generic'
make: *** [Makefile:2065: modules] Error 2
As you can see it is pointed towards the linuxc kernel and not towards the android kernel. How I can fix this?
Dimitrios Desyllas
(143 rep)
Jun 10, 2024, 07:51 AM
• Last activity: Jun 19, 2024, 05:27 PM
1
votes
0
answers
129
views
Can a "proper" Linux userspace run on an Android kernel?
I've been reading about the challenges of getting Android phones to boot up using a close to mainline Linux kernel, and it got me thinking, manufacturers have their own kernels with all the correct drivers, and Android ROMs like LineageOS use these kernels with great success on many devices (of cour...
I've been reading about the challenges of getting Android phones to boot up using a close to mainline Linux kernel, and it got me thinking, manufacturers have their own kernels with all the correct drivers, and Android ROMs like LineageOS use these kernels with great success on many devices (of course it's not 100% there due to SafetyNet, etc. but the majority of features work).
So my question is: is it possible to use these kernels to boot a conventional Linux userspace by having them start up something like systemd instead of Android's init? If not, what prevents that?
Yonatan Avhar
(111 rep)
Jun 18, 2024, 04:49 PM
• Last activity: Jun 19, 2024, 04:47 AM
2
votes
0
answers
385
views
Android 14 USB Tethering RNDIS not working
The Killer 1650i Wi-Fi card in my Dell G5 5511 laptop died on me recently and I need to use my smartphone as a Wi-Fi adapter for a substitute without having to order a replacement Wi-Fi card. My phone I'm using is an LG V20 running unofficial Android 14 (LineageOS 21). Trying to switch it on while c...
The Killer 1650i Wi-Fi card in my Dell G5 5511 laptop died on me recently and I need to use my smartphone as a Wi-Fi adapter for a substitute without having to order a replacement Wi-Fi card. My phone I'm using is an LG V20 running unofficial Android 14 (LineageOS 21).
Trying to switch it on while connected to my computer just turns it off immediately (as seen if backing out of the Tethering settings), but the notification and Quick Settings tile still reads that USB tethering is on. Reading the logcat for diagnosing this problem there is this:
Tethering: ERROR could not enable IpServer for function RNDIS
It's the error message with NO Google Search results. In fact that's such an undocumented error right there!
Wi-Fi and Bluetooth tethering work fine. But with the Wi-Fi card dead or disconnected that means I can't use Bluetooth as another way to connect to my computer unless I have a USB adapter for a substitute of it.
How the heck do I fix this?
Devan Wolf
(21 rep)
May 10, 2024, 11:37 PM
0
votes
0
answers
63
views
Kernel BUG at drivers/gpu/msm/adreno_dispatch.c
OnePlus 7T smartphone randomly freezes and rebooting. Bootloader unlocked and rooted. Smartphone runs on Android 11, but the same behavior occurred on a purely installed Android 12. Often the error appears in moments related to graphics, such as rotating the screen, changing the screen in games (the...
OnePlus 7T smartphone randomly freezes and rebooting.
Bootloader unlocked and rooted. Smartphone runs on Android 11, but the same behavior occurred on a purely installed Android 12. Often the error appears in moments related to graphics, such as rotating the screen, changing the screen in games (the appearance of a video screensaver, for example). This can happen from once a day to several times.
From the logs it is clear that this is somehow related to video drivers:
[20240305_12:19:40.512637]@0 platform 2c6a000.qcom,gmu: OOB_set(0x40000000) timed out
[20240305_12:19:40.622730]@0 platform 2c6a000.qcom,gmu: ----------------------[ GMU error ]----------------------
[20240305_12:19:40.622782]@0 platform 2c6a000.qcom,gmu: Timeout waiting for lowest idle level 3
[20240305_12:19:40.622804]@0 platform 2c6a000.qcom,gmu: Timestamps: 272b38cc6 272d3aee0 272d3af12
[20240305_12:19:40.622825]@0 platform 2c6a000.qcom,gmu: RPMH_POWER_STATE=0 SPTPRAC_PWR_CLK_STATUS=0
[20240305_12:19:40.622846]@0 platform 2c6a000.qcom,gmu: CX_BUSY_STATUS=71000000 CP_STATUS_1=1000000
[20240305_12:19:40.622868]@0 platform 2c6a000.qcom,gmu: RBBM_INT_UNMASKED_STATUS=1 PWR_COL_KEEPALIVE=0
[20240305_12:19:40.622889]@0 platform 2c6a000.qcom,gmu: CP2GMU_STATUS=0 CONTEXT_SWITCH_CNTL=0 AO_SPARE_CNTL=0
[20240305_12:19:40.622961]@0 ------------[ cut here ]------------
[20240305_12:19:40.623004]@0 WARNING: CPU: 0 PID: 272 at drivers/gpu/msm/adreno_a6xx_gmu.c:973 a6xx_gmu_wait_for_lowest_idle+0x450/0x490
[20240305_12:19:40.623024]@0 Modules linked in: wlan(O) rmnet_perf(O) machine_dlkm(O) wcd934x_dlkm(O) mbhc_dlkm(O) wcd9360_dlkm(O) swr_ctrl_dlkm(O) wcd9xxx_dlkm(O) tfa9894_dlkm(O) wsa881x_dlkm(O) wcd_core_dlkm(O) stub_dlkm(O) wcd_spi_dlkm(O) hdmi_dlkm(O) swr_dlkm(O) pinctrl_wcd_dlkm(O) usf_dlkm(O) native_dlkm(O) platform_dlkm(O) q6_dlkm(O) adsp_loader_dlkm(O) apr_dlkm(O) q6_notifier_dlkm(O) q6_pdr_dlkm(O) wglink_dlkm(O) msm_11ad_proxy [last unloaded: rmnet_perf]
[20240305_12:19:40.623200]@0 CPU: 0 PID: 272 Comm: kgsl_worker_thr Tainted: G S W O 4.14.190-perf+ #1
[20240305_12:19:40.623220]@0 Hardware name: Qualcomm Technologies, Inc. SM8150 V2 PM8150 MTP 18865 19863 14 15 (DT)
[20240305_12:19:40.623243]@0 task: 00000000ead67ef5 task.stack: 000000007e72c1e2
[20240305_12:19:40.623263]@0 pc : a6xx_gmu_wait_for_lowest_idle+0x450/0x490
[20240305_12:19:40.623282]@0 lr : a6xx_gmu_wait_for_lowest_idle+0x44c/0x490
[20240305_12:19:40.623300]@0 sp : ffffff8014783980 pstate : 60c00145
[20240305_12:19:40.623316]@0 x29: ffffff80147839b0 x28: 0000000000000004
[20240305_12:19:40.623348]@0 x27: 0000000000000002 x26: 0000000000000002
[20240305_12:19:40.623379]@0 x25: ffffffe2b336e000 x24: 0000000000023b0c
[20240305_12:19:40.623409]@0 x23: 0000000272d3af12 x22: 0000000272d3aee0
[20240305_12:19:40.623440]@0 x21: 000000000001f888 x20: 0000000272b38cc6
[20240305_12:19:40.623471]@0 x19: ffffff8b4a2fac00 x18: ffffff8b4a238000
[20240305_12:19:40.623502]@0 x17: 0000000000000000 x16: ffffff8b4a45d000
[20240305_12:19:40.623533]@0 x15: 4c544e435f455241 x14: 0000000000000060
[20240305_12:19:40.623563]@0 x13: 0000000000000444 x12: 0000000810947aa9
[20240305_12:19:40.623593]@0 x11: 0000000000000015 x10: 00000000000f4240
[20240305_12:19:40.623624]@0 x9 : 610bdee29b856c00 x8 : 610bdee29b856c00
[20240305_12:19:40.623655]@0 x7 : 0000000000000000 x6 : ffffff8b4a45cdaa
[20240305_12:19:40.623686]@0 x5 : 0000000000000034 x4 : 0000000000000008
[20240305_12:19:40.623715]@0 x3 : 0000000000000000 x2 : 000000000000006e
[20240305_12:19:40.623746]@0 x1 : ffffff8b47f48d3c x0 : 00000000ffffff92
[20240305_12:19:40.623780]@0
PC: 0xffffff8b48696360:
[20240305_12:19:40.623797]@0 6360 9400632e f9400728 b0009a81 b85ec3a2 91238821 b94013e3 91004100 94006327
[20240305_12:19:40.623885]@0 6380 f9400728 b0009a81 29410be3 91245021 b94007e4 91004100 94006320 12800da0
[20240305_12:19:40.623965]@0 63a0 d4210000 9000dbc9 f85f83a8 f9404529 eb08013f 54000121 a9484ff4 f94023fb
[20240305_12:19:40.624046]@0 63c0 a94757f6 a9465ff8 a94567fa a9437bfd 910243ff d65f03c0 97e0a1aa d503201f
[20240305_12:19:40.624127]@0
LR: 0xffffff8b4869635c:
[20240305_12:19:40.624142]@0 635c 91004100 9400632e f9400728 b0009a81 b85ec3a2 91238821 b94013e3 91004100
[20240305_12:19:40.624223]@0 637c 94006327 f9400728 b0009a81 29410be3 91245021 b94007e4 91004100 94006320
[20240305_12:19:40.624303]@0 639c 12800da0 d4210000 9000dbc9 f85f83a8 f9404529 eb08013f 54000121 a9484ff4
[20240305_12:19:40.624383]@0 63bc f94023fb a94757f6 a9465ff8 a94567fa a9437bfd 910243ff d65f03c0 97e0a1aa
[20240305_12:19:40.624464]@0
SP: 0xffffff8014783940:
[20240305_12:19:40.624480]@0 3940 486963a0 ffffff8b 60c00145 00000000 ffffffd0 ffffff80 499e7914 ffffff8b
[20240305_12:19:40.624560]@0 3960 ffffffff ffffffff 9b856c00 610bdee2 147839b0 ffffff80 486963a0 ffffff8b
[20240305_12:19:40.624638]@0 3980 147839b0 00000000 00000000 00000000 00000000 00000000 00000000 00000001
[20240305_12:19:40.624718]@0 39a0 01000000 71000000 9b856c00 610bdee2 14783a10 ffffff80 4865924c ffffff8b
[20240305_12:19:40.624797]@0
[20240305_12:19:40.624815]@0 Call trace:
[20240305_12:19:40.624834]@0 a6xx_gmu_wait_for_lowest_idle+0x450/0x490
[20240305_12:19:40.624857]@0 gmu_stop+0x34/0xf0
[20240305_12:19:40.624877]@0 gmu_core_stop+0x1c/0x28
[20240305_12:19:40.624901]@0 kgsl_pwrctrl_disable+0x70/0xb8
[20240305_12:19:40.624921]@0 _slumber+0x208/0x2e0
[20240305_12:19:40.624939]@0 kgsl_pwrctrl_change_state+0x234/0x510
[20240305_12:19:40.624962]@0 _adreno_start+0x2b8/0x958
[20240305_12:19:40.624981]@0 adreno_start+0x44/0x78
[20240305_12:19:40.624998]@0 _wake+0xc4/0x3f8
[20240305_12:19:40.625017]@0 kgsl_active_count_get+0x148/0x1e0
[20240305_12:19:40.625039]@0 sendcmd+0xe4/0x508
[20240305_12:19:40.625058]@0 _adreno_dispatcher_issuecmds+0x2a8/0x5b8
[20240305_12:19:40.625076]@0 adreno_dispatcher_work+0x450/0x9d0
[20240305_12:19:40.625101]@0 kthread_worker_fn+0x80/0x168
[20240305_12:19:40.625119]@0 kthread+0x11c/0x130
[20240305_12:19:40.625141]@0 ret_from_fork+0x10/0x1c
[20240305_12:19:40.625158]@0 ---[ end trace 137859bf8ec69b6e ]---
[20240305_12:19:40.625228]@0 platform 2c6a000.qcom,gmu: Failed to stop GMU
[20240305_12:19:40.625690]@0 kgsl kgsl-3d0: |_wake| start failed -110
[20240305_12:19:40.625985]@1 kgsl kgsl-3d0: RB[-1]: gmu fault status 00000001 rb 0000/0000 ib1 0000000000000000/0000 ib2 0000000000000000/0000
[20240305_12:19:40.626077]@0 kgsl kgsl-3d0: |kgsl_iommu_fault_handler| GPU PAGE FAULT: addr = 0 pid= 0 name=unknown
[20240305_12:19:40.626104]@0 kgsl kgsl-3d0: |kgsl_iommu_fault_handler| context=gfx3d_user TTBR0=0x3000273352000 CIDR=0x0 (read translation fault)
[20240305_12:19:40.626129]@0 kgsl kgsl-3d0: |kgsl_iommu_fault_handler| FAULTING BLOCK: CP
[20240305_12:19:40.626178]@0 kgsl kgsl-3d0: ---- nearby memory ----
[20240305_12:19:40.626200]@0 kgsl kgsl-3d0: *EMPTY*
[20240305_12:19:40.626219]@0 kgsl kgsl-3d0: <- fault @ 00000000
[20240305_12:19:40.626236]@0 kgsl kgsl-3d0: *EMPTY*
[20240305_12:19:40.627643]@1 platform 2c6a000.qcom,gmu: Suspended GMU
[20240305_12:19:40.633654]@0 platform 2c6a000.qcom,gmu: GMU CM3 fault interrupt received
[20240305_12:19:40.742778]@0 platform 2c6a000.qcom,gmu: OOB_set(0x40000000) timed out
[20240305_12:19:40.774568]@0 platform 2c6a000.qcom,gmu: Suspended GMU
[20240305_12:19:40.780103]@0 platform 2c6a000.qcom,gmu: GMU CM3 fault interrupt received
[20240305_12:19:40.882739]@0 platform 2c6a000.qcom,gmu: OOB_set(0x40000000) timed out
[20240305_12:19:40.914491]@0 platform 2c6a000.qcom,gmu: Suspended GMU
[20240305_12:19:40.920147]@0 platform 2c6a000.qcom,gmu: GMU CM3 fault interrupt received
[20240305_12:19:41.022673]@0 platform 2c6a000.qcom,gmu: OOB_set(0x40000000) timed out
[20240305_12:19:41.054826]@1 platform 2c6a000.qcom,gmu: Suspended GMU
[20240305_12:19:41.060742]@0 platform 2c6a000.qcom,gmu: GMU CM3 fault interrupt received
[20240305_12:19:41.162731]@3 platform 2c6a000.qcom,gmu: OOB_set(0x40000000) timed out
[20240305_12:19:41.192733]@3 ------------[ cut here ]------------
[20240305_12:19:41.192774]@3 kernel BUG at drivers/gpu/msm/adreno_dispatch.c:2270!
[20240305_12:19:41.192799]@3 Internal error: Oops - BUG: 0 [#1] PREEMPT SMP
[20240305_12:19:41.192816]@3 Modules linked in: wlan(O) rmnet_perf(O) machine_dlkm(O) wcd934x_dlkm(O) mbhc_dlkm(O) wcd9360_dlkm(O) swr_ctrl_dlkm(O) wcd9xxx_dlkm(O) tfa9894_dlkm(O) wsa881x_dlkm(O) wcd_core_dlkm(O) stub_dlkm(O) wcd_spi_dlkm(O) hdmi_dlkm(O) swr_dlkm(O) pinctrl_wcd_dlkm(O) usf_dlkm(O) native_dlkm(O) platform_dlkm(O) q6_dlkm(O) adsp_loader_dlkm(O) apr_dlkm(O) q6_notifier_dlkm(O) q6_pdr_dlkm(O) wglink_dlkm(O) msm_11ad_proxy [last unloaded: rmnet_perf]
[20240305_12:19:41.192984]@3 Process kgsl_worker_thr (pid: 272, stack limit = 0x000000007e72c1e2)
[20240305_12:19:41.193004]@3 CPU: 3 PID: 272 Comm: kgsl_worker_thr Tainted: G S W O 4.14.190-perf+ #1
[20240305_12:19:41.193018]@3 Hardware name: Qualcomm Technologies, Inc. SM8150 V2 PM8150 MTP 18865 19863 14 15 (DT)
[20240305_12:19:41.193033]@3 task: 00000000ead67ef5 task.stack: 000000007e72c1e2
Any suggestions on how to fix this error? Or why might this be happening?
skrobbi
(1 rep)
Mar 5, 2024, 03:46 PM
0
votes
0
answers
524
views
Where should I put Android kernel modules?
I compiled custom kernel with couple extra drivers and due they had conflicts when I tried to add them as built-in drivers to kernel, I had to compile them as separate modules. I signed the modules, insmodded them and they work well. No conflicts. The problem is that I neither have `modules` directo...
I compiled custom kernel with couple extra drivers and due they had conflicts when I tried to add them as built-in drivers to kernel, I had to compile them as separate modules. I signed the modules, insmodded them and they work well. No conflicts.
The problem is that I neither have
modules
directory in /system/lib
folder nor /vendor/lib
. I tried to create them manually but even after creation, it didn't load after reboot.
Now questions:
1) Where can I put kernel modules if I don't have these folders?
2) How can I make it without modifying system? I want to ship the kernel as only 1 AnyKernel3 zip.
Please, if you at least know answer to one of these questions, respond either as answer or comment.
Atlas Co
(42 rep)
Jul 19, 2023, 08:39 AM
• Last activity: Feb 21, 2024, 10:30 PM
4
votes
2
answers
10651
views
Is USB debugging needed when flashing stuff?
I mostly worked on Samsung phones, but I also had a shot on some cheap MTK phones. Over the course of rooting/flashing roms/flashing kernels I built myself/using Odin (Samsung)/etc. on a lot of phones, not once did I need to change any USB debugging option, except on my first try when I was still ne...
I mostly worked on Samsung phones, but I also had a shot on some cheap MTK phones.
Over the course of rooting/flashing roms/flashing kernels I built myself/using Odin (Samsung)/etc. on a lot of phones, not once did I need to change any USB debugging option, except on my first try when I was still new to Android.
But, once I began learning how Android works (and becoming an Android dev in the process), turning on USB debugging didn't make sense when interacting with the phone outside of Android, because as far as I know, USB debugging is only *soft*. That is, the phone hardware didn't care, but the OS requires it for debugging purposes (ADB access).
So, basically, when you need to flash something in recovery mode **OR** via a tool (e.g. Odin, Heimdall), you don't need USB debugging. But, when you are talking to the OS (
logcat
, etc.), USB debugging makes sense.
So, why do almost all of the online tutorials that I revisited **require** turning on USB debugging even though you're outside of Android? Is there something I don't know that needs it? Or are they naive and simply *followed the leader* (copy-pasted another tutorial into their own blogs)?
Aloha
(355 rep)
Mar 28, 2017, 08:43 AM
• Last activity: Nov 17, 2023, 01:24 AM
2
votes
1
answers
622
views
How to obtain the Kernel Module Interface for my Android kernel?
I'm running Android 13 via crDroid 9.8 on my Pixel 7 Pro. I want to try KernelSU, but in order to download the proper version, I need to know my Android kernel's KMI ("Kernel Module Interface"), and I don't know how to obtain this KMI value. On the "Android version" page in Settings, it says that my...
I'm running Android 13 via crDroid 9.8 on my Pixel 7 Pro.
I want to try KernelSU, but in order to download the proper version, I need to know my Android kernel's KMI ("Kernel Module Interface"), and I don't know how to obtain this KMI value.
On the "Android version" page in Settings, it says that my kernel version is **5.10.157-ga88edbe37d3a**, but as far as I know, that isn't the KMI.
There are several KernelSU versions on the KernelSU site referenced by KMI's which start with "5.10.157", and I assume I should choose one of them. But without knowing my kernel's KMI, I don't know which one of those I should try.
How can I figure out my kernel's KMI?
Thank you in advance.
**UPDATE**: To be clear, the KernelSU docs say that the kernel name should match the following pattern:
Version.PatchLevel.SubLevel-AndroidRelease-KmiGeneration-suffix
Then, the KMI would be Version
.Patchlevel
-AndroidRelease
-KMIGeneration-suffix
.
However, my kernel name is only this: 5.10.157-ga88edbe37d3a
, and it has no AndroidRelease
field, and there are several KernelSU images there with "5.10.157" in their name.
This is why I'm posting my question here.
HippoMan
(955 rep)
Sep 24, 2023, 07:22 PM
• Last activity: Nov 3, 2023, 09:38 PM
1
votes
2
answers
2246
views
How do I flash a custom kernel on Pixel 7
I built a custom kernel for my Pixel 7, to include the *NFS* kernel module. I'm struggling to flash this to my phone and get it loading. After I flash this to my phone, the `Google` text appears, but not the `G` animation that follows. It dies with the following message: > **Android Recovery** > > g...
I built a custom kernel for my Pixel 7, to include the *NFS* kernel module. I'm struggling to flash this to my phone and get it loading.
After I flash this to my phone, the
Google
text appears, but not the G
animation that follows. It dies with the following message:
> **Android Recovery**
>
> google/panther/panther
>
> 13/TQ1A.221205.011/9244662
>
> user/release-keys
>
> Use volume up/down and power.
>
> Cannot load Android system. Your data may be corrupt. If you continue to get this message, you may need to perform a factory data reset and erase all user data stored on the device.
>
> - [x] Try again
> - [ ] Factory data reset
To recover from this I flashed the stock panther-tq1a.221205.011.zip/image-panther-tq1a.221205.011/boot.img
back.
The only thing I could find is where the boot log /sys/fs/pstore/console-ramoops-0
has the message:
[ 11.517099] [E] [DPM] check header failed
[ 11.517105] [E] [LNXDBG] vendor combined_checksum must be 0x62352e30 but 0x620d2e30
I thought this was related to *Android Verified Boot 2.0*. To test this out, I tried to flash the stock image and stock vbmeta.img
, with AVBv2 disabled:
$ fastboot flash --disable-verification vbmeta vbmeta.img
This also surprisingly results in the above boot loop. To recover I have to flash vbmeta.img
without this flag:
$ fastboot flash vbmeta vbmeta.img
I tried to patch vbmeta.img
flags at offset 0x7B to be 3 (aka AVB_VBMETA_IMAGE_FLAGS_HASHTREE_DISABLED | AVB_VBMETA_IMAGE_FLAGS_VERIFICATION_DISABLED
). I flashed this, and the same boot loop occured.
My phone is rooted with *Magisk*.
simonzack
(111 rep)
Feb 6, 2023, 02:38 AM
• Last activity: Nov 3, 2023, 09:28 PM
Showing page 1 of 20 total questions