Уперся ...
Итак, у меня K9K8G08U0A (1Gx8).
Глюки начались на этапе идентификации ее драйвером более высокого уровня, пока не добавил команду сброса устройства.
Сейчас драйвер правильно определяет, и вроде как "лично знает" этот чип, выводя сообщение:
Цитата
NAND device: Manufacturer ID: 0xec, Chip ID: 0xd3 (Samsung NAND 1GiB 3,3V 8-bit)
Размер страницы, размер "запасной" зоны, размер блока и объем всего устройства определяются драйвером правильно. Но, далее на этапе сканирования сбойных блоков, выводится сообщение о найденых ~70 сбойных блоков. Причем их количество первоначально было меньше, пока я не поэкспериментировал с записью нулей во все устройство (dd if=/dev/zero of=/dev/mtd3 bs=2048 count=524288).
Не понятно, сбойный блок маркируется первым не 0хFF байтом в "запасной" области страницы, хотя в то же время она используется ECC ... ???
Далее, я попробовал, перед сканированием сбойных блоков, стереть все блоки устройства, как ни сранно, меньше сбойных блоков не стало.
Еще хуже то что запись в устройство иногда завершается ошибкой, читается то же с глюками.
Например если читать dd if=/dev/ьев3 of=/tmp/data.hex bs=2048 count=30, то имеются области, которые всегда содержат "осмысленный" код, а есть обоасти с "плавающим" мусором.