##// END OF EJS Templates
cleanups
Unknown -
r389:bc6d966f8243
parent child
Show More
@@ -9,7 +9,7 The following list of Debian packages must be installed on the build system beca
9
9
10 It is recommended to configure the `rpi23-gen-image.sh` script to build and install the latest Raspberry Pi Linux kernel. For the RPi3 this is mandatory. Kernel compilation and linking will be performed on the build system using an ARM (armhf) cross-compiler toolchain.
10 It is recommended to configure the `rpi23-gen-image.sh` script to build and install the latest Raspberry Pi Linux kernel. For the RPi3 this is mandatory. Kernel compilation and linking will be performed on the build system using an ARM (armhf) cross-compiler toolchain.
11
11
12 The script has been tested using the default `crossbuild-essential-armhf` toolchain meta package on Debian Linux and `stretch` build systems. Please check the [Debian CrossToolchains Wiki](https://wiki.debian.org/CrossToolchains) for further information.
12 The script has been tested using the default `crossbuild-essential-armhf` toolchain meta package on Debian Linux `stretch` build systems. Please check the [Debian CrossToolchains Wiki](https://wiki.debian.org/CrossToolchains) for further information.
13
13
14 ## Command-line parameters
14 ## Command-line parameters
15 The script accepts certain command-line parameters to enable or disable specific OS features, services and configuration settings. These parameters are passed to the `rpi23-gen-image.sh` script via (simple) shell-variables. Unlike environment shell-variables (simple) shell-variables are defined at the beginning of the command-line call of the `rpi23-gen-image.sh` script.
15 The script accepts certain command-line parameters to enable or disable specific OS features, services and configuration settings. These parameters are passed to the `rpi23-gen-image.sh` script via (simple) shell-variables. Unlike environment shell-variables (simple) shell-variables are defined at the beginning of the command-line call of the `rpi23-gen-image.sh` script.
@@ -57,6 +57,10 A comma separated list of additional packages to be installed by apt after boots
57 ---
57 ---
58
58
59 #### General system settings:
59 #### General system settings:
60 ##### `SET_ARCH`=32
61 Set Architecture to default 32bit. If you want to to compile 64bit (RPI3 or RPI3+) set it to `64`. This option will set every needed crosscompiler or boeard specific option for a successful build.
62 If you want to change e.g. cross-compiler -> Templates always override defaults
63
60 ##### `RPI_MODEL`=2
64 ##### `RPI_MODEL`=2
61 Specifiy the target Raspberry Pi hardware model. The script at this time supports the following Raspberry Pi models:
65 Specifiy the target Raspberry Pi hardware model. The script at this time supports the following Raspberry Pi models:
62 `0` = Used for Raspberry Pi 0 and Raspberry Pi 0 W
66 `0` = Used for Raspberry Pi 0 and Raspberry Pi 0 W
@@ -68,7 +72,7 Specifiy the target Raspberry Pi hardware model. The script at this time support
68 `BUILD_KERNEL`=true will automatically be set if the Raspberry Pi model `3` or `3P` is used.
72 `BUILD_KERNEL`=true will automatically be set if the Raspberry Pi model `3` or `3P` is used.
69
73
70 ##### `RELEASE`="buster"
74 ##### `RELEASE`="buster"
71 Set the desired Debian release name. The script at this time supports the bootstrapping of the Debian releases "stretch" and "buster". `BUILD_KERNEL`=true will automatically be set if the Debian releases `stretch` or `buster` are used.
75 Set the desired Debian release name. The script at this time supports the bootstrapping of the Debian releases `stretch` and `buster`.
72
76
73 ##### `RELEASE_ARCH`="armhf"
77 ##### `RELEASE_ARCH`="armhf"
74 Set the desired Debian release architecture.
78 Set the desired Debian release architecture.
@@ -191,6 +195,9 Install Xorg open-source X Window System.
191 ##### `ENABLE_WM`=""
195 ##### `ENABLE_WM`=""
192 Install a user defined window manager for the X Window System. To make sure all X related package dependencies are getting installed `ENABLE_XORG` will automatically get enabled if `ENABLE_WM` is used. The `rpi23-gen-image.sh` script has been tested with the following list of window managers: `blackbox`, `openbox`, `fluxbox`, `jwm`, `dwm`, `xfce4`, `awesome`.
196 Install a user defined window manager for the X Window System. To make sure all X related package dependencies are getting installed `ENABLE_XORG` will automatically get enabled if `ENABLE_WM` is used. The `rpi23-gen-image.sh` script has been tested with the following list of window managers: `blackbox`, `openbox`, `fluxbox`, `jwm`, `dwm`, `xfce4`, `awesome`.
193
197
198 ##### `ENABLE_SYSVINIT`=false
199 Support for halt,init,poweroff,reboot,runlevel,shutdown,telinit commands
200
194 ---
201 ---
195
202
196 #### Advanced system features:
203 #### Advanced system features:
@@ -243,7 +250,7 Path to a directory with scripts that should be run in the chroot before the ima
243 Create an initramfs that that will be loaded during the Linux startup process. `ENABLE_INITRAMFS` will automatically get enabled if `ENABLE_CRYPTFS`=true. This parameter will be ignored if `BUILD_KERNEL`=false.
250 Create an initramfs that that will be loaded during the Linux startup process. `ENABLE_INITRAMFS` will automatically get enabled if `ENABLE_CRYPTFS`=true. This parameter will be ignored if `BUILD_KERNEL`=false.
244
251
245 ##### `ENABLE_IFNAMES`=true
252 ##### `ENABLE_IFNAMES`=true
246 Enable automatic assignment of predictable, stable network interface names for all local Ethernet, WLAN interfaces. This might create complex and long interface names. This parameter is only supported if the Debian releases `stretch` or `buster` are used.
253 Enable automatic assignment of predictable, stable network interface names for all local Ethernet, WLAN interfaces. This might create complex and long interface names.
247
254
248 ##### `DISABLE_UNDERVOLT_WARNINGS`=
255 ##### `DISABLE_UNDERVOLT_WARNINGS`=
249 Disable RPi2/3 under-voltage warnings and overlays. Setting the parameter to `1` will disable the warning overlay. Setting it to `2` will additionally allow RPi2/3 turbo mode when low-voltage is present.
256 Disable RPi2/3 under-voltage warnings and overlays. Setting the parameter to `1` will disable the warning overlay. Setting it to `2` will additionally allow RPi2/3 turbo mode when low-voltage is present.
@@ -269,8 +276,8 Add SSH (v2) public key(s) from specified file to `authorized_keys` file to enab
269 ---
276 ---
270
277
271 #### Kernel compilation:
278 #### Kernel compilation:
272 ##### `BUILD_KERNEL`=false
279 ##### `BUILD_KERNEL`=true
273 Build and install the latest RPi2/3 Linux kernel. Currently only the default RPi2/3 kernel configuration is used. `BUILD_KERNEL`=true will automatically be set if the Raspberry Pi model `3` is used.
280 Build and install the latest RPi2/3 Linux kernel. Currently only the default RPi2/3 kernel configuration is used.
274
281
275 ##### `CROSS_COMPILE`="arm-linux-gnueabihf-"
282 ##### `CROSS_COMPILE`="arm-linux-gnueabihf-"
276 This sets the cross compile enviornment for the compiler.
283 This sets the cross compile enviornment for the compiler.
@@ -483,10 +490,6 Start QEMU full system emulation with cryptfs, initramfs and output to console:
483 qemu-system-arm -m 2048M -M vexpress-a15 -cpu cortex-a15 -kernel kernel7.img -no-reboot -dtb vexpress-v2p-ca15_a7.dtb -sd ${IMAGE_NAME}.qcow2 -initrd "initramfs-${KERNEL_VERSION}" -append "root=/dev/mapper/secure cryptdevice=/dev/mmcblk0p2:secure rw rootfstype=ext4 console=ttyAMA0,115200 init=/bin/systemd" -serial stdio
490 qemu-system-arm -m 2048M -M vexpress-a15 -cpu cortex-a15 -kernel kernel7.img -no-reboot -dtb vexpress-v2p-ca15_a7.dtb -sd ${IMAGE_NAME}.qcow2 -initrd "initramfs-${KERNEL_VERSION}" -append "root=/dev/mapper/secure cryptdevice=/dev/mmcblk0p2:secure rw rootfstype=ext4 console=ttyAMA0,115200 init=/bin/systemd" -serial stdio
484 ```
491 ```
485
492
486 ## Weekly image builds
487 The image files are provided by JRWR'S I/O PORT and are built once a Sunday at midnight UTC!
488 * [Debian Stretch Raspberry Pi2/3 Weekly Image Builds](https://jrwr.io/doku.php?id=projects:debianpi)
489
490 ## External links and references
493 ## External links and references
491 * [Debian worldwide mirror sites](https://www.debian.org/mirror/list)
494 * [Debian worldwide mirror sites](https://www.debian.org/mirror/list)
492 * [Debian Raspberry Pi 2 Wiki](https://wiki.debian.org/RaspberryPi2)
495 * [Debian Raspberry Pi 2 Wiki](https://wiki.debian.org/RaspberryPi2)
@@ -237,7 +237,7 if [ "$BUILD_KERNEL" = true ] ; then
237 echo "CONFIG_CRYPTO_XTS=y"
237 echo "CONFIG_CRYPTO_XTS=y"
238 echo "CONFIG_CRYPTO_SHA512=y"
238 echo "CONFIG_CRYPTO_SHA512=y"
239 echo "CONFIG_CRYPTO_MANAGER=y"
239 echo "CONFIG_CRYPTO_MANAGER=y"
240 } >> "${KERNEL_DIR}/.config"
240 } >> "${KERNEL_DIR}"/.config
241 fi
241 fi
242 fi
242 fi
243
243
@@ -100,7 +100,7 if [ "$ENABLE_INITRAMFS" = true ] ; then
100 fi
100 fi
101
101
102 # Disable RPi3 Bluetooth and restore ttyAMA0 serial device
102 # Disable RPi3 Bluetooth and restore ttyAMA0 serial device
103 if [ "$RPI_MODEL" = 3 ] || [ "$RPI_MODEL" = 3P ] || [ "$RPI_MODEL" = 3P ]; then
103 if [ "$RPI_MODEL" = 3 ] || [ "$RPI_MODEL" = 3P ] ; then
104 if [ "$ENABLE_CONSOLE" = true ] && [ "$ENABLE_UBOOT" = false ] ; then
104 if [ "$ENABLE_CONSOLE" = true ] && [ "$ENABLE_UBOOT" = false ] ; then
105 echo "dtoverlay=pi3-disable-bt" >> "${BOOT_DIR}/config.txt"
105 echo "dtoverlay=pi3-disable-bt" >> "${BOOT_DIR}/config.txt"
106 echo "enable_uart=1" >> "${BOOT_DIR}/config.txt"
106 echo "enable_uart=1" >> "${BOOT_DIR}/config.txt"
@@ -147,16 +147,10 if [ "$RPI_MODEL" = 3 ] || [ "$RPI_MODEL" = 3P ] || [ "$RPI_MODEL" = 3P ]; then
147 # install_readonly "${R}/tmp/pi-bluetooth/brcm43438.service" "${ETC_DIR}/systemd/system/brcm43438.service"
147 # install_readonly "${R}/tmp/pi-bluetooth/brcm43438.service" "${ETC_DIR}/systemd/system/brcm43438.service"
148 install_readonly "${R}/tmp/pi-bluetooth/debian/pi-bluetooth.bthelper@.service" "${ETC_DIR}/systemd/system/pi-bluetooth.bthelper@.service"
148 install_readonly "${R}/tmp/pi-bluetooth/debian/pi-bluetooth.bthelper@.service" "${ETC_DIR}/systemd/system/pi-bluetooth.bthelper@.service"
149 install_readonly "${R}/tmp/pi-bluetooth/debian/pi-bluetooth.hciuart.service" "${ETC_DIR}/systemd/system/pi-bluetooth.hciuart.service"
149 install_readonly "${R}/tmp/pi-bluetooth/debian/pi-bluetooth.hciuart.service" "${ETC_DIR}/systemd/system/pi-bluetooth.hciuart.service"
150
151
152 install_readonly "${R}/tmp/pi-bluetooth/99-com.rules" "${ETC_DIR}/udev/rules.d/99-com.rules"
150 install_readonly "${R}/tmp/pi-bluetooth/99-com.rules" "${ETC_DIR}/udev/rules.d/99-com.rules"
153
151
154 # Remove temporary directory
152 # Remove temporary directory
155 rm -fr "${temp_dir}"
153 rm -fr "${temp_dir}"
156
157 # Get /dev/serial back for compability
158
159
160 fi
154 fi
161 fi
155 fi
162
156
@@ -1,5 +1,5
1 # Set device tree fdtfile
1 # Set device tree fdtfile
2 setenv dtbfile bcm2710-rpi-3-b.dtb
2 setenv dtbfile bcm2709-rpi-2-b.dtb
3
3
4 # Tell Linux that it is booting on a Raspberry Pi2/3
4 # Tell Linux that it is booting on a Raspberry Pi2/3
5 setenv machid 0x00000c42
5 setenv machid 0x00000c42
@@ -9,7 +9,7 saveenv
9
9
10 # Load the existing Linux kernel into RAM
10 # Load the existing Linux kernel into RAM
11 mmc dev 0
11 mmc dev 0
12 fatload mmc 0:1 ${kernel_addr_r} Image
12 fatload mmc 0:1 ${kernel_addr_r} kernel7.img
13 fatload mmc 0:1 ${fdt_addr_r} ${dtbfile}
13 fatload mmc 0:1 ${fdt_addr_r} ${dtbfile}
14 fatload mmc 0:1 ${ramdisk_addr_r} ${initramfs}
14 fatload mmc 0:1 ${ramdisk_addr_r} ${initramfs}
15
15
@@ -40,13 +40,13 echo -n -e "\n#\n# RPi2/3 Bootstrap Settings\n#\n"
40 set -x
40 set -x
41
41
42 # Raspberry Pi model configuration
42 # Raspberry Pi model configuration
43 export RPI_MODEL=${RPI_MODEL:=2}
43 RPI_MODEL=${RPI_MODEL:=2}
44
44
45 # Debian release
45 # Debian release
46 export RELEASE=${RELEASE:=buster}
46 RELEASE=${RELEASE:=buster}
47
47
48 #Kernel Branch
48 #Kernel Branch
49 export KERNEL_BRANCH=${KERNEL_BRANCH:=""}
49 KERNEL_BRANCH=${KERNEL_BRANCH:=""}
50
50
51 # URLs
51 # URLs
52 KERNEL_URL=${KERNEL_URL:=https://github.com/raspberrypi/linux}
52 KERNEL_URL=${KERNEL_URL:=https://github.com/raspberrypi/linux}
@@ -86,6 +86,7 WLAN_FIRMWARE_DIR="${LIB_DIR}/firmware/brcm"
86
86
87 # Firmware directory: Blank if download from github
87 # Firmware directory: Blank if download from github
88 RPI_FIRMWARE_DIR=${RPI_FIRMWARE_DIR:=""}
88 RPI_FIRMWARE_DIR=${RPI_FIRMWARE_DIR:=""}
89
89 # General settings
90 # General settings
90 SET_ARCH=${SET_ARCH:=32}
91 SET_ARCH=${SET_ARCH:=32}
91 HOSTNAME=${HOSTNAME:=rpi${RPI_MODEL}-${RELEASE}}
92 HOSTNAME=${HOSTNAME:=rpi${RPI_MODEL}-${RELEASE}}
General Comments 0
Vous devez vous connecter pour laisser un commentaire. Se connecter maintenant