Closed TomaszAIR closed 8 months ago
In DTS we have FAT32 partition because of using biosplusuefi plugin https://github.com/Dasharo/meta-dts/blob/main/meta-dts-distro/wic/usb-stick-dts.wks.in#L3, it was needed to boot DTS on platforms with legacy BIOS. IIRC correctly we dealt with such one as APU PCEngines. Or maybe it was Dell OptiPlex..
@miczyg1 there are plans to use DES on apu - is there UEFI support? Do we need possibility to boot DTS on legacy platforms?
there are plans to use DES on apu - is there UEFI support?
It is going to be.
Do we need possibility to boot DTS on legacy platforms?
Yes, that would be preferable that legacy BIOS is still supported.
ESP can still use MBR partitioning scheme to support legacy boot. Just the FAT32 partition type must be of type 0xef
EFI (FAT-12/16/32)) instead of 0x0c
W95 FAT32 (LBA)
0 Vide 1e Hidden W95 FAT1 80 Old Minix bf Solaris
1 FAT12 24 NEC DOS 81 Minix / old Lin c1 DRDOS/sec (FAT-
2 XENIX root 39 Plan 9 82 Linux swap / So c4 DRDOS/sec (FAT-
3 XENIX usr 3c PartitionMagic 83 Linux c6 DRDOS/sec (FAT-
4 FAT16 <32M 40 Venix 80286 84 OS/2 hidden C: c7 Syrinx
5 Extended 41 PPC PReP Boot 85 Linux extended da Non-FS data
6 FAT16 42 SFS 86 NTFS volume set db CP/M / CTOS / .
7 HPFS/NTFS 4d QNX4.x 87 NTFS volume set de Dell Utility
8 AIX 4e QNX4.x 2nd part 88 Linux plein tex df BootIt
9 AIX bootable 4f QNX4.x 3rd part 8e Linux LVM e1 DOS access
a OS/2 Boot Manag 50 OnTrack DM 93 Amoeba e3 DOS R/O
b W95 FAT32 51 OnTrack DM6 Aux 94 Amoeba BBT e4 SpeedStor
c W95 FAT32 (LBA) 52 CP/M 9f BSD/OS eb BeOS fs
e W95 FAT16 (LBA) 53 OnTrack DM6 Aux a0 IBM Thinkpad hi ee GPT
f W95 Etendu (LBA 54 OnTrackDM6 a5 FreeBSD ef EFI (FAT-12/16/
10 OPUS 55 EZ-Drive a6 OpenBSD f0 Linux/PA-RISC b
11 Hidden FAT12 56 Golden Bow a7 NeXTSTEP f1 SpeedStor
12 Compaq diagnost 5c Priam Edisk a8 UFS Darwin f4 SpeedStor
14 Hidden FAT16 <3 61 SpeedStor a9 NetBSD f2 DOS secondary
16 Hidden FAT16 63 GNU HURD or Sys ab Amorce Darwin fb VMware VMFS
17 Hidden HPFS/NTF 64 Novell Netware b7 BSDI fs fc VMware VMKCORE
18 AST SmartSleep 65 Novell Netware b8 BSDI swap fd Linux raid auto
1b Hidden W95 FAT3 70 DiskSecure Mult bb Boot Wizard hid fe LANstep
1c Hidden W95 FAT3 75 PC/IX be Amorce Solaris ff BBT
Agree with @miczyg1. From UEFI specification:
If an MBR partition has an OSType field of 0xEF (i.e., UEFI System Partition), then the firmware must add the UEFI System Partition GUID to the handle for the MBR partition using InstallProtocolInterface(). This allows drivers and applications, including OS loaders, to easily search for handles that represent UEFI System Partitions.
It seems (have not found in .wks
files documentation) that wic tool
has OSType
option. So all is needed is to specify correct partition type.
Or it can be configured via --part-type
according to .wks
file documentation using EFI partion GUID C12A7328-F81F-11D2-BA4B-00A0C93EC93B
.
You can't use part type:
This option is a Wic-specific option that specifies the partition type globally unique identifier (GUID) for GPT partitions.
You have MBR partitioning not GPT partitioning
The right option to use is --system-id
where you define the HEX number of partition type from the list I linked in previous comments
Fixed with https://github.com/Dasharo/meta-dts/pull/101#issuecomment-2003696533; will be released in v1.2.20
With this issue closed, should DTS now be detected by the ESP scanning feature in UEFI? Because it's not working for me on apu4, DTS v1.2.20 on a USB stick
Ah right we also need https://github.com/Dasharo/edk2/commit/c7584a30aefe8f4e26392be3f1f1b6390beb46ea which isn't in apu2 releases yet
We will have to live without it in this release then. Unless we will need to include more edk2 changes any way, due to some fixes, then we may consider pulling it as well.
The DTS boot partition is standard FAT32, not EFI System Partition type. As a result it cannot be found by ESP scanning in Dasharo firmware.