diff --git a/README.md b/README.md new file mode 100644 index 0000000..f29ee3c --- /dev/null +++ b/README.md @@ -0,0 +1,45 @@ +# FDT Reader + +Утилита для извлечения данных из FIT-образов (Flattened Image Tree), используемых в U-Boot. + +## Сборка + +```bash +make +``` + +Требуется `libfdt` (часть пакета `device-tree-compiler` или `dtc`). + +## Использование + +```bash +./fdt_reader [node2] ... +``` + +### Параметры + +- `fit_file` — путь к FIT-образу (`.itb`) или файлу с legacy U-Boot заголовком +- `attribute_name` — имя свойства для извлечения (например, `data`) +- `node1`, `node2`, ... — имена нод в FIT-дереве + +### Примеры + +Извлечь ядро и DTB из FIT-образа: + +```bash +./fdt_reader firmware.itb data kernel@1 fdt@1 +``` + +Извлечь ramdisk: + +```bash +./fdt_reader image.itb data ramdisk@1 +``` + +Выходные файлы создаются в текущей директории. Символ `@` в именах заменяется на `_`. + +## Особенности + +- Поддержка legacy U-Boot формата (multi-file images) +- Порционное чтение файла (окно 2 КБ) — не требует загрузки всего образа в память +- Автоматическое определение смещения FIT внутри composite-образа