一、下载对应版本内核
1.1查看内核版本
uname -a
1.2在ubuntu18.04下载内核源码
git clone --depth=1 https://github.com/raspberrypi/linux --branch rpi-5.4.y
二、安装依赖
sudo apt install git bc bison flex libssl-dev make libc6-dev libncurses5-dev
sudo apt install crossbuild-essential-armhf
三、配置内核
3.1 基本配置
mv linux linux-rpi-5.4.y/
cd linux-rpi-5.4.y/
KERNEL=kernel7l
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- bcm2711_defconfig
3.2 修改Makefile为对应内核版本(实测不行)
vi Makefile
确保跟上面uname -a一致
make kernelrelease
四、编译内核
make -j4 ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- zImage modules dtbs
五、拷贝到SD卡
5.1查看sd卡设备节点并挂载
lsblk
sudo mkdir /media/linux/rootfs -p
sudo mkdir /media/linux/boot -p
sudo mount /dev/sdb1 /media/linux/boot
sudo mount /dev/sdb2 /media/linux/rootfs
5.2安装内核模块
sudo env PATH=$PATH make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- INSTALL_MOD_PATH=/media/linux/rootfs modules_install
5.3更换内核
sudo cp /media/linux/boot/$KERNEL.img /media/linux/boot/$KERNEL-backup.img
sudo cp arch/arm/boot/zImage /media/linux/boot/$KERNEL.img
sudo cp arch/arm/boot/dts/*.dtb /media/linux/boot
sudo cp arch/arm/boot/dts/overlays/*.dtb* /media/linux/boot/overlays/
sudo cp arch/arm/boot/dts/overlays/README /media/linux/boot/overlays/
sudo umount /media/linux/boot
sudo umount /media/linux/rootfs