Ядро НЕ распознает плохие блоки NAND, отмеченные u-boot

В то время как в u-boot моей платы на базе ARM (DM368) я вручную помечаю некоторые блоки разделов ядра как плохие. U-boot говорит, что он был помечен и, например, при записи/чтении образа ядра я вижу, что он пропускает этот бэд-блок.

Но когда я пытаюсь записать тот же раздел из Linux (загруженный через NFS), я вижу, что команда Linux nandwrite ИСПОЛЬЗУЕТ этот плохой блок! Я проверял это несколькими способами - Linux игнорирует метку плохого блока на 100%. Но везде в инете написано, что BBT один и для u-boot и для линукса.

Итак, где подвох?


person leonp    schedule 10.10.2012    source источник
comment
Как вы пишете раздел и какая система файлов поверх него?   -  person marko    schedule 10.10.2012
comment
Хорошо, я хотел быть кратким... :-) Я хочу обновить ядро ​​изнутри ядра. Исходное ядро ​​написано u-boot, который пропускает плохие блоки - проверено путем пометки блоков как плохих и перезаписи образа. Теперь из ядра (загруженного через NFS) я nanddump3 образ ядра с OOB с -bb=skipbad один раз и без -bb - результат точно такой же. Я также сделал nandwrite3 -o и записать его обратно. Когда не было искусственно помеченного бэд-блока, все работало нормально. Но теперь, когда отмечен плохой блок, u-boot не может загрузить ядро ​​- ошибка CRC. Спасибо за ваше время.   -  person leonp    schedule 10.10.2012


Ответы (1)


Хорошо, ответ найден. По какой-то непонятной причине компания Texas Instruments, производитель платы DM365EVM, которую я использую для разработки, предоставляет ядро ​​с другой структурой BBT. Они определили смещение BBT как 2, а весь мир, включая предоставленный u-boot, определяет это смещение как 8. Желаю им здоровья на долгие годы.

person leonp    schedule 11.10.2012
comment
Есть ли шанс, что вы могли бы указать нам файл/строку/определить, где вам нужно внести изменения? Я тоже знаю боль кодовой базы Ti SDK и желаю им много благословений. - person John U; 24.01.2018
comment
Попробуйте заглянуть в файл board-dm365-dvr.c. Есть определения структуры nand_bbt_descr... - person leonp; 24.01.2018