Операционная система ЗОСРВ «Нейтрино» > Описание базовых компонентов целевой системы > Драйверы > Дисковая подсистема > Блочные устройства > devb-sdmmc



devb-sdmmc

Драйвер для SD/eMMC контроллеров

Синтаксис:

devb-sdmmc [cam опция[,опция]...] [disk опция[,опция]...] [sdio опция[,опция]...] [sdmmc опция[,опция]...] [blk опция[,опция]...] &

Опции:

...
Все опции драйвера сгруппированы по принадлежности к отдельным модулям. Для разделения опций используется запятая (,). Опции модулей cam, disk, sdio, sdmmc и blk могут располагаться в любом порядке.

Опции модуля blk:

Поддерживаемые опции можно найти в описании модуля io-blk.so. Указываемые опции должны следовать за ключевым словом blk.

Опции модуля cam:

quiet
Вывести краткую информацию; не отображать информацию при запуске.
verbose=[уровень]
Вывести расширенную информацию: отображать всю информацию о SCSI-модулях (устройствах) при запуске.
pio
Использовать PIO режим для чтения/записи.

Опции модуля disk:

Опции модуля disk обеспечивают управление интерфейсом драйвера к cam-disk.so. Указываемые опции должны следовать за ключевым словом disk.

Опции модуля sdmmc:

Опции модуля sdmmc обеспечивают управление интерфейсом драйвера к SD/eMMC устройству. При установке нескольких устройств эти опции можно повторить для каждого из них. Перед набором опций для каждого устройства обязательно указывается ключевое слово sdmmc.

bkops=on|auto
Данный параметр относится к микропрограмме, которая работает на устройстве eMMC. С помощью этого параметра можно включить фоновые операции, используя одно из следующих значений:
on
указывает микропрограмме, что требуются фоновые операции и что драйвер выдает команды, позволяющие устройству eMMC выполнять фоновые операции.
auto
указывает микропрограмме выполнять все операции автономно (соответствует спецификации eMMC 5.1).
Опция bkops поддерживается, начиная с ЗОСРВ «Нейтрино» редакции 2024
bs=опция
Девайс-специфичные опции.
busno=номер_шины
Задать номер_шины контроллера SDIO.
cache=on
Включить кеш eMMC. По умолчанию отключено.
Опция cache поддерживается, начиная с ЗОСРВ «Нейтрино» редакции 2024
partitions=on
Включить разделы eMMC. По умолчанию отключено.
verbose=[уровень]
Установить уровень вывода отладочной информации SDMMC.

Опции модуля sdio:

Опции модуля sdio обеспечивают управление интерфейсом драйвера к SD/MMC хост-контроллеру. При установке нескольких хост-контроллеров эти опции можно повторить для каждого из них. Перед набором опций для каждого контроллера обязательно указывается ключевое слово sdio.

~ac12
Отключение автоматического выполнения аппаратной команды 12.
~ac23
Отключение автоматического выполнения аппаратной команды 23.
addr=адрес
Адрес интерфейса.
~bmstr
Отключить DMA.
bs=опции
Девайс-специфичные опции. Для разделения опций используется двоеточие (:).

