wic: add GPT support
Add GPT partition table support. (From OE-Core rev: a3479ab45d89273b4474ca54517554fc5346da32) Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
fa818fbb7b
commit
8102bd0172
|
@ -29,6 +29,9 @@ from wic.utils.oe.misc import *
|
|||
# Overhead of the MBR partitioning scheme (just one sector)
|
||||
MBR_OVERHEAD = 1
|
||||
|
||||
# Overhead of the GPT partitioning scheme
|
||||
GPT_OVERHEAD = 34
|
||||
|
||||
# Size of a sector in bytes
|
||||
SECTOR_SIZE = 512
|
||||
|
||||
|
@ -122,7 +125,7 @@ class Image:
|
|||
|
||||
msger.debug("Assigning %s partitions to disks" % ptable_format)
|
||||
|
||||
if ptable_format not in ('msdos'):
|
||||
if ptable_format not in ('msdos', 'gpt'):
|
||||
raise ImageError("Unknown partition table format '%s', supported " \
|
||||
"formats are: 'msdos'" % ptable_format)
|
||||
|
||||
|
@ -156,6 +159,8 @@ class Image:
|
|||
if d['numpart'] == 1:
|
||||
if ptable_format == "msdos":
|
||||
overhead = MBR_OVERHEAD
|
||||
elif ptable_format == "gpt":
|
||||
overhead = GPT_OVERHEAD
|
||||
|
||||
# Skip one sector required for the partitioning scheme overhead
|
||||
d['offset'] += overhead
|
||||
|
@ -214,6 +219,8 @@ class Image:
|
|||
# minumim disk sizes.
|
||||
for disk_name, d in self.disks.items():
|
||||
d['min_size'] = d['offset']
|
||||
if d['ptable_format'] == "gpt":
|
||||
d['min_size'] += GPT_OVERHEAD
|
||||
|
||||
d['min_size'] *= self.sector_size
|
||||
|
||||
|
|
Loading…
Reference in New Issue