цитата bg:
там код, а не алгоритм,
Ваша правда ... там много лишнего применительно к j-link
например не нужно трогать вообще DСC регистры и "быстрые режимы" соответственно - жилинк директ способом получит скорость обмена
выше чем может делать перемещение данных в буфер сам контроллер.
посмотрите только медленные функции - такие как
nand_read(
nand_blockerase(
nand_write(
этого будет достаточно что бы увидеть последовательность отправки данных
и в какие регистры что конфигурить и в какой последовательности
отмечу еще раз -ввиду того что нет обработки функции завершения перемещения данных из нанд в буфер (не отслеживается регистр статуса) -обязательно нужно использовать задержки гарантированно перекрывающие это время.
так же скажу что если вы планируете свой драйвер то не парьтесь с reg режимом и используйте только raw вариант чтения и записи.. долго объяснять почему это не приводит к успеху для всех разделов -скажу просто что это причуды файловой системы квалкома- там изврат для некоторых разделов
в таблице это отражено атрибутами раздела - просто копирование данных которое позволяет сделать клон памяти нужно делать именно заливая сырые данные (бит управления механизмом коррекции за это отвечает) соответственно количество байт читаемых\записываемых буфер должно быть чуть больше - это видно в коде .