Опции для контроллеров модулей на базе процессора NXP iMX* (соответствует hc=imx6):
nocd
Режим циклического обнаружения карты не активирован.
cd_base=базовый_адрес
Базовый адрес ввода-вывода для обнаружения карты.
cd_pin=номер_бита
Номер бита ввода-вывода при обнаружении карты.
cd_irq=номер_прерывания
IRQ GPIO обнаружения карты, полученный из карты прерываний. Если параметр не был установлен, драйвер работает в режиме без прерываний.
cd=схема
Обобщающая опция для указания доступных параметров обнаружения карт (замена комбинации опций cd_base, cd_pin и cd_irq); Для разделения опций используется карет (^). Следует использовать следующий формат:
cd=cd_base^cd_pin^cd_irq
wp_base=базовый_адрес
Установить базовый адрес ввода-вывода с защитой от записи.
wp_pin=номер_бита
Установить номер бита ввода-вывода защиты от записи.
wp=схема
Обобщающая опция для указания доступных параметров защиты от записи (замена комбинации опций wp_base и wp_pin). Для разделения опций используется карет (^). Следует использовать следующий формат:
wp=wp_base^wp_pin
bw=ширина_шины
Установить режим функционирования шины (bus width) в битах.
vdd1_8
Установить режим напряжения питания 1,8 Вольт.
bw=[~]режим
Установить/Очистить режим функционирования шины (bus width).
clk=частота
Задать тактовую частоту операций.
did=идентификатор_устройства
Задать идентификатор устройства контроллера.
DMA=канал
Задать используемый канал DMA.
emmc
Устройство eMMC подключено к интерфейсу.
idx=идентификатор
Индекс контроллера в машине, где idx — значение от 0 до количества адаптеров.
irq=прерывание
Прерывание, используемое контроллером.
hc=хост_контроллер
Задать имя хост-контроллера SD/MMC. Позволяет использовать специфичную для устройства инициализацию и опции. Параметр может принимать одно из следующих значений:
dw
Хост-контроллер интерфейса DesignWare. Применяется, например, в устройствах на базе Rockchip RK3568.
imx6
Хост-контроллер модулей на базе процессора NXP iMX6.
mcom
Xост-контроллер модулей на базе процессора 1892ВМ14Я.
omap
Хост-контроллер модулей на базе процессора Sitara серии AM335x.
sdhci
Базовый хост-контроллер.
zynqmp
Хост-контроллер модулей на базе процессорa Zynq UltraScale+ MPSoC.
sunxi
Хост-контроллер модулей на базе процессорa Allwinner SUNxI.
Опция hc поддерживается, начиная с ЗОСРВ «Нейтрино» редакции 2024
pm=ожидание:сон
Установить время ожидания/сна (idle/sleep) управления питанием в миллисекундах (мс). По умолчанию 100:10000 мс.
timing=[~]тайминг
Установить/очистить режим скорости шины. Допустимые значения:
hs
Режим High Speed. Максимальная скорость шины для SD карты - 25 МБ/с, для eMMС - 26 МБ/с. Максимальная тактовая частота для SD карты - 50 МГц, для eMMC - 52 МГц.
ddr
Режим DD50. Максимальная скорость шины 50 МБ/с. Максимальная тактовая частота 50 МГц.
sdr
Автоматическое определенние поддерживаемого режима SDR для SD карты.
sdr12
Режим SDR12 для SD карты. Максимальная скорость шины 12,5 МБ/с. Максимальная тактовая частота - 25 МГц.
sdr25
Режим SDR25 для SD карты. Максимальная скорость шины 25 МБ/с. Максимальная тактовая частота - 50 МГц.
sdr50
Режим SDR50 для SD карты. Максимальная скорость шины 50 МБ/с. Максимальная тактовая частота - 100 МГц.
sdr104
Режим SDR104 для SD карты. Максимальная скорость шины 104 MБ/с. Максимальная тактовая частота - 208 МГц.
hs200
Режим HS200 для eMMС. Максимальная скорость шины 200 МБ/с. Максимальная тактовая частота - 200 МГц.
hs400
Режим HS400 для eMMC. Максимальная скорость шины 400 МБ/с. Максимальная тактовая частота - 200 МГц.
Аргумент hs400 поддерживается, начиная с ЗОСРВ «Нейтрино» редакции 2024
hs400es
режим HS400es (Enhanced Strobe) для eMMC. Максимальная скорость шины 400 МБ/с. Максимальная тактовая частота, 200 МГц.
Аргумент hs400es поддерживается, начиная с ЗОСРВ «Нейтрино» редакции 2024

Note: Установка скорости шины в большинстве случаев не требуется. Выставляется автоматически на максимально возможный поддерживаемый режим. При проверке поддерживаемого хост-контроллера на шине pci значение опции будет проигнорировано.

vid=вендор_устройства
Задать вендор устройства контроллера.
verbose=[уровень]
Установить уровень вывода отладочной информации SDIO.
~wrdy
Продолжить инициализацию, не дожидаясь готовности CMD6 для eMMC. Позволет проинициализировать хост-котроллер в стрессовых условиях.
Опция ~wrdy поддерживается, начиная с ЗОСРВ «Нейтрино» редакции 2024
priority
Приоритет внутренний событий.

