4.5.3 Регистрация mtd_info |
Предыдущая Содержание Следующая |
Следующие шаги носят общий характер и применимы к обоим типам флеш-памяти, NAND и NOR. Основой регистрации является функция add_mtd_device(), которая добавляет устройство в массив mtd_table[]. Однако в большинстве случаев вам не потребуется использовать эту функцию напрямую, потому что вы захотите создать на микросхеме разделы.
Разбиение
Разбиение позволяет создать на флеш-памяти несколько разделов и добавить их в разные слоты массива mtd_table[]. Таким образом, разделы будут экспортироваться в приложение как несколько устройств. Разные разделы для доступа к массиву используют одни и те же функции. Например, вы, вероятно, хотели бы разделить 4-х Мб флеш-память на разделы по 1 Мб и 3 Мб, как показано на Рисунке 4.3.
Рисунок 4.3 Флеш-память, разделённая на две части.
Ключом к разбиению является структура данных mtd_partition. Вероятно, для экспорта раздела вы бы определили массив из этой структуры данных.
struct mtd_partition partition_info[] = { { .name=”part1”, .offset=0, .size= 1*1024*1024}, { .name=”part2”, .offset=1*1024*1024, .size= 3*1024*1024} }
Разделы добавляются с помощью функции add_mtd_partition(). Более подробную информацию об этом можно найти в примере драйвера связи в Разделе 4.5.4.
Объединение
Это мощная техника, которая позволяет объединить несколько отдельных устройств в одно устройство. Предположим, что у вас в системе есть два устройства флеш-памяти. На Рисунке 4.4 показана одна флеш-память, имеющая три раздела, и вторая флеш-память, имеющая один раздел.
Рисунок 4.4 Флеш-память, содержащая несколько разделов.
Так как файловую систему необходимо распределить по двум микросхемам флеш-памяти, как правило, вам пришлось бы создавать две файловые системы на каждой из микросхем. Это громоздкая техника, потому что придётся поддерживать две файловые системы. Этого можно избежать объединением микросхем флеш-памяти в одно виртуальное устройство, как показано на Рисунке 4.5. Тогда в системе должен быть смонтирован только один экземпляр файловой системы.
Рисунок 4.5 Два устройства флеш-памяти, объединёные в одно виртуальное устройство.
|
Предыдущая Содержание Следующая |