LH
Ветеран
Сообщений: 345
|
 |
« : 13 Октябрь, 2011, 19:53:06 » |
|
Пожалуйста посоветуйте доступный PCI SATA контроллер для подключения Жесткого Диска по SATA, который поддержит драйвер Fsys.atapi.
Какой максимальный размер жесткого диска поддержит QNX4?
Спасибо.
|
|
« Последнее редактирование: 13 Октябрь, 2011, 19:56:55 от LH »
|
Записан
|
|
|
|
Олег Большаков
|
 |
« Ответ #1 : 13 Октябрь, 2011, 20:38:05 » |
|
Если именно PCI, то поищите на чипе от VIA 6421, например, Espada VT6421. Или Sil 3114 тоже под брендом Espada. На PCI-E стоит посискать на чипе JMicron JMB363 производства Espada, ORIENT и другие. Можно попробовать и другие контроллеры, велика вероятность, что они будут работать. Но рекомендуется проверить работоспособность перед покупкой. Мы обычно рекомендуем ориентироваться на интегрированные контроллеры Intel ICHx. С их поддержкой обычно не бывает проблем. Кстати, совсем скоро должен выйти драйвер Fsys.ahci. Правда пока только бета-версия. Но мы его уже отлаживаем и тестируем вовсю.  Насколько я помню, драйвер Fsys.atapi поддерживает режим lba48, так что теоретически размер дисков может быть очень большим.
|
|
« Последнее редактирование: 13 Октябрь, 2011, 20:41:41 от Олег Большаков »
|
Записан
|
|
|
|
LH
Ветеран
Сообщений: 345
|
 |
« Ответ #2 : 20 Октябрь, 2011, 11:56:57 » |
|
Приобрели контроллер SATA/PCI/ST-Lab A-214 2 ext (SATA150) + 4 int (SATA150) на микросхеме Silicon Image SIL3114 Источник покупки http://fvd.ru/AdvPrice/MyAdvPrContent.aspx?typeid=2851Драйвер Fsys.atapi от 16 мая 2011 у меня не увидел данный контроллер. Запускал просто Fsys.atapi & и Fsys.atapi atapi did=0x3114,vid=0x1095 Пож. посоветуйте правильное действие. вывод от show_pci: PCI version = 2.10 ... Vendor ID = 1095h, CMD Device ID = 3114h, PCI index = 0h Class Code = 018000h Mass Storage (Other 128) ProgIF=0 Revision ID = 2h Bus number = 1 Device number = 12 Function num = 0 Status Reg = 2b0h Command Reg = 7h Header type = 0h Single-function BIST = 0h Build-in-self-test not supported Latency Timer = 20h Cache Line Size= 8h un-cacheable Base Address = IO@d100h length 8 bytes IO@d200h length 4 bytes IO@d300h length 8 bytes IO@d400h length 4 bytes IO@d500h length 16 bytes MEM@f8480000h,32bit length 1024 Subsystem Vendor ID = 1095h Subsystem ID = 3114h Max Lat = 0ns Min Gnt = 0ns PCI Int Pin = 1, INT A Interrupt line = 5 Capabilities Pointer = 60h Capability ID = 1h Capabilities = 622h - 64004000h
|
|
|
Записан
|
|
|
|
Олег Большаков
|
 |
« Ответ #3 : 20 Октябрь, 2011, 15:58:16 » |
|
Рассмотрели Вашу ситуацию. По всей видимости проблема в контроллере. Драйвер проверяет Class Code устройства, который должен быть 010100. А в Вашем случае там 018000. К сожалению, без устройства разрешить эту ситуацию мы не можем. Неизвестно, какие ещё особенности есть у устройства. Рекомендуем Вам, если есть такая возможность, обменять SATA-контроллер на контроллер другого производителя.
|
|
|
Записан
|
|
|
|
LH
Ветеран
Сообщений: 345
|
 |
« Ответ #4 : 20 Октябрь, 2011, 17:07:56 » |
|
Спасибо за оперативный ответ.
Есть ли для Вас смысл, чтобы мы выслали Вам почтой указанный выше контроллер ( без поддержки в QNX4 он нам не нужен ) для отладки Вашего экспериментального драйвера Fsys.ahci?
|
|
|
Записан
|
|
|
|
LH
Ветеран
Сообщений: 345
|
 |
