I wanted to enable the RealTek RTL81111 nic on the DFRobot DFR0767 dual-nic carrier board for my pi 4 compute module. The driver for this nic does not come with piOS by default; apparently it is included with the 64bit version. To enable this driver I had to recompile the kernel. I followed the basic flow from this post, but (because I’m not as cool as the poster) I did not cross-compile. As a result my procedure was a lot simpler and more readable:
sudo apt-get update sudo apt-get install flex bison libssl-dev bc -y git clone --depth=1 https://github.com/raspberrypi/linux cd linux make bcm2711_defconfig Add "CONFIG_R8169=m" to .config (no need to "make menuconfig") make -j4 zImage modules dtbs make modules_install cp arch/arm/boot/zImage /boot/kernel7l.img cp arch/arm/boot/dts/overlays/*.dtb* /boot/overlays/
After this I rebooted, and all was right as rain: the new nic was present! Compile time was only a couple hours which was quite impressive, given it was done directly on the pi (4 core, 2GB ram).