##// END OF EJS Templates
Merge branch 'ref+fix' of https://github.com/burnbabyburn/rpi23-gen-image into ref+fix
burnbabyburn -
r360:7d6ba716d8f3 Fusion
parent child
Show More
@@ -8,7 +8,7
8 8 # Fetch and build latest raspberry kernel
9 9 if [ "$BUILD_KERNEL" = true ] ; then
10 10 # Setup source directory
11 mkdir -p "${R}/usr/src/linux"
11 mkdir -p "${KERNEL_DIR}"
12 12
13 13 # Copy existing kernel sources into chroot directory
14 14 if [ -n "$KERNELSRC_DIR" ] && [ -d "$KERNELSRC_DIR" ] ; then
@@ -83,6 +83,10 if [ "$BUILD_KERNEL" = true ] ; then
83 83 "${KERNEL_DIR}/.config"
84 84 fi
85 85
86 if [ "$KERNELSRC_CONFIG" = true ] ; then
87 # Load default raspberry kernel configuration
88 make -C "${KERNEL_DIR}" ARCH="${KERNEL_ARCH}" CROSS_COMPILE="${CROSS_COMPILE}" "${KERNEL_DEFCONFIG}"
89
86 90 #Switch to KERNELSRC_DIR
87 91 pushd "${KERNEL_DIR}"
88 92
@@ -93,7 +97,6 if [ "$BUILD_KERNEL" = true ] ; then
93 97 # requires activation via kernel parameter or sysfs
94 98 # see e.g. https://askubuntu.com/a/472227 for a summary of ZSWAP (vs ZRAM etc.)
95 99 # and e.g. https://wiki.archlinux.org/index.php/zswap for parameters etc.
96
97 100 set_kernel_config ZPOOL y
98 101 set_kernel_config ZSWAP y
99 102 set_kernel_config ZBUD y
@@ -105,7 +108,6 if [ "$BUILD_KERNEL" = true ] ; then
105 108 if [ "$KERNEL_VIRT" = true ] && ( [ "$RPI_MODEL" = 3 ] || [ "$RPI_MODEL" = 3P ] ) ; then
106 109 # enable basic KVM support; see e.g.
107 110 # https://www.raspberrypi.org/forums/viewtopic.php?f=63&t=210546&start=25#p1300453
108
109 111 set_kernel_config VIRTUALIZATION y
110 112 set_kernel_config KVM y
111 113 set_kernel_config VHOST_NET m
@@ -220,12 +222,9 if [ "$BUILD_KERNEL" = true ] ; then
220 222 set_kernel_config CONFIG_CGROUP_BPF y
221 223 fi
222 224
225 #Revert to previous directory
223 226 popd
224 227
225 if [ "$KERNELSRC_CONFIG" = true ] ; then
226 # Load default raspberry kernel configuration
227 make -C "${KERNEL_DIR}" ARCH="${KERNEL_ARCH}" CROSS_COMPILE="${CROSS_COMPILE}" "${KERNEL_DEFCONFIG}"
228
229 228 # Set kernel configuration parameters to enable qemu emulation
230 229 if [ "$ENABLE_QEMU" = true ] ; then
231 230 echo "CONFIG_FHANDLE=y" >> "${KERNEL_DIR}"/.config
@@ -396,7 +395,7 if [ "$KERNEL_ARCH" = arm64 ] && ( [ "$RPI_MODEL" = 3 ] || [ "$RPI_MODEL" = 3P ]
396 395 rm -fr "${temp_dir}"
397 396
398 397 # Set permissions of the kernel sources
399 chown -R root:root "${R}/boot"
398 chown -R root:root "${R}/boot/firmware"
400 399 chown -R root:root "${R}/lib"
401 400 fi
402 401
@@ -135,17 +135,17 ln -sf firmware/config.txt "${R}/boot/config.txt"
135 135 ln -sf firmware/cmdline.txt "${R}/boot/cmdline.txt"
136 136
137 137 # Install and setup kernel modules to load at boot
138 mkdir -p "${R}/lib/modules-load.d/"
139 install_readonly files/modules/rpi2.conf "${R}/lib/modules-load.d/rpi2.conf"
138 mkdir -p "${LIB_DIR}/modules-load.d/"
139 install_readonly files/modules/rpi2.conf "${LIB_DIR}/modules-load.d/rpi2.conf"
140 140
141 141 # Load hardware random module at boot
142 142 if [ "$ENABLE_HWRANDOM" = true ] && [ "$BUILD_KERNEL" = false ] ; then
143 sed -i "s/^# bcm2708_rng/bcm2708_rng/" "${R}/lib/modules-load.d/rpi2.conf"
143 sed -i "s/^# bcm2708_rng/bcm2708_rng/" "${LIB_DIR}/modules-load.d/rpi2.conf"
144 144 fi
145 145
146 146 # Load sound module at boot
147 147 if [ "$ENABLE_SOUND" = true ] ; then
148 sed -i "s/^# snd_bcm2835/snd_bcm2835/" "${R}/lib/modules-load.d/rpi2.conf"
148 sed -i "s/^# snd_bcm2835/snd_bcm2835/" "${LIB_DIR}/modules-load.d/rpi2.conf"
149 149 else
150 150 echo "dtparam=audio=off" >> "${BOOT_DIR}/config.txt"
151 151 fi
@@ -153,16 +153,16 fi
153 153 # Enable I2C interface
154 154 if [ "$ENABLE_I2C" = true ] ; then
155 155 echo "dtparam=i2c_arm=on" >> "${BOOT_DIR}/config.txt"
156 sed -i "s/^# i2c-bcm2708/i2c-bcm2708/" "${R}/lib/modules-load.d/rpi2.conf"
157 sed -i "s/^# i2c-dev/i2c-dev/" "${R}/lib/modules-load.d/rpi2.conf"
156 sed -i "s/^# i2c-bcm2708/i2c-bcm2708/" "${LIB_DIR}/modules-load.d/rpi2.conf"
157 sed -i "s/^# i2c-dev/i2c-dev/" "${LIB_DIR}/modules-load.d/rpi2.conf"
158 158 fi
159 159
160 160 # Enable SPI interface
161 161 if [ "$ENABLE_SPI" = true ] ; then
162 162 echo "dtparam=spi=on" >> "${BOOT_DIR}/config.txt"
163 echo "spi-bcm2708" >> "${R}/lib/modules-load.d/rpi2.conf"
163 echo "spi-bcm2708" >> "${LIB_DIR}/modules-load.d/rpi2.conf"
164 164 if [ "$RPI_MODEL" = 3 ] || [ "$RPI_MODEL" = 3P ]; then
165 sed -i "s/spi-bcm2708/spi-bcm2835/" "${R}/lib/modules-load.d/rpi2.conf"
165 sed -i "s/spi-bcm2708/spi-bcm2835/" "${LIB_DIR}/modules-load.d/rpi2.conf"
166 166 fi
167 167 fi
168 168
@@ -83,7 +83,7 ETC_DIR="${R}/etc"
83 83 LIB_DIR="${R}/lib"
84 84 BOOT_DIR="${R}/boot/firmware"
85 85 KERNEL_DIR="${R}/usr/src/linux"
86 WLAN_FIRMWARE_DIR="${R}/lib/firmware/brcm"
86 WLAN_FIRMWARE_DIR="${LIB_DIR}/firmware/brcm"
87 87
88 88 # Firmware directory: Blank if download from github
89 89 RPI_FIRMWARE_DIR=${RPI_FIRMWARE_DIR:=""}
General Comments 0
Vous devez vous connecter pour laisser un commentaire. Se connecter maintenant