
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[216.73.216.218] |
![]() |
|
Страницы: (51) « Первая ... 3 4 [5] 6 7 ... 50 51 ( Перейти к последнему сообщению ) |
Сообщ.
#61
,
|
|
|
А нету ли у кого нибудь описание основных SCSI команд в челевеческом виде?
с t10.org невозможно что либо прочитать. |
Сообщ.
#62
,
|
|
|
В каком смысле
Цитата PRT @ ?в челевеческом виде Там pdf'ка нормальная вроди, даже оглавление есть ![]() Или ты скачать не можеш? |
Сообщ.
#63
,
|
|
|
Очень уж через ухо все написанно, но нечего, не стакими сталкивались.
У меня вот такой вопрос: с Флэшкой все нормально, делаю TestUnitReady, даже ReadCapacity работает правильно, а вот с Cardreader-ом проблема. Кроме INQUIRY нечего не хочеть слышать. У меня подозрение, что ещё во время енумерации что-то надо с ним сделать, но пока не поиму что. Мои деиствия: 1)GetDescriptors 2)SetAddress 3)SetConfiguration 4)Reset MassStorage 5)GetLUNs 6)INQUIRY и т.д. Кажется в районе 3-его шага надо ему чтото сказать, а может я ошибаюсь и проблема в чем-то другом. |
Сообщ.
#64
,
|
|
|
Ээ..
Ножет глупый вопрос, но всё же. А карта в кардридер вставлена? Просто если нету накопителя то сам кардридер только на INQUIRY и GET CAPACITY и отвечает. Причём на GET CAPACITY возвращает нулевой размер. А вообще от простых флешек ничем не отличается если не экзотика. Насчёт экзотики - просто встречалась флэшка (обычная такая флэшка) которая совмещала в себе 2 устройства: хаб с одним портом и непосредственно к нему приконекченую флэшку. Нафиг такое сделали не знаю - но факт... А вообще если можеш запости сюда дескрипторы которые устройство возвращает, может чего интересного заметим. И как вариант поставь себе Snoopy Pro - USB монитор, и помониторь обмен под Windows. Хотя очень врядли что там отличия будут от обычного Bulk Only USB Mass Storage. Плюс посмотри эту ветку поглубже если ещё не смотрел - там другие посты были по USB, может что интересное для себя найдёш. ![]() О, вот они: OHCI USB Программирование USB в MS-DOS нумерация устройств на шине USB Блокировка загрузки с USB Добавлено PS: а план действий у тебя правильный вроди... |
Сообщ.
#65
,
|
|
|
Карта в кардридер вставлена. Сам кардридер нормальный среднестатистический кардридер. Вот его дескрипторы:
DEVICE Length-0x18 Type-0x1 BCD-0x110 Class-0 SubClass-0 Protocol-0 MaxPacket-0x40 bcdDevice-0x5 NumConfig-1 CONFIGURATION Length-0x9 Type-0x2 TotalLength-0x20 NumInterfaces-0x1 ConfigVal-0x1 iConfig-0 Attributes-0x80 MaxPower-0xFA INTERFACE Length-0x9 Type-0x4 InterfaceNumber-0 AlternateSetting-0 NumEndpoints-0x2 InterfaceClass-0x8 InterfaceSubClass-0x6 InterfaceProtocol-0x50 iInterface-0x4 ENDPOINT 1 Length-0x7 Type-0x5 Address-0x81 Attributes-0x2 MaxPacket-0x40 Interval-0 ENDPOINT 2 Length-0x7 Type-0x5 Address-0x2 Attributes-0x2 MaxPacket-0x40 Interval-0 Может SCSI команда есть, вроде Enable LUN, или что нибудь похожее. |
Сообщ.
#66
,
|
|
|
Цитата PRT @ Может SCSI команда есть, вроде Enable LUN, или что нибудь похожее. Да нет - нету ничего такого... Просто в командах номер LUN указывается и всё... |
Сообщ.
#67
,
|
|
|
Я сейчас смотрю логи usb snoopy, и вот что удивляет:
Windows при подключении кардридера после считывания дескрипторов делает SELECT_CONFIGURATION а затем SELECT_INTERFACE. Не поиму что это такое, может вместо SELECT надо SET, но тогда зачем делать SET_INTERFACE. Кроме того не делается Reset MassStorage, но зато деваису вместо него посылается странный Setup пакет (RequestType=0, Request=0xFE, Value=0, Index=0, Length=0) |
Сообщ.
#68
,
|
|
|
А почему Windows вызывает команду READ CAPACITY c opcode-0x23, когда в описании эта команда равна - 0x25?
|
Сообщ.
#69
,
|
|
|
Цитата PRT @ А почему Windows вызывает команду READ CAPACITY c opcode-0x23, когда в описании эта команда равна - 0x25? А как ты это определил? Т.е. что 23h - это Get Drive Capacity. В спецификации написано что это Vendor Specific... |
Сообщ.
#70
,
|
|
|
Я это определил косвенным путем:
во первых команда-0х23 вызывается сразу после Inquiry, во вторых, команда-0х23 в некоторых спецификациях (MMC-2) описана как READ FORMAT CAPACITIES, хотя в SubClassCode русским языком записано значение 6. |
Сообщ.
#71
,
|
|
|
Ну я даже не знаю...
Если хочеш - могу выложить драйвера для Mass Storage под UHCI и OHCI под DOS. Если заработают - значит надо у себя ошибку искать... Плюс выложи логи от проги в аттаче. Запускать ohci.com>ohci.txt и ohci.txt потом сюда приаттач. Просто даже интересно... Прикреплённый файл ![]() |
Сообщ.
#72
,
|
|
|
Лог программы:
Detecting OHCI USB Controllers... 1 OHCI USB Controller(s) detected OHCI 0: PCI 00-13-0, VID=0E11h, DID=A0F8, MM_BASE=E0004000h, IRQ=11 Detecting USB Devices... USB Device not detected. Ни один деваис не распознался, ни флэшка, ни кардридер. |
Сообщ.
#73
,
|
|
|
Запускал под DOS? EHCI отключён?
Добавлено Может там ещё UHCI есть - прога только с OHCI работает... |
Сообщ.
#75
,
|
|
|
Цитата PRT @ Может SCSI команда есть, вроде Enable LUN, или что нибудь похожее. Вообще-то есть запрос GetMaxLun (Setup transaction A1 FE 00 00 00 00 01 00), на которую устройство отвечает 1 байтом. И в картридере карточка вовсе не обязана отвечать по LUN 0 - надо выбирать, с каким LUN работать. |