RPi kernels with virtio
This commit is contained in:
parent
79236a36ca
commit
6e88089136
BIN
home/lucifer/RPi/4.14.98/RPi1-kernel-virtio
Executable file
BIN
home/lucifer/RPi/4.14.98/RPi1-kernel-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/4.14.98/RPi2-kernel7-virtio
Executable file
BIN
home/lucifer/RPi/4.14.98/RPi2-kernel7-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/4.14.98/RPi4-kernel7l-virtio
Executable file
BIN
home/lucifer/RPi/4.14.98/RPi4-kernel7l-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/4.19.42/RPi1-kernel-virtio
Executable file
BIN
home/lucifer/RPi/4.19.42/RPi1-kernel-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/4.19.42/RPi2-kernel7-virtio
Executable file
BIN
home/lucifer/RPi/4.19.42/RPi2-kernel7-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/4.19.42/RPi4-kernel7l-virtio
Executable file
BIN
home/lucifer/RPi/4.19.42/RPi4-kernel7l-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/4.19.50/RPi1-kernel-virtio
Executable file
BIN
home/lucifer/RPi/4.19.50/RPi1-kernel-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/4.19.50/RPi2-kernel7-virtio
Executable file
BIN
home/lucifer/RPi/4.19.50/RPi2-kernel7-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/4.19.50/RPi4-kernel7l-virtio
Executable file
BIN
home/lucifer/RPi/4.19.50/RPi4-kernel7l-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/4.19.57/RPi1-kernel-virtio
Executable file
BIN
home/lucifer/RPi/4.19.57/RPi1-kernel-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/4.19.57/RPi2-kernel7-virtio
Executable file
BIN
home/lucifer/RPi/4.19.57/RPi2-kernel7-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/4.19.57/RPi4-kernel7l-virtio
Executable file
BIN
home/lucifer/RPi/4.19.57/RPi4-kernel7l-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/4.19.57/RPi4-kernel8-virtio
Executable file
BIN
home/lucifer/RPi/4.19.57/RPi4-kernel8-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/4.19.58/RPi1-kernel-virtio
Executable file
BIN
home/lucifer/RPi/4.19.58/RPi1-kernel-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/4.19.58/RPi2-kernel7-virtio
Executable file
BIN
home/lucifer/RPi/4.19.58/RPi2-kernel7-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/4.19.58/RPi4-kernel7l-virtio
Executable file
BIN
home/lucifer/RPi/4.19.58/RPi4-kernel7l-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/4.19.58/RPi4-kernel8-virtio
Executable file
BIN
home/lucifer/RPi/4.19.58/RPi4-kernel8-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/4.19.66/RPi1-kernel-virtio
Executable file
BIN
home/lucifer/RPi/4.19.66/RPi1-kernel-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/4.19.66/RPi2-kernel7-virtio
Executable file
BIN
home/lucifer/RPi/4.19.66/RPi2-kernel7-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/4.19.66/RPi4-kernel7l-virtio
Executable file
BIN
home/lucifer/RPi/4.19.66/RPi4-kernel7l-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/4.19.66/RPi4-kernel8-virtio
Executable file
BIN
home/lucifer/RPi/4.19.66/RPi4-kernel8-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/4.19.75/RPi1-kernel-virtio
Executable file
BIN
home/lucifer/RPi/4.19.75/RPi1-kernel-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/4.19.75/RPi2-kernel7-virtio
Executable file
BIN
home/lucifer/RPi/4.19.75/RPi2-kernel7-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/4.19.75/RPi4-kernel7l-virtio
Executable file
BIN
home/lucifer/RPi/4.19.75/RPi4-kernel7l-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/4.19.75/RPi4-kernel8-virtio
Executable file
BIN
home/lucifer/RPi/4.19.75/RPi4-kernel8-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/4.19.93/RPi1-kernel-virtio
Executable file
BIN
home/lucifer/RPi/4.19.93/RPi1-kernel-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/4.19.93/RPi2-kernel7-virtio
Executable file
BIN
home/lucifer/RPi/4.19.93/RPi2-kernel7-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/4.19.93/RPi4-kernel7l-virtio
Executable file
BIN
home/lucifer/RPi/4.19.93/RPi4-kernel7l-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/4.19.93/RPi4-kernel8-virtio
Executable file
BIN
home/lucifer/RPi/4.19.93/RPi4-kernel8-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/4.19.97/RPi1-kernel-virtio
Executable file
BIN
home/lucifer/RPi/4.19.97/RPi1-kernel-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/4.19.97/RPi2-kernel7-virtio
Executable file
BIN
home/lucifer/RPi/4.19.97/RPi2-kernel7-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/4.19.97/RPi4-kernel7l-virtio
Executable file
BIN
home/lucifer/RPi/4.19.97/RPi4-kernel7l-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/4.19.97/RPi4-kernel8-virtio
Executable file
BIN
home/lucifer/RPi/4.19.97/RPi4-kernel8-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/5.4.42/RPi1-kernel-virtio
Executable file
BIN
home/lucifer/RPi/5.4.42/RPi1-kernel-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/5.4.42/RPi2-kernel7-virtio
Executable file
BIN
home/lucifer/RPi/5.4.42/RPi2-kernel7-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/5.4.42/RPi4-kernel7l-virtio
Executable file
BIN
home/lucifer/RPi/5.4.42/RPi4-kernel7l-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/5.4.42/RPi4-kernel8-virtio
Executable file
BIN
home/lucifer/RPi/5.4.42/RPi4-kernel8-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/5.4.51/RPi1-kernel-virtio
Executable file
BIN
home/lucifer/RPi/5.4.51/RPi1-kernel-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/5.4.51/RPi2-kernel7-virtio
Executable file
BIN
home/lucifer/RPi/5.4.51/RPi2-kernel7-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/5.4.51/RPi4-kernel7l-virtio
Executable file
BIN
home/lucifer/RPi/5.4.51/RPi4-kernel7l-virtio
Executable file
Binary file not shown.
BIN
home/lucifer/RPi/5.4.51/RPi4-kernel8-virtio
Executable file
BIN
home/lucifer/RPi/5.4.51/RPi4-kernel8-virtio
Executable file
Binary file not shown.
152
home/lucifer/RPi/make-virtio-kernel
Executable file
152
home/lucifer/RPi/make-virtio-kernel
Executable file
@ -0,0 +1,152 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Usage: ./make-virtio-kernel
|
||||
# or
|
||||
# bash make-virtio-kernel
|
||||
# Description: Crossbuild four (4) RPi-kernels from given releases
|
||||
# of the raspberrypi kernel (github).
|
||||
# Author: Patrick Neumann (patrick@neumannsland.de)
|
||||
# Platform: Debian GNU/Linux (tested: 10.x)
|
||||
# Version: 1.00
|
||||
# Date: 23.09.2020
|
||||
# Link: ...
|
||||
# License: GPL3
|
||||
# Warranty: This program is distributed WITHOUT ANY WARRANTY
|
||||
|
||||
# mapping archive to linux kernel version:
|
||||
# - 1.20200902-1 = 5.4.51
|
||||
# - 1.20200601+amd64-1 = 5.4.42
|
||||
# - 1.20200212-1 = 4.19.97
|
||||
# - 1.20200114-1 = 4.19.93
|
||||
# - 1.20190925-1 = 4.19.75
|
||||
# - 1.20190819-1 = 4.19.66
|
||||
# - 1.20190718-1 = 4.19.58
|
||||
# - 1.20190709-1 = 4.19.57
|
||||
# - 1.20190620-1 = 4.19.50 (32-Bit only!?)
|
||||
# - 1.20190517-1 = 4.19.42 (32-Bit only!?)
|
||||
# - 1.20190401-1 = 4.14.98 (32-Bit only!?)
|
||||
|
||||
# check os:
|
||||
readonly OS="Debian GNU/Linux 10"
|
||||
if ! grep --fixed-strings "${OS}" /usr/lib/os-release > /dev/null 2>&1 ; then
|
||||
echo "Only ${OS} is supported!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# check and install deps if necessary:
|
||||
readonly PACKAGES="git
|
||||
bc
|
||||
bison
|
||||
flex
|
||||
libssl-dev
|
||||
make
|
||||
libc6dev
|
||||
libncurses5-dev
|
||||
crossbuild-essential-armhf
|
||||
crossbuild-essential-arm64"
|
||||
|
||||
for package in ${PACKAGES} ; do
|
||||
if ! dpkg -s "${package}" > /dev/null 2>&1 ; then
|
||||
sudo apt install "${package}" --assume-yes
|
||||
fi
|
||||
done
|
||||
|
||||
# check and generate config fragment file if necessary:
|
||||
if ! [ -r ./.config-virtio ] ; then
|
||||
cat <<EOF > ./.config-virtio
|
||||
CONFIG_BLK_MQ_VIRTIO=y
|
||||
CONFIG_VIRTIO_BLK=y
|
||||
CONFIG_VIRTIO_BLK_SCSI=y
|
||||
CONFIG_VIRTIO_NET=y
|
||||
CONFIG_VIRTIO_CONSOLE=y
|
||||
CONFIG_DRM_VIRTIO_GPU=y
|
||||
CONFIG_VIRTIO=y
|
||||
CONFIG_VIRTIO_MENU=y
|
||||
CONFIG_VIRTIO_PCI=y
|
||||
CONFIG_VIRTIO_PCI_LEGACY=y
|
||||
CONFIG_VIRTIO_BALLOON=y
|
||||
CONFIG_VIRTIO_INPUT=y
|
||||
CONFIG_VIRTIO_MMIO=y
|
||||
CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y
|
||||
EOF
|
||||
fi
|
||||
|
||||
# adjust number of jobs to cores (+ hypter threading):
|
||||
readonly CPUS="$( lscpu | awk '/^CPU\(s\):/ { print $NF; }' )"
|
||||
readonly JOBS="$( echo "12 * 1.5 / 1" | bc )"
|
||||
|
||||
readonly RELEASES="1.20200114-1
|
||||
1.20200212-1
|
||||
1.20200601+amd64-1
|
||||
1.20200902-1
|
||||
1.20190925-1
|
||||
1.20190819-1
|
||||
1.20190718-1
|
||||
1.20190709-1
|
||||
1.20190620-1
|
||||
1.20190517-1
|
||||
1.20190401-1
|
||||
1.20190709-1
|
||||
1.20190620-1
|
||||
1.20190517-1
|
||||
1.20190401-1"
|
||||
|
||||
for release in ${RELEASES} ; do
|
||||
# download, extract, version,...
|
||||
archive="raspberrypi-kernel_${release}.tar.gz"
|
||||
wget --timestamping "https://github.com/raspberrypi/linux/archive/${archive}"
|
||||
[ -r "${archive}" ] || continue
|
||||
tar xzf "${archive}"
|
||||
rm "${archive}"
|
||||
mv "./linux-${archive%.tar.gz}" ./linux
|
||||
|
||||
cd ./linux
|
||||
|
||||
version="$( awk '/^VERSION =/ { print $NF; }' ./Makefile )"
|
||||
patchlevel="$( awk '/^PATCHLEVEL =/ { print $NF; }' ./Makefile )"
|
||||
sublevel="$( awk '/^SUBLEVEL =/ { print $NF; }' Makefile )"
|
||||
|
||||
target="${HOME}/RPi/Kernels/${version}.${patchlevel}.${sublevel}"
|
||||
[ -d "${target}" ] || mkdir -p "${target}"
|
||||
|
||||
# RPi1...
|
||||
export KERNEL="kernel"
|
||||
export ARCH="arm"
|
||||
export CROSS_COMPILE="arm-linux-gnueabihf-"
|
||||
make bcmrpi_defconfig
|
||||
./scripts/kconfig/merge_config.sh .config ../.config-virtio
|
||||
make --jobs="${JOBS}" zImage
|
||||
cp ./arch/arm/boot/zImage "${target}/RPi1-${KERNEL}-virtio"
|
||||
make clean
|
||||
|
||||
# RPi2-3...
|
||||
export KERNEL="kernel7"
|
||||
make bcm2709_defconfig
|
||||
./scripts/kconfig/merge_config.sh .config ../.config-virtio
|
||||
make --jobs="${JOBS}" zImage
|
||||
cp ./arch/arm/boot/zImage "${target}/RPi2-${KERNEL}-virtio"
|
||||
make clean
|
||||
|
||||
# RPi4 (32 Bit)...
|
||||
export KERNEL="kernel7l"
|
||||
make bcm2711_defconfig
|
||||
./scripts/kconfig/merge_config.sh .config ../.config-virtio
|
||||
make --jobs="${JOBS}" zImage
|
||||
cp ./arch/arm/boot/zImage "${target}/RPi4-${KERNEL}-virtio"
|
||||
make clean
|
||||
|
||||
# RPi4 (64 Bit)...
|
||||
export KERNEL="kernel8"
|
||||
export ARCH="arm64"
|
||||
export CROSS_COMPILE="aarch64-linux-gnu-"
|
||||
make bcm2711_defconfig
|
||||
./scripts/kconfig/merge_config.sh .config ../.config-virtio
|
||||
make --jobs="${JOBS}" Image
|
||||
cp ./arch/arm64/boot/Image "${target}/RPi4-${KERNEL}-virtio"
|
||||
|
||||
# cleanup:
|
||||
cd ..
|
||||
rm -rf ./linux
|
||||
done
|
||||
|
||||
exit 0
|
BIN
home/lucifer/RPi/versatilepb/kernel-qemu-5.4.51-buster
Normal file
BIN
home/lucifer/RPi/versatilepb/kernel-qemu-5.4.51-buster
Normal file
Binary file not shown.
BIN
home/lucifer/RPi/versatilepb/versatile-pb-buster-5.4.51.dtb
Normal file
BIN
home/lucifer/RPi/versatilepb/versatile-pb-buster-5.4.51.dtb
Normal file
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user