Package: release.debian.org
Severity: normal
User: release.debian....@packages.debian.org
Usertags: unblock
X-Debbugs-Cc: flash-ker...@packages.debian.org, debian-b...@lists.debian.org, 
vagr...@debian.org
Control: affects -1 + src:flash-kernel

Please unblock package flash-kernel

[ Reason ]

* Fixes issues in the OLPC boot script
* Adds hardware database entries for numerous boards
* Fixes reproducibilitiy issues with temporary files
* Fixes a regression since bullseye when building images on EFI
  systems

[ Impact ]

* Various hardware support is added, fixed or improved for better out
  of box experience.
* Reproducible building of system images created that include
  flash-kernel are possible.
* Creating images that use flash-kernel boot scripts is possible from
  EFI hosts systems again.

[ Tests ]

Tested booting pinebook pro (no regressions!)

[ Risks ]

Some of the hardware support is for obscure hardware, so may be hard
to test broadly (impact on other boards should be unlikely, though).

[ Checklist ]
  [X] all changes are documented in the d/changelog
  [X] I reviewed all changes and I approve them
  [X] attach debdiff against the package in testing

[ Other info ]

This is used by debian-installer, and they might want to make an RC
soon...

unblock flash-kernel/3.107


Thanks for considering!

live well,
  vagrant

diff -Nru flash-kernel-3.106/bootscript/armhf/olpc.fth 
flash-kernel-3.107/bootscript/armhf/olpc.fth
--- flash-kernel-3.106/bootscript/armhf/olpc.fth        2022-03-23 
07:22:28.000000000 -0700
+++ flash-kernel-3.107/bootscript/armhf/olpc.fth        2023-04-08 
17:51:45.000000000 -0700
@@ -1,19 +1,30 @@
 \ OLPC XO boot script
 
 : check-ofw-version ( -- )
-   " /" find-device
-   " compatible" get-property  abort" No compatible property on /" ( -- 
compatible$ )
-   " mrvl,mmp2" 2swap substring? not  if
-     cr
+   " /" find-device " compatible" get-property
+   abort" No compatible property on /" ( -- compatible$ )
+
+   \ Good compatible strings
+   " mrvl,mmp2"    2over sindex -1 <>  if  2drop exit  then
+   " marvell,mmp3" 2over sindex -1 <>  if  2drop exit  then
+
+   \ Try to be helpful
+   cr
+   " olpc,xo-1.75" 2swap sindex -1 <>  if
      ." Firmware Q4E00 or newer is needed to boot a Devicetree enabled 
kernel." cr
      cr
      ." One way to update is to copy http://dev.laptop.org/~quozl/q4e00ja.rom"; 
cr
      ." to a FAT partition on a USB flash stick and run ""flash 
u:\q4e00ja.rom""" cr
-     cr
-     ." Aborting boot." cr
-     show-sad
-     abort
+     " show-sad" eval
+   else
+     ." This hardware or firmware revision is not supported. Sorry." cr
    then
+   cr
+   ." Aborting boot." cr
+   abort
+;
+
+: set-model
    \ Make sure the model is sensible -- flash-kernel relies on this.
    " model" delete-property
    " OLPC XO-1.75" " model" string-property
@@ -21,6 +32,7 @@
 
 visible unfreeze
 check-ofw-version
+set-model
 
 " last:\@@KERNEL@@" to boot-device
 " last:\@@INITRD@@" to ramdisk
diff -Nru flash-kernel-3.106/db/all.db flash-kernel-3.107/db/all.db
--- flash-kernel-3.106/db/all.db        2022-04-22 16:48:49.000000000 -0700
+++ flash-kernel-3.107/db/all.db        2023-04-08 17:51:45.000000000 -0700
@@ -29,6 +29,13 @@
 U-Boot-Script-Name: bootscr.sunxi
 Required-Packages: u-boot-tools
 
+Machine: Allwinner D1 Nezha
+Kernel-Flavors: allwinner riscv64
+DTB-Id: allwinner/sun20i-d1-nezha.dtb
+Boot-Script-Path: /boot/boot.scr
+U-Boot-Script-Name: bootscr.uboot-generic
+Required-Packages: u-boot-tools
+
 Machine: Allwinner GA10H Quad Core Tablet (v1.1)
 Kernel-Flavors: armmp armmp-lpae
 Boot-Script-Path: /boot/boot.scr
@@ -386,6 +393,9 @@
 U-Boot-Script-Name: bootscr.sunxi
 Required-Packages: u-boot-tools
 
+## qemu instance on armhf
+Machine: Dummy Virtual Machine
+
 Machine: Empire Electronix D709 tablet
 Kernel-Flavors: armmp
 Boot-Script-Path: /boot/boot.scr
@@ -421,6 +431,9 @@
 U-Boot-Script-Name: bootscr.uboot-generic
 Required-Packages: u-boot-tools
 
+## ARMv8 Foundation Model
+Machine: Foundation-v8A
+
 Machine: Freescale i.MX53 Quick Start Board
 Machine: Freescale MX53 LOCO Board
 Kernel-Flavors: armmp mx5
@@ -895,6 +908,24 @@
 U-Boot-Script-Name: bootscr.sunxi
 Required-Packages: u-boot-tools
 
+Machine: Lenovo Miix 630
+Kernel-Flavors: arm64
+Boot-Script-Path: /boot/boot.scr
+DTB-Id: qcom/msm8998-lenovo-miix-630.dtb
+U-Boot-Script-Name: bootscr.uboot-generic
+Required-Packages: u-boot-tools
+
+Machine: Lenovo ThinkPad X13s
+Kernel-Flavors: any
+DTB-Id: qcom/sc8280xp-lenovo-thinkpad-x13s.dtb
+
+Machine: Lenovo Yoga C630
+Kernel-Flavors: arm64
+Boot-Script-Path: /boot/boot.scr
+DTB-Id: qcom/sdm850-lenovo-yoga-c630.dtb
+U-Boot-Script-Name: bootscr.uboot-generic
+Required-Packages: u-boot-tools
+
 Machine: Lichee Pi Zero
 Kernel-Flavors: armmp armmp-lpae
 Boot-Script-Path: /boot/boot.scr
@@ -923,6 +954,9 @@
 U-Boot-Script-Name: bootscr.sunxi
 Required-Packages: u-boot-tools
 
+## qemu instance on arm64
+Machine: linux,dummy-virt
+
 Machine: Marvell 8040 MACCHIATOBin
 Machine: Marvell 8040 MACCHIATOBin Double-shot
 Machine: Marvell 8040 MACHIATOBin
@@ -1268,6 +1302,13 @@
 U-Boot-Script-Name: bootscr.sunxi
 Required-Packages: u-boot-tools
 
+Machine: Olimex A20-OLinuXino-MICRO-eMMC
+Kernel-Flavors: armmp armmp-lpae
+Boot-Script-Path: /boot/boot.scr
+DTB-Id: sun7i-a20-olinuxino-micro-emmc.dtb
+U-Boot-Script-Name: bootscr.sunxi
+Required-Packages: u-boot-tools
+
 Machine: Olimex A33-OLinuXino
 Kernel-Flavors: armmp armmp-lpae
 Boot-Script-Path: /boot/boot.scr
@@ -1649,6 +1690,7 @@
 Required-Packages: u-boot-tools
 Boot-Script-Path: /boot/boot.scr
 
+Machine: Raspberry Pi 3 Model B Plus Rev 1.3
 Machine: Raspberry Pi 3 Model B+
 Kernel-Flavors: arm64 armmp armmp-lpae
 DTB-Id: broadcom/bcm2837-rpi-3-b-plus.dtb
@@ -1670,6 +1712,9 @@
 Required-Packages: u-boot-tools
 Boot-Script-Path: /boot/boot.scr
 
+## qemu instance on risc-v
+Machine: riscv-virtio,qemu
+
 Machine: Rockchip RK3288 Tinker Board
 Kernel-Flavors: armmp armmp-lpae
 DTB-Id: rk3288-tinker.dtb
@@ -1778,6 +1823,13 @@
 U-Boot-Script-Name: bootscr.sunxi
 Required-Packages: u-boot-tools
 
+Machine: Sipeed Lichee RV
+Kernel-Flavors: allwinner riscv64
+DTB-Id: allwinner/sun20i-d1-lichee-rv.dtb
+Boot-Script-Path: /boot/boot.scr
+U-Boot-Script-Name: bootscr.uboot-generic
+Required-Packages: u-boot-tools
+
 Machine: SolidRun Clearfog A1
 Kernel-Flavors: armmp
 Boot-Script-Path: /boot/boot.scr
@@ -1953,6 +2005,13 @@
 U-Boot-Script-Name: bootscr.uboot-generic
 Required-Packages: u-boot-tools
 
+Machine: StarFive VisionFive V1
+Kernel-Flavors: starfive riscv64
+DTB-Id: starfive/jh7100-starfive-visionfive-v1.dtb
+Boot-Script-Path: /boot/boot.scr
+U-Boot-Script-Name: bootscr.uboot-generic
+Required-Packages: u-boot-tools
+
 Machine: Theobroma Systems RK3399-Q7 SoM
 Kernel-Flavors: arm64
 DTB-Id: rockchip/rk3399-puma-haikou.dtb
@@ -1996,6 +2055,34 @@
 Boot-Script-Path: /boot/boot.scr
 Required-Packages: u-boot-tools
 
+Machine: Toradex Colibri iMX6ULL 1GB (eMMC) on Colibri Aster
+Kernel-Flavors: armmp armmp-lpae
+DTB-Id: imx6ull-colibri-emmc-aster.dtb
+Boot-Script-Path: /boot/boot.scr
+U-Boot-Script-Name: bootscr.uboot-generic
+Required-Packages: u-boot-tools
+
+Machine: Toradex Colibri iMX6ULL 1GB (eMMC) on Colibri Evaluation Board V3
+Kernel-Flavors: armmp armmp-lpae
+DTB-Id: imx6ull-colibri-emmc-eval-v3.dtb
+Boot-Script-Path: /boot/boot.scr
+U-Boot-Script-Name: bootscr.uboot-generic
+Required-Packages: u-boot-tools
+
+Machine: Toradex Colibri iMX6ULL 1GB (eMMC) on Colibri Iris
+Kernel-Flavors: armmp armmp-lpae
+DTB-Id: imx6ull-colibri-emmc-iris.dtb
+Boot-Script-Path: /boot/boot.scr
+U-Boot-Script-Name: bootscr.uboot-generic
+Required-Packages: u-boot-tools
+
+Machine: Toradex Colibri iMX6ULL 1GB (eMMC) on Colibri Iris V2
+Kernel-Flavors: armmp armmp-lpae
+DTB-Id: imx6ull-colibri-emmc-iris-v2.dtb
+Boot-Script-Path: /boot/boot.scr
+U-Boot-Script-Name: bootscr.uboot-generic
+Required-Packages: u-boot-tools
+
 Machine: Toshiba AC100 / Dynabook AZ
 Method: android
 Android-Boot-Device: /dev/mmcblk0
diff -Nru flash-kernel-3.106/debian/changelog 
flash-kernel-3.107/debian/changelog
--- flash-kernel-3.106/debian/changelog 2022-04-22 16:55:41.000000000 -0700
+++ flash-kernel-3.107/debian/changelog 2023-04-19 14:12:53.000000000 -0700
@@ -1,3 +1,43 @@
+flash-kernel (3.107) unstable; urgency=medium
+
+  [ Lubomir Rintel ]
+  * Make the OLPC XO-1.75 boot script a bit more forgiving
+
+  [ Heinrich Schuchardt ]
+  * db: add Lenovo Miix 630 and Lenovo Yoga C630
+
+  [ Alexandre Ghiti ]
+  * Add the StarFive VisionFive board to the database.
+  * Add D1 SoC boards to the database
+
+  [ Johannes Schauer Marin Rodrigues ]
+  * Choose a stable temporary file path for ucf
+
+  [ Dave Jones ]
+  * Add QEMU-related "dummy" entries
+
+  [ Daniel Serpell ]
+  * Add A20-OLinuXino_MICRO-eMMC. (Closes: #1019881)
+
+  [ Heinrich Schuchardt ]
+  * db: add Lenovo ThinkPad X13s
+
+  [ Francesco Dolcini ]
+  * Add machine db entries for Colibri iMX6ULL eMMC
+
+  [ Heinrich Schuchardt ]
+  * db: add 'Raspberry Pi 3 Model B Plus Rev 1.3'
+
+  [ Isaac True ]
+  * Skip EFI detection mechanism when the FK_IGNORE_EFI environment
+    variable is set to "yes". (Closes: #1033737)
+
+  [ Vagrant Cascadian ]
+  * Set the value of FK_IGNORE_EFI from
+    /etc/flash-kernel/ignore-efi. (Closes: #1033737)
+
+ -- Vagrant Cascadian <vagr...@debian.org>  Wed, 19 Apr 2023 14:12:53 -0700
+
 flash-kernel (3.106) unstable; urgency=medium
 
   * db/all.db: Move MNT Reform 2 boards later to fix sort order.
diff -Nru flash-kernel-3.106/debian/flash-kernel.postinst 
flash-kernel-3.107/debian/flash-kernel.postinst
--- flash-kernel-3.106/debian/flash-kernel.postinst     2022-03-23 
07:22:28.000000000 -0700
+++ flash-kernel-3.107/debian/flash-kernel.postinst     2023-04-08 
17:51:45.000000000 -0700
@@ -23,7 +23,7 @@
        configure)
                . /usr/share/debconf/confmodule
 
-               tmp_default_fk="$(mktemp -t flash-kernel.XXXXXXXXXX)"
+               tmp_default_fk="/etc/default/flash-kernel.ucftmp"
                trap "rm -f ${tmp_default_fk}" EXIT
                cp -p /usr/share/flash-kernel/default/flash-kernel \
                        ${tmp_default_fk}
diff -Nru flash-kernel-3.106/flash-kernel.8 flash-kernel-3.107/flash-kernel.8
--- flash-kernel-3.106/flash-kernel.8   2022-03-23 07:22:28.000000000 -0700
+++ flash-kernel-3.107/flash-kernel.8   2023-04-19 13:46:20.000000000 -0700
@@ -40,6 +40,10 @@
 .B choice of machine may cause host filesystem partitions to be mounted and 
 .B modified.
 
+.IP FK_IGNORE_EFI
+Skip EFI detection when this variable is set to `yes'. Normally, flash-kernel
+will abort if it detects that the system is running in EFI mode.
+
 .SH FILES
 .TP
 .B /usr/share/flash-kernel/db/all.db
@@ -54,5 +58,8 @@
 If present this can be used to override the machine autodetection. The
 contents must be a string which matches an entry in the database. Or
 `none' to disable flash\-kernel.
+.B /etc/flash\-kernel/ignore-efi
+If present, the contents of this file are used to set the value of the
+FK_IGNORE_EFI environment variable.
 .SH AUTHOR
 Martin Michlmayr <t...@cyrius.com>
diff -Nru flash-kernel-3.106/functions flash-kernel-3.107/functions
--- flash-kernel-3.106/functions        2022-04-12 12:43:15.000000000 -0700
+++ flash-kernel-3.107/functions        2023-04-19 13:39:31.000000000 -0700
@@ -789,7 +789,10 @@
        kfile=$(readlink -e "$kfile")
 fi
 
-if [ -d /sys/firmware/efi ]; then
+if [ -f /etc/flash-kernel/ignore-efi ] && [ -z "$FK_IGNORE_EFI" ]; then
+   FK_IGNORE_EFI="$(cat /etc/flash-kernel/ignore-efi)"
+fi
+if [ -d /sys/firmware/efi ] && [ "x$FK_IGNORE_EFI" != "xyes" ]; then
        # skipping when detect EFI
        echo "System running in EFI mode, skipping."
        exit 0

Attachment: signature.asc
Description: PGP signature

Reply via email to