Переменные, передаваемые извне: ^переменная^содержимое^значение для H96 MAX^ |prefix| путь к каталогу /boot| | |devtype|тип загрузочного устройства|mmc| |devnum|номер загрузочного устройства|0| |distro_bootpart|номер загрузочной партиции|1| Переменные, определяемые в скрипте ^переменная^содержимое^комментарий^ |load_addr|"0x9000000"|Адрес для загрузки временных файлов - оверлеев и armbianEnv.txt| |overlay_error|false|Выставляется в true, если произошла ошибка обработки оверлея| Для загрузки файла используется команда load ${devtype} ${devnum}:${distro_bootpart} ADDRESS PATH_TO_FILE. Дальше указываем только адрес и путь к файлу. ^Адрес^Файл^Комментарий^ |load_addr|${prefix}armbianEnv.txt|Грузим список актуальных переменных и импортируем с помощью ''env import -t ${load_addr} ${filesize}''| |ramdisk_addr_r|${prefix}uInitrd|Загрузка uInitrd | |kernel_addr_r|${prefix}Image|Загрузка ядра | |fdt_addr_r|${prefix}dtb/${fdtfile}|Загрузка dtb. Дальнейшая дозагрузка описана ниже | === Загрузка dtb === Загрузка dtb - это длительный процесс, включающий добавление оверлеев и обработку ошибок. - Основной файл загружается по адресу ${fdt_addr_r} из файла ${prefix}dtb/${fdtfile} - Команда ''fdt addr ${fdt_addr_r}'' осуществляет инициализацию dtb - ''fdt resize 65536'' увеличивает место под dtb - Переменная ${overlays} рассматривается как список оверлеев, которые подгружаются по адресу ''${load_addr}'' из ''${prefix}dtb/rockchip/overlay/${overlay_prefix}-${overlay_file}.dtbo'' и вмерживаются по команде ''fdt apply ${load_addr}''. В случае ошибки выставляется переменная overlay_error в true - Аналогично обрабатывается переменная ''${user_overlays}'', только с файлами по пути ''${prefix}overlay-user/${overlay_file}.dtbo'' - Если ${overlay_error}==true, то грузим повторно оригинальный файл dtb - Если оверлееи загрузились, то применяем фиксапы - Грузим ''${prefix}dtb/rockchip/overlay/${overlay_prefix}-fixup.scr'' и исполняем по ''source ${load_addr}'' - Аналогично поступаем с пользовательским ''${prefix}fixup.scr''