Платформы:

ЗОСРВ «Нейтрино»

Целевые архитектуры:

aarch64, arm, armv7, e2k, mips, ppc, x86

Описание:


Caution: Для запуска этого драйвера необходимо войти в систему с учетной записью root.

Драйвер devb-sdmmc предназначен для SD/eMMC контроллеров.

Примеры:

Для карты памяти SD:

devb-sdmmc blk cache=64m sdio idx=0

Для встраиваемой карты eMMC:

devb-sdmmc blk cache=64m mem=/below4G sdio idx=2,emmc disk name=emmc

Для SD/eMMC контроллеров интерфейса DesignWare модулей на базе процессора Rockchip RK3568:

devb-sdmmc mem name=/below4G blk memory=/below4G,cache=8m \ sdio hc=dw,addr=0xFE2B0000,irq=0x82 disk name=sd

Для SD/eMMC контроллеров модулей на базе процессора NXP iMX6 (SabreLite):

devb-sdmmc cam pnp,verbose blk rw,cache=2M \ sdio hc=imx6,addr=0x02198000,irq=56,bs=cd=0x020b4000^0^352:wp=0x020b4000^1 \ disk name=sd3

Для SD/eMMC контроллеров модулей на базе процессора NXP iMX6Q (SabreSmart):

devb-sdmmc cam pnp,verbose blk rw,cache=2M \ sdio hc=imx6,addr=0x02198000,irq=56,bs=cd_base=0x020a0000:cd_pin=0:wp_base=0x020a0000:wp_pin=1:cd_irq=192 \ disk name=sd3

Для SD контроллеров модулей на базе процессорa Zynq UltraScale+ MPSoC:

devb-sdmmc mem name=/below4G \ blk memory=/below4G,cache=64m \ sdio hc=zynqmp,addr=0xFF170000,irq=81 \ disk name=sd cam quiet

Для eMMC контроллеров модулей на базе процессорa Zynq UltraScale+ MPSoC:

devb-sdmmc mem name=/below4G \ blk memory=/below4G,cache=16m \ sdio hc=zynqmp,addr=0xFF160000,irq=80,emmc,timing=hs200,bw=8 \ disk name=emmc

Для SD контроллеров модулей на базе процессорa Allwinner H3 (SUN8I):

devb-sdmmc mem name=/below4G \ blk memory=/below4G,cache=8m \ sdio hc=sunxi,addr=0x01C0F000,irq=92 \ disk name=sd cam pnp,quiet

Для eMMC контроллеров модулей на базе процессорa Allwinner H3 (SUN8I):

devb-sdmmc mem name=/below4G \ blk memory=/below4G,cache=8m \ sdio hc=sunxi,addr=0x01C11000,irq=94,emmc \ disk name=emmc cam pnp,quiet

Для SD контроллеров модулей на базе процессора Sitara серии AM335x.

devb-sdmmc sdio hc=omap,addr=0x48060000,irq=64,dma=25,dma=24,dma=128,dma=32,bs=nocd:nowp \ cam cache,pnp,async \ blk cache=8M disk \ name=sd

Для eMMC контроллеров модулей на базе процессора Sitara серии AM335x.

devb-sdmmc sdio hc=omap,addr=0x481D8000,irq=28,dma=3,dma=2,dma=160,dma=32,bs=emmc,bw=4 \ cam quiet,cache \ blk rw,cache=2M \ disk name=emmc

Возвращаемое значение:

0
Драйвер devb-sdmmc не был запущен в фоновом режиме, поэтому была запущена копия его процесса. Исходный процесс завершился с нулевым статусом, выполняется копия процесса.
>0
При начальном запуске возникла ошибка.

Драйвер devb-sdmmc завершает работу лишь при возникновении ошибки во время начального запуска или в случае, если во время начального запуска драйвер не был запущен в фоновом режиме и, следовательно, была успешно запущена копия процесса.

Классификация:

Базовые подсистемы ЗОСРВ «Нейтрино», Драйверы

Тематические ссылки:

cam-*, devb-*, fs-*, io-blk.so, devb-mmcsd




Предыдущий раздел: Драйверы