WB Firmware Update Details: различия между версиями

м
м (→‎Схема разделов microSD/eMMC: Поправил текст)
Строка 41: Строка 41:


Реализована с помощью функции u-boot [http://www.denx.de/wiki/view/DULG/UBootBootCountLimit Boot Count Limit]
Реализована с помощью функции u-boot [http://www.denx.de/wiki/view/DULG/UBootBootCountLimit Boot Count Limit]
Используются следующие переменные окружения:
Используются следующие переменные окружения:
* '''bootcount''' - счетчик попыток загрузки, увеличивается на 1 при каждом входе в u-boot
* '''bootcount''' счетчик попыток загрузки, увеличивается на 1 при каждом входе в u-boot.
* '''bootlimit''' - максимальное значение '''bootcount''' при превышении которого происходит переключение активной rootfs
* '''bootlimit''' максимальное значение '''bootcount''' при превышении которого происходит переключение активной rootfs.
* '''mmcpart''' - хранит номер раздела текущей активной rootfs (2 или 3)
* '''mmcpart''' хранит номер раздела текущей активной rootfs (2 или 3).
* '''altbootcmd''' - команда, выполняющяяся при превышении '''bootlimit''': изменяет '''mmcpart''' и обнуляет '''bootcount''' для того, чтоб попытки загрузки с альтернативной rootfs считались заново
* '''altbootcmd''' команда, выполняющяяся при превышении '''bootlimit''': изменяет '''mmcpart''' и обнуляет '''bootcount''' для того, чтоб попытки загрузки с альтернативной rootfs считались заново.
* '''upgrade_available''' - должна быть равна 1 чтобы весь этот механизм работал
* '''upgrade_available''' должна быть равна 1 чтобы весь этот механизм работал.


При удачной загрузке переменная bootcount устанавливается в 0 из скрипта /etc/init.d/wb-init, выполняющимся предпоследним перед rc.
При удачной загрузке переменная bootcount устанавливается в «0» из скрипта <code>/etc/init.d/wb-init</code>, выполняющимся предпоследним перед rc.


=== Сборка FIT-образа обновления ===
=== Сборка FIT-образа обновления ===