>При загрузки вылетает:
>
>ad0: READ command timeout
>ata0: resetting devices....
>
>и висит.
>добавил при загрузке
>
>hw.ata.ata_dma=0
>
>загружается, работает, но в режиме PIO4.
>Пробую:
>
>atacontrol mode 0 UDMA6 UDMA6
>
>Все нормально, но после некоторого (короткого) времени (обращению к диску?)
>опять вылетает то же самое и все висит.
>
>Какими способами можно заставить работать в режиме dma?
>PIO4 никуда не годится..
не ВСЕ диски реально работают в том режиме UDMA который указан в спецификации, производители жутко пиз...т.
если не ошибаюсь UDMA с правильным кабелем - это максимум DMA4 (UDMA66)
или PATA стандарт, если не ошибаюсь DMA5 (UDMA100), а далее идет
стандарт SATA UDMA133 и типа будет выше? ;) А с SATA были проблемы в драйвере ata (man 4 ata) и драйвер не со всеми SATA контроллерами работал,
работает - в RELEASE-4.9 был только небольшой экспериментальный кусок
вставлен, или даже в RELENG_4 спустя некоторое время после выхода релиза.
Более полноценный драйвер поддержки SATA появился в 5.2 и то обещали
докрутить в 5.3
Да, SATA - это соответствующий разъем и кабель и просто выполнить команду
- еще не значит перевести диск в соответствующий режим. Типа у меня
UDMA66 контроллер и диски поддерживают необходимые режимы, но часть
дисков со старым кабелем IDE, если я выдам команду перевода их в UDMA66
то толку не будет, надеюсь доступно изложено.
http://www.serialata.org/ ну и какие-то факи по ATA/PATA - все расписано,
плюс `man 4 ata` - там расписаны какие контроллеры на какой максимальной
скорости поддерживаются в драйвере