home  bbs  files  messages ]

      ZZLI4427             linux.debian.maint.boot             505 messages      

[ previous | next | reply ]

[ list messages | list forums ]

  Msg # 385 of 505 on ZZLI4427, Saturday 8-29-25, 1:47  
  From: PASCAL HAMBOURG  
  To: ALL  
  Subj: Bug#1112448: partman-partitioning: GPT m  
 XPost: linux.debian.bugs.dist, linux.debian.ports.arm 
 From: pascal@plouf.fr.eu.org 
  
 Package: partman-partitioning 
 Version: 159 
 X-Debbugs-CC: debian-arm@lists.debian.org 
  
 Dear maintainers, 
  
 On many platforms based on ARM SoCs, the normal boot process usually 
 involves loading a boot loader (often U-Boot) from a fixed location of a 
 SD card or eMMC, specific to each SoC family. The Debian installer can 
 install the system on the same SD/eMMC or on any other attached storage 
 device supported by the boot loader. It does not install U-Boot itself, 
 so the installed system relies on the same boot loader as the installer. 
  
 The default partition table type for arm64/* and armhf/efi platforms is 
 GPT (may be overridden with partman-partitioning/default_label). 
 However, GPT standard layout overlaps with the boot location of some SoC 
 families such as Allwinner sunxi and NXP/Freescale i.MX. So creating a 
 GPT partition table on the boot device overwrites the boot loader and 
 renders the system unable to boot. 
  
 Details: 
 - GPT primary table standard layout uses sectors 2-33 (1KiB-17KiB). The 
 GPT specification allows to change the partition table size and location 
 but libparted which partman uses can only create a standard GPT layout. 
 - sunxi standard boot location starts at sector 16 (8KiB). Newer models, 
 including armhf H3 and all arm64, support an alternate boot location at 
 sector 256 (128KiB) or 512 (256KiB) which is compatible with GPT 
 standard layout, but SD card firmware images built by debian-installer 
 install U-Boot at the standard 8KiB location. 
 - i.MX boot location starts at sector 2 (1KiB) as far as I know. 
  
 The default partition table type is used by both manual creation of a 
 new partition table in normal install and guided partitioning using an 
 entire disk. Only manual creation of a new partition table in expert 
 install prompts the user to choose the partition table type. Guided 
 partitioning using free space does not create a new partition table. 
  
 Proposed solutions: 
 - Force MSDOS default type on SD/eMMC if the platform boot location 
 overlaps with the GPT area. 
 - Force MSDOS default type on SD/eMMC if the platform boot location 
 overlaps with the GPT area and a boot loader is detected. 
 - Force MSDOS default type on SD/eMMC if the platform boot location 
 overlaps with the GPT area and a boot loader is detected or the platform 
 does not support an alternate boot location. 
  
 Possible mitigations for sunxi platforms: 
 - debian-installer: build SD card firmware images using the alternate 
 boot location for platforms which support it (sunxi H3, A64, H5, H6). 
 - u-boot-sunxi: write the U-Boot image at the alternate boot location 
 for platforms which support it (see #928643 [1]). 
  
 Feedback from ARM platform users and developers welcome. 
  
 [1]  
  
 --- SoupGate-Win32 v1.05 
  * Origin: you cannot sedate... all the things you hate (1:229/2) 

[ list messages | list forums | previous | next | reply ]

search for:

328,104 visits
(c) 1994,  bbs@darkrealms.ca