How to Replace the Kernel on an Existing Ubuntu OS

Board: R2 - Pro, hardware switch MT3711, img: eMMC official Ubuntu 20.04

The official Ubuntu 20.04 image does not have IP Policy Routing, ESP and AH modules compiled into the kernel, which poses big problems for me! Couldn’t imagine when such a board is being referred to as a “router,” yet the most basic policy routing and IPsec related modules are missing… @sinovoip (中英文回答无所谓的)

Does any one know how to cross-compile the same kernel (I find a somewhere) on an x86_64 machine for the aarch64 and install the new kernel?

And what is going on with the eth1to MT3751 ports, one direction is limited to 94 Mbps? Another big problem.


Add it to proper build framework and then this procedure becomes super easy. DIY.

you could try my ubuntu image

and kernel from my repo (e.g. 6.1-main)

change board in build.conf to r2pro

./ importconfig
./ config

after build, you can choose “install to SDcard” which works with my image

as i use new uboot which is not backward compatible with sdk one you have to do first boot with maskrom button pressed till uboot show up and then erase first 10m of emmc (which contains the old bootchain and looks if sdcard is present - emmc is always booted first). after this you can bootup sdcard without maskrom button until emmc gets bootable again