Поддержка USB mmcblk (Realtek или других)

Вопрос или проблема

Может ли USB кардридер когда-либо появиться как /dev/mmcblk0 и поддерживать команды ioctl MMC?

Я вижу, что есть некоторые модули драйверов ядра, такие как:

rtsx_usb_sdmmc.ko  (rtsx-usb-sdmmc)
rtsx_usb.ko (rtsx-usb)

Могут ли они сделать так, чтобы кардридер Realtek, подключенный к USB-шине, отображался как настоящее устройство MMC? Я замечаю, что все USB-кардридеры, к которым у меня есть доступ, появляются как /dev/sdX, что, похоже, является эмулированным устройством SCSI. Эти эмулированные устройства SCSI не поддерживают все операции MMC (ioctl).

Существуют ли определенные подключаемые по USB кардридеры (чипы), которые отображаются как /dev/mmcblkX вместо /dev/sdX?

Это позволит карты поддерживать blkdiscard, trim или fstrim.

Да, именно так работают устройства на базе RTS5129 или RTS5139. У меня есть RTS5129 в моем ноутбуке Vostro как кардридер, и он предоставляет мне устройство /dev/mmcblkc0.

Обновление:

Пожалуйста, посмотрите обновление к моему ответу
https://stackoverflow.com/a/62625224/1879547, которое также имеет отношение к этому вопросу.

Я могу подтвердить, что кардридер RTS5179 распознает MMC как /dev/mmcblk0. Это была использованная деталь для ноутбука с рынка.

В этом режиме функция TRIM работает для MMC-карт.

Ответ или решение

Вопрос о поддержке USB-картридеров, отображающихся как /dev/mmcblk0, и поддержки команд ioctl с использованием интерфейса MMC, относится к специфике работы с устройствами в операционных системах на базе ядра Linux. Давайте подробнее разберем эту тему.

Поддержка MMC через USB-картридеры

USB-картридеры могут иметь разные архитектуры и схемы подключения, в зависимости от производителя и модели. Основные моменты, которые следует учитывать:

  1. Тип устройства: В большинстве случаев USB-картридеры ориентированы на эмуляцию SCSI-устройств, из-за чего задерживается доступ к некоторым функциям, предлагаемым MMC. Это видно по тому, что большинство ваших USB-картридеров отображаются как /dev/sdX.

  2. Управляющие модули ядра: Некоторые модули, такие как rtsx_usb_sdmmc.ko и rtsx_usb.ko, предлагают поддержку специфических USB-картридеров, основывающихся на контроллерах из семейства Realtek, таких как RTS5129 и RTS5139. Эти устройства могут эффективно взаимодействовать с картами памяти через протокол MMC и предоставлять доступ к /dev/mmcblkX.

  3. Поддержка ioctl: Устройства, которые отображаются как /dev/mmcblkX, могут поддерживать более широкий спектр операций, включая blkdiscard, trim и fstrim, что позволяет более эффективно управлять пространством на картах памяти.

Примеры из практики

Согласно информации, пользователь может подтвердить, что картридеры на базе RTS5129 и RTS5179 способны выявлять MMC-карты как /dev/mmcblk0. Данные устройства действуют как полнофункциональные MMC-устройства, что позволяет им использовать команды управления памятью, такие как TRIM.

Выводы и рекомендации

Если вы ищете USB-картридер, который предоставит функциональность MMC и будет отображаться как /dev/mmcblkX, рекомендуется обратить внимание на следующие моменты:

  • Модель контроллера: Проверьте использование контроллеров RTS5129, RTS5139 или RTS5179, которые были подтверждены как поддерживающие MMC.
  • Документация и спецификации: Изучите технические спецификации устройства, чтобы убедиться в его совместимости с требуемыми функциями и командами.
  • Пользовательские отзывы: Просмотрите опыт пользователей по конкретной модели, чтобы получить представление об ее производительности и характеристиках работы с картами памяти.

Таким образом, выбор правильного USB-картридера может значительно улучшить работу с картами памяти, позволяя вам использовать преимущества, предлагаемые технологиями MMC. Если у вас возникли дополнительные вопросы, не стесняйтесь обращаться за помощью к экспертам в области IT.

Оцените материал
Добавить комментарий

Капча загружается...