I’m trying to update the bios on my framework16 to latest. I’m always shaky when EFI shell tools go awry, but I believe I’ve followed the correct steps. Starting by making a new fat32 drive:
~initialize the disk partition
$ sudo fdisk /dev/sdf # select [n]ew [p]rimary [1], with size [+1G] and set [t] to [b] for WIN95_FAT32
<fdisk> Command (m for help): p
Disk /dev/sdf: 57.77 GiB, 62026416128 bytes, 121145344 sectors
Disk model: USB DISK 3.2
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xf890383f
Device Boot Start End Sectors Size Id Type
/dev/sdf1 2048 2099199 2097152 1G b W95 FAT32
make a new fat32 filesystem & mount
$ sudo mkfs.vfat /dev/sdf1
$ mkdir /tmp/usb-1gb-fat32 && sudo mount /dev/sdf1 -t vfat /tmp/usb-1gb-fat32
unzip the bios efi zip to the root of the drive:
$ cd /tmp/usb-1gb-fat32
$ unzip ~/Framework_Laptop_16_Amd_Ryzen7040_BIOS_3.05_EFI.zip
Archive: ~Framework_Laptop_16_Amd_Ryzen7040_BIOS_3.05_EFI.zip
inflating: CapsuleApp.efi
creating: efi/
creating: efi/boot/
inflating: efi/boot/BootX64.efi
inflating: efi/boot/Startup.nsh
inflating: Framework_Laptop_16_Ryzen7040_capsule_signed_allsku_3.05.cap
inflating: winux.bin
$ pwd
/tmp/usb-1gb-fat32
$ ls -l
total 36044
drwxr-xr-x 3 root root 4096 Dec 31 1969 ./
drwxrwxrwt 1 root root 19722 Dec 9 20:12 ../
-rwxr-xr-x 1 root root 87048 Nov 12 19:17 CapsuleApp.efi*
drwxr-xr-x 3 root root 4096 Nov 12 19:17 efi/
-rwxr-xr-x 1 root root 36129956 Nov 12 19:17 Framework_Laptop_16_Ryzen7040_capsule_signed_allsku_3.05.cap*
-rwxr-xr-x 1 root root 676898 Nov 12 19:17 winux.bin*
unmount & boot the drive, results in
live on the device:
# the above image ^
Error: Cannot find a EFI system partition!
CapsuleApp: cannot find a valid system on boot devices. Status = Not Found
...
FS0:\> ls
Directory of FS0:\>
... CapsuleApp.efi
... <dir> ... efi
... Framework....3.05.cap
... winux.bin