Разделы загрузочного носителя
Использование
<command> <interface> [devnum][.hwpartnum][:partnum|#partname]
Описание
Многие команды U-Boot позволяют указывать разделы (или целые устройства), используя общий синтаксис (приведён выше).
interfaceИспользуется для доступа к разделу(ам) устройства вроде
mmcилиscsi. Для получения полного списка поддерживаемых интерфейсов обратитесь к массивуuclass_idname_strв файлеdrivers/block/blk-uclass.c.
devnumНомер устройства (по умолчанию
0).
hwpartnumНомер аппаратного раздела. Все устройства имеют как минимум один аппаратный раздел. На большинстве устройств аппаратный раздел
0определяет всё устройство. На eMMC аппаратный раздел0— это пользовательский раздел, аппаратные разделы1и2— загрузочные, аппаратный раздел3— раздел RPMB, а последующие — аппаратный пользовательские разделы общего назначения.По умолчанию
0.
partnumНомер раздела, начинающийся с единицы. Номер раздела
0означает, что всё устройство будет использоваться как один «раздел».
partnameИмя раздела. Это метка раздела для таблицы GPT. Для MBR разделов используется следующий синтаксис:
<devtype><devletter><partnum>
devtypeПоле
devtypeустанавливается в зависимости от класса устройства:
devtypeКласс hdIDE/SATA sdSCSI usbdUSB mmcsdeMMC/SD xxДругое См. функцию
part_set_generic_name()в файлеdisk/part.cдля получения полного списка.
devletterНомер устройства как смещение от
a. Например, устройство 2 будет иметь букву устройстваc.
partnumНомер раздела. Это то же самое, что и выше.
Если не указаны ни partname, ни partnum и имеется таблица разделов, то используется раздел 1. Если таблицы разделов на устройстве нет, то всё оно используется как один «раздел». Если не указано ни одно из devnum, hwpartnum, partnum или partname, или указано только -, то devnum по умолчанию принимает значение переменной окружения bootdevice.
Примеры
Просмотреть содержимое корневой директории на устройстве MMC 2, аппаратном разделе 1 и разделе №3:
ls mmc 2.1:3 /
Загрузить /kernel.itb в адрес 0x80000000 с устройства SCSI 0, аппаратного раздела 0 и раздела, имеющего название boot:
load scsi #boot 0x80000000 /kernel.itb
Вывести UUID раздела SATA-устройства $bootdevice, аппаратного раздела 0 и номера раздела 0:
part uuid sata -