« Ответ #5 : 21 Октябрь, 2011, 06:41:21 » |
|
Нам нужен именно PCI-SATA контроллер для встраивания Ж/Диска в уже имеющуюся систему. Будем приобретать Контроллер PCI,SATA+ATA133 VT6421, RAID combo, ESPADA. Скажите пожалуйста: у Вас есть реальный опыт работы Fsys.atapi с данным контроллером? Каким образом до покупки можно узнать Сlass Code контроллера, а так же его VID и DID, чтобы сверить с таблицей поддерживаемых контроллеров для Fsys.atapi? Если посмотреть в эту таблицу http://www.pcidatabase.com/vendor_details.php?id=648то для микросхемы VT6421 Device ID будет скорее всего Did=0x3249, Vid=0x1106. Заработает ли Fsys.atapi для такого случая? Спасибо.
|
|
« Последнее редактирование: 21 Октябрь, 2011, 07:26:08 от LH »
|
Записан
|
|
|
|
Олег Большаков
|
 |
« Ответ #6 : 21 Октябрь, 2011, 10:15:53 » |
|
Высылайте неработающий контроллер, мы посмотрим. Устройство с идентификаторами 0x1106:0x3249 должно работать с Fsys.atapi, class code должен быть 0x018000. К сожалению, у нас таких контроллеров в наличии нет, так что реального опыта работы с ними нет.
Лучше всего подготовить LiveCD или LiveUSB с QNX4, с помощью которого, проводить тестирование оборудования на совместимость с QNX перед покупкой. Можно для этих целей использовать установочный диск QNX4 2011 года. Зачастую магазины идут навстречу. Значение class code можно посмотреть при помощи утилиты show_pci.
|
|
|
Записан
|
|
|
|
LH
Ветеран
Сообщений: 345
|
 |
« Ответ #7 : 02 Ноябрь, 2011, 06:34:36 » |
|
Приобрели еще один "нонаме" PCI-SATA контроллер.
show_pci показала:
Vendor ID = 1106h Device ID = 3249h ... Class Code = 010400h Mass Storage (RAID) Prog_IF=0 ...
Fsys.atapi и Fsys.ahci не увидели устройство. Нам опять "не повезло" c Class Code?
М.б. дать возможность драйверу среди atapi (ahci) параметров наряду с VID и DID задавать ClassCode?
Надеюсь что посылка с контроллером до Вас уже дошла.
Спасибо.
|
|
|
Записан
|
|
|
|
kukabu
Пользователь
Сообщений: 44
|
 |
« Ответ #8 : 02 Ноябрь, 2011, 13:50:11 » |
|
Драйвер проверяет Class Code устройства, который должен быть 010100. это ж сата, какой 0x01, 0x06 должно быть Class Code = 010400h Mass Storage (RAID) Prog_IF=0 а это типа RAID контроллер и что? зачем такая проверка? class code проверять надо, а вот subclass code то зачем?
|
|
|
Записан
|
|
|
|
Павел Козлов
Пользователь
Сообщений: 96
|
 |
« Ответ #9 : 07 Ноябрь, 2011, 15:01:01 » |
|
То что Олег писал про проверку ClassCode относилось к драйверу Fsys.atapi. В данном драйвере именно для контроллеров SiliconImage есть проверка на ClassCode 0x010100, почему это было сделано в общем-то можно понять. Драйвер Fsys.atapi работает с EIDE/ATA, мне давно не попадались IDE RAID контроллеры, возможно у SiliconImage был как раз такой, но теперь они почти все SATA. Другое дело Fsys.ahci. Действительно, многие контроллеры аппаратно реализующие RAID, взаимодействуют с системой через интерфейс AHCI. Нужно признать, что в драйвере Fsys.ahci имеет место проверка по Subclass 0x06 (Serial ATA), что ограничивает список оборудования с которым мог бы работать драйвер. Эта проверка введена поскольку Fsys.ahci не будет работать с ATA (0x01) и некоторыми RAID (0x04) контроллерами. Я подготовил версию драйвера Fsys.ahci, которая при явном указании параметров vid и did не осуществляет проверку по Subclass. Думаю это будет вполне допустимый компромисс. LH, попробуйте данный драйвер с вашим оборудованием. Еще одно замечание, при работе с RAID, драйвер может не корректно определить базовый адрес, потребуется явно его указать через параметр iobase. Для примера, для Вашей первой платы SATA/PCI/ST-Lab A-214 2 ext (SATA150) я бы попробовал следующую строку запуска: Fsys.ahci ahci vid=0x1095,did=0x3114,ioport=0xf8480000,irq=5 Думаю после тестирования данную версию можно будет выложить как официальный релиз. Архив с драйвером:Fsys.ahci.20111107.tar.gz - сборка от 2011-11-07 $ cksum Fsys.ahci.20111107.tar.gz 2019495299 48456 Fsys.ahci.20111107.tar.gz
|
|
|
Записан
|
|
|
|
LH
Ветеран
Сообщений: 345
|
 |
« Ответ #10 : 07 Ноябрь, 2011, 17:38:31 » |
|
Завтра буду пробовать эту версию со вторым контроллером, опишу результат.
Насколько я понял, первая плата уже в Вашем почтовом отделении и скоро ее передадут Вам для опробования.
Спасибо.
|
|
|
Записан
|
|
|
|
LH
Ветеран
Сообщений: 345
|
 |
« Ответ #11 : 08 Ноябрь, 2011, 09:04:29 » |
|
К сожалению драйвер Fsys.ahci от 07.11.11 вновь контроллер не увидел.
Привожу полный вывод show_pci для контроллера:
Vendor ID = 1106h, VIA Technologies Device ID = 3249h, PCI index = 0h Class Code = 010400h Mass Storage (RAID) ProgIF=0 Revision ID = 50h Bus number = 0 Device number = 18 Function num = 0 Status Reg = 290h Command Reg = 7h Header type = 0h Single-function BIST = 0h Build-in-self-test not supported Latency Timer = 20h Cache Line Size= 0h Base Address = IO@ac00h length 16 bytes IO@b000h length 16 bytes IO@b400h length 16 bytes IO@b800h length 16 bytes IO@bc00h length 32 bytes IO@c000h length 256 bytes Subsystem Vendor ID = 1106h Subsystem ID = 3249h Max Lat = 0ns Min Gnt = 0ns PCI Int Pin = 1, INT A Interrupt line = 5 Capabilities Pointer = e0h Capability ID = 1h Capabilities = 2h - 0h
Device Dependent Registers: 0x40: 33 03 f1 44 0e af 00 00 00 00 00 03 00 00 00 00 0x50: 00 00 00 00 00 00 00 00 00 10 10 00 05 00 10 00 0x60: 00 00 ff ff 00 00 00 00 00 00 00 00 00 00 ff ff 0x70: 00 00 00 00 01 f0 00 00 01 00 01 00 01 00 00 00 0x80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0x90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 0xA0: 0b f2 c9 35 10 ac c0 00 a8 a8 a8 a8 ff 00 b6 b6 0xB0: 0f 0f 0f 0f 34 00 00 00 00 00 20 00 00 00 00 00 0xC0: 00 02 00 00 00 00 00 00 00 02 00 00 00 00 00 00 0xD0: 02 01 00 00 00 00 00 00 02 01 00 00 00 00 00 00 0xE0: 01 00 02 00 00 00 00 00 50 01 49 32 06 11 49 32 0xF0: 00 00 70 00 00 00 00 00 00 00 00 00 8e 1f 00 00
Значение порта в/в из этого вывода я не увидел.
Пробовал #Fsys.ahci ahci vid=0x1106,did=0x3249,irq=5,ioport=0xac000000 ( 0xb0000000, 0xb4000000... ), но это не помогло:
No Adaptor found! и *** NULL assigment detected.
Жду Ваших советов. Спасибо.
|
|
|
Записан
|
|
|
|
Павел Козлов
Пользователь
Сообщений: 96
|
 |
« Ответ #12 : 08 Ноябрь, 2011, 11:06:01 » |
|
Судя по описанию контроллера и по его ресурсам (BAR'ам), данный контроллер не реализует интерфейс AHCI и с драйвером Fsys.ahci работать не будет. Остается надежда только на Fsys.atapi. В драйвере есть поддержка VIA VT6421. Хотелось бы взглянуть на вывод драйвера, если запустить его следующим образом: #Fsys.atapi atapi verbose=6 Попробуйте запустить драйвер с явным указанием параметров ioport, irq, chnl. Насколько я понял, первая плата уже в Вашем почтовом отделении и скоро ее передадут Вам для опробования. Да, так и есть. Как только мы получим вашу плату, я ее проверю и отпишусь о результатах.
|
|
|
Записан
|
|
|
|
LH
Ветеран
Сообщений: 345
|
 |
« Ответ #13 : 09 Ноябрь, 2011, 09:06:29 » |
|
Попробовал с Fsys.atapi ( от 16.05.2011 длиной 110613 байт)
#Fsys.atapi atapi vid=0x1106,did=0x3249,verbose=6
В ответ только:
No devices found for Fsys.
Похоже что Fsys.atapi не видит контроллер.
Есть желание сдать его в магазин и приобрести какой-нибудь другой доступный PCI-SATA контроллер, чтобы он был не "noname".
|
|
|
Записан
|
|
|
|
Павел Козлов
Пользователь
Сообщений: 96
|
 |
« Ответ #14 : 15 Ноябрь, 2011, 14:03:30 » |
|
LH, мы получили вашу плату. Удалось ее подружить с драйвером Fsys.atapi, правда после небольшого изменения Fsys.atapi. Драйвер мы готовы Вам передать.
|
|
|
Записан
|
|
|
|
|