Задать вопрос

Как добиться нормальной скорости чтения microSD через встроенный картридер на Debian?

ОС Debian Bookworm, встроенный картридер в ноутбуке на шине USB. Проблема возникает на одной из двух microSD при считывании данных. Обе карты 32GB, у проблемной карты класс - 10, у исправной - 4. На запись примерно соответствуют характеристикам: 4 класс - ~1,7МБ/с, 10 класс - ~5МБ/с. Далее информация с консоли:
lsusb -tv
    |__ Port 6: Dev 2, If 0, Class=Vendor Specific Class, Driver=rtsx_usb, 480M
        ID 0bda:0129 Realtek Semiconductor Corp. RTS5129 Card Reader Controller

Проблемная microSD:
sudo dmesg -W        
    mmc3: new ultra high speed SDR50 SDHC card at address 0007
    mmcblk3: mmc3:0007 SD32G 29.3 GiB 
    mmcblk3: p1

sudo hdparm -t /dev/mmcblk3
    /dev/mmcblk3:
     Timing buffered disk reads:   6 MB in  3.77 seconds =   1.59 MB/sec

sudo cat /sys/kernel/debug/mmc3/ios
    clock:          100000000 Hz
    vdd:            21 (3.3 ~ 3.4 V)
    bus mode:       2 (push-pull)
    chip select:    0 (don't care)
    power mode:     2 (on)
    bus width:      2 (4 bits)
    timing spec:    5 (sd uhs SDR50)
    signal voltage: 1 (1.80 V)
    driver type:    0 (driver type B)

Исправная microSD:
sudo dmesg -W
    mmc3: new high speed SDHC card at address e624
    mmcblk3: mmc3:e624 SU32G 29.7 GiB 
    mmcblk3: p1

sudo hdparm -t /dev/mmcblk3
    /dev/mmcblk3:
     Timing buffered disk reads:  60 MB in  3.04 seconds =  19.71 MB/sec

sudo cat /sys/kernel/debug/mmc3/ios
    clock:          50000000 Hz
    vdd:            21 (3.3 ~ 3.4 V)
    bus mode:       2 (push-pull)
    chip select:    0 (don't care)
    power mode:     2 (on)
    bus width:      2 (4 bits)
    timing spec:    2 (sd high-speed)
    signal voltage: 0 (3.30 V)
    driver type:    0 (driver type B)

Видно что проблемная карта работает на скорости uhs SDR50 (предполагается что она быстрее high-speed), а исправная high-speed.
Далее использовал usb-3g модем в качестве внешнего картридера, для проверки скорости чтения - там скорость 10МБ/с. Однако драйвер используется usb-storage и устройство sda1:
lsusb -tv
        ID 12d1:1506 Huawei Technologies Co., Ltd. Modem/Networkcard
    |__ Port 4: Dev 5, If 6, Class=Mass Storage, Driver=usb-storage, 480M
    
sudo hdparm -t /dev/sda1
/dev/sda1:
 Timing buffered disk reads:  32 MB in  3.02 seconds =  10.61 MB/sec

В логах по этому поводу никаких ошибок нет. Куда копать дальше?
  • Вопрос задан
  • 489 просмотров
Подписаться 3 Средний 8 комментариев
Решения вопроса 1
Noizefan
@Noizefan
https://www.ylsoftware.com/news/694
https://github.com/asymingt/rts5139
склонюсь к тому что ридер нестабильный

signal voltage: 1 (1.80 V)

signal voltage: 0 (3.30 V)

почему вольтаж разный?

https://community.st.com/t5/stm32-mpus-products/ho... нечто подобное
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@rPman
Очевидно что картридер в usb-модеме не работает на ожидаемых скоростях, сделан 'для галочки' и работает медленно.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы