Разделы загрузочного носителя

Использование

<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 -