How to fix no wlan on android after root (not completely correct boot used / old vendor partition)

Do you know the problem? You root android via a magisk patched boot partition but the kernel on the boot partition slightly differs from the vendor kernel modules and you haven’t wlan, bluetooth, …

Here is the fix: let’s build a franken-vendor partition.
First you need root access. For this enter su in adb shell. Now go to magisk manager or whatever root tool you use and allow su.

Before we beginn: better make an backup of the vendor partition (adb shell "su -c 'cat /dev/block/platform/mtk-msdc.0/11230000.msdc0/by-name/vendor'" > vendorbackup). The exact path you can find out by using: adb shell cat /proc/mounts. Make at least a backup of the /vendor/lib/modules .ko files.

Next: remount the vendor partition in read-write-mode (mount -o remount,rw /vendor). Somewhere in /vendor/lib/modules are some .ko files. These are the linux kernel modules the wrong android kernel cannot load and this is the reason why we have no wifi, bluetooth, …

Next step is to transform the vendor image to which the boot partition original belongs. If the ending is .img we have to transform the sparse image into a raw image for mounting. Elsewise you may can skip the step.
Install the package containing simg2simg (for every distro, or operating system the name differs so you have to find out the program yourself).
Desparse the image with simg2simg <image> <rawimage>

The next step differs if you cannot the raw image. If this is the case move the raw image on the android device and mount it here.
Now you can overwrite the .ko modules with:
cat <vendor mount path>/lib/modules/<module name>.ko | adb shell "su -c 'cat > /vendor/lib/modules/<module name>.ko'"
or
adb shell "su -c 'cat <vendor mount path>/lib/modules/<module name>.ko > /vendor/lib/modules/<module name>.ko'"

You have to repeat this step for all modules. After that reboot and wifi should work again

Comment

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s