15,3. Драйверы SCSI
Подробная информация о драйверах SCSI содержится в SCSI-2.4-HOWTO.
Функция SCSI от Linux реализована в трех слоях, и для всех них есть LKM.
В середине находится драйвер среднего уровня или ядро SCSI. Это состоит из scsi_mod LKM. Он выполняет все те вещи, которые являются общими для устройств SCSI, независимо от того, какой SCSI-адаптер вы используете и какой класс устройства (диск, сканер, привод CD-ROM и т. Д.).
Существует драйвер низкого уровня для каждого типа адаптера SCSI - обычно это другой драйвер для каждой марки. Например, низкоуровневый драйвер для адаптеров Advansys (сделанный компанией, которая сейчас является Connect.com) назван Advansys , (Если вы сравниваете ATA (aka IDE) и дисковые устройства SCSI, это большое различие - ATA прост и достаточно стандартен, что один драйвер работает со всеми адаптерами от всех компаний. SCSI менее стандартен, и в результате вы должны иметь меньше уверенности в том, что какой-либо конкретный адаптер отлично совместим с вашей системой).
Высокоуровневые драйверы предоставляют остальной части ядра интерфейс, соответствующий определенному классу устройств. Драйвер высокого уровня SCSI для ленточных устройств, улица , например, имеет iocts для перемотки назад. Высокоуровневый драйвер SCSI для дисководов CD-ROM, стер , не.
Обратите внимание, что вам редко нужен драйвер высокого уровня, характерный для определенного бренда устройства. На этом уровне мало возможностей для отличия одного бренда от другого.
Один высокоуровневый драйвер SCSI, заслуживающий особого упоминания, SG , Этот драйвер, называемый «универсальным» драйвером SCSI, представляет собой довольно тонкий слой, который представляет собой довольно грубое представление драйвера среднего уровня SCSI для остальной части ядра. Программы пользовательского пространства, которые работают через общий драйвер SCSI (потому что они получают доступ к специальным файлам устройств, чье основное число является тем, которое зарегистрировано SG (напр., 21)) имеют подробное представление о протоколах SCSI, тогда как программы пользовательского пространства, которые работают с другими высокоуровневыми драйверами SCSI, обычно даже не знают, что такое SCSI. SCSI-Programming-HOWTO имеет полную документацию об общем драйвере SCSI.
Порядок расслоения модулей SCSI опровергает то, как LKM зависят друг от друга и порядок, в котором они должны быть загружены. Вы всегда загружаете драйвер среднего уровня и выгружаете его последним. Драйверы низкого уровня и высокого уровня могут быть загружены и выгружены в любом порядке после этого, и они подключаются и устанавливают зависимость от драйвера среднего уровня с обоих концов. Если у вас нет полного набора, при попытке доступа к устройству вы получите сообщение об ошибке «устройство не найдено».
Большинство драйверов SCSI низкого уровня (адаптер) не имеют параметров LKM; они обычно выполняют автозаполнение настроек карты. Если ваша карта отвечает на какой-то нетрадиционный адрес порта, вы должны привязать драйвер в базовое ядро и использовать опции командной строки ядра. См. BootPrompt-HOWTO. Или вы можете обмануть источник и перекомпилировать.
Многие драйверы низкого уровня SCSI имеют документацию в Драйверы / SCSI в дереве исходных текстов Linux, в файлах, называемых ПРОЧТИ МЕНЯ. *.
15.3.1. scsi_mod: драйвер среднего уровня SCSI
Пример:
modprobe scsi_mod
Параметры модуля отсутствуют.
15.3.2. sd_mod: драйвер высокого уровня SCSI для дисковых устройств
Пример:
modprobe sd_mod
Параметры модуля отсутствуют.
15.3.3. st: Высокоуровневый драйвер SCSI для ленточных устройств
Пример:
modprobe st
Для LKM нет параметров модуля, но если вы привяжете этот модуль к базовому ядру, вы можете передать некоторые параметры с помощью параметров загрузки Linux. См. BootPrompt-HOWTO.
15.3.4. sr_mod: драйвер высокого уровня SCSI для дисководов CD-ROM
Пример:
modprobe sr_mod
Параметры модуля отсутствуют.
15.3.5. sg: драйвер SCSI высокого уровня для общих устройств SCSI
См. Объяснение этого специального драйвера высокого уровня выше.
Пример:
modprobe sg
Параметры модуля отсутствуют.
* Лицензия
* Загрузочный код модуля ядра
параметры.
15.3.6. wd7000: низкоуровневый драйвер SCSI для 7000FASST
Пример:
Для LKM нет параметров модуля, но если вы привяжете этот модуль к базовому ядру, вы можете передать некоторые параметры с помощью параметров загрузки Linux. См. BootPrompt-HOWTO. Этот драйвер проверяет карту и требует установки BIOS. Пример: Для LKM нет параметров модуля, но если вы привяжете этот модуль к базовому ядру, вы можете передать некоторые параметры с помощью параметров загрузки Linux. См. BootPrompt-HOWTO. Этот драйвер проверяет карту и требует установки BIOS. Пример: Для LKM нет параметров модуля, но если вы привяжете этот модуль к базовому ядру, вы можете передать некоторые параметры с помощью параметров загрузки Linux. См. BootPrompt-HOWTO. Этот драйвер автоматически проверяет карту только на 0x330 и 0x334. Пример: Параметры модуля отсутствуют. Этот драйвер автоматически распаковывает карту. Пример: Для LKM нет параметров модуля, но если вы привяжете этот модуль к базовому ядру, вы можете передать некоторые параметры с помощью параметров загрузки Linux. См. BootPrompt-HOWTO. Этот драйвер автоматически запускает карту, и BIOS должен быть включен. Пример: Параметры модуля: Если вы привяжете этот драйвер к базовому ядру, вы можете передать ему параметры через параметры загрузки ядра. См. BootPrompt-HOWTO. Пример: Параметры модуля отсутствуют. Этот драйвер автоматически распаковывает карту. Нет необходимости в BIOS. Список карт BusLogic, которые этот драйвер может использовать, длинный. Прочитать файл Драйверы / SCSI / README.BusLogic в исходном дереве Linux, чтобы получить общую картину. Пример: Параметры модуля отсутствуют. Если вы привяжете этот драйвер к базовому ядру, вы можете передать ему параметры через параметры загрузки ядра. См. BootPrompt-HOWTO. Пример: Для LKM нет параметров модуля, но если вы привяжете этот модуль к базовому ядру, вы можете передать некоторые параметры с помощью параметров загрузки Linux. См. BootPrompt-HOWTO. Этот драйвер автоматически распаковывает карту. Этот драйвер обрабатывает DPT PM2011 / 021/012/022/122/322. Пример: Для LKM нет параметров модуля, но если вы привяжете этот модуль к базовому ядру, вы можете передать некоторые параметры с помощью параметров загрузки Linux. См. BootPrompt-HOWTO. Этот драйвер обрабатывает DPT, NEC, AT & T, SNI, AST, Olivetti и Alphatronix. Этот драйвер обрабатывает DPT Smartcache, Smartcache III и SmartRAID. Пример: Параметры модуля отсутствуют. Автозапуск работает во всех конфигурациях. Этот драйвер обрабатывает старый DPT PM2001, PM2012A. Пример: Параметры модуля отсутствуют. Пример: Параметры модуля отсутствуют. Этот драйвер автоматически распаковывает карту и требует установки BIOS. Пример: для платы с карточкой NCR5380: для карты NCR53C400 с отображением памяти с отключенными прерываниями: Параметры: Если вы привяжете этот драйвер к базовому ядру, вы можете передать ему параметры через параметры загрузки ядра. См. BootPrompt-HOWTO. Пример: Для LKM нет параметров модуля, но если вы привяжете этот модуль к базовому ядру, вы можете передать некоторые параметры с помощью параметров загрузки Linux. См. BootPrompt-HOWTO. Пример: Для LKM нет параметров модуля, но если вы привяжете этот модуль к базовому ядру, вы можете передать некоторые параметры с помощью параметров загрузки Linux. См. BootPrompt-HOWTO. Этот драйвер автоматически распаковывает карту и требует установки BIOS. Пример: Параметры модуля отсутствуют. См. Файл Драйверы / SCSI / README.ppa в дереве источников Linux для деталей. Пример: Параметры: Пример: Для LKM нет параметров модуля, но если вы привяжете этот модуль к базовому ядру, вы можете передать некоторые параметры с помощью параметров загрузки Linux. См. BootPrompt-HOWTO. Этот драйвер автоматически распаковывает карту. Нет необходимости в BIOS. Пример: Для LKM нет параметров модуля, но если вы привяжете этот модуль к базовому ядру, вы можете передать некоторые параметры с помощью параметров загрузки Linux. См. BootPrompt-HOWTO. Пример: Для LKM нет параметров модуля, но если вы привяжете этот модуль к базовому ядру, вы можете передать некоторые параметры с помощью параметров загрузки Linux. См. BootPrompt-HOWTO. Требуется прошивка. Этот драйвер предназначен для Seagate ST-02 и Future Domain TMC-8xx. Пример: Для LKM нет параметров модуля, но если вы привяжете этот модуль к базовому ядру, вы можете передать некоторые параметры с помощью параметров загрузки Linux. См. BootPrompt-HOWTO. Этот драйвер автоматически проверяет только адрес. IRQ фиксирован в 5. Драйвер требует установленного BIOS. Пример: Для LKM нет параметров модуля, но если вы привяжете этот модуль к базовому ядру, вы можете передать некоторые параметры с помощью параметров загрузки Linux. См. BootPrompt-HOWTO. Этот драйвер автоматически распаковывает карту. Драйвер требует установленного BIOS. Пример: Для LKM нет параметров модуля, но если вы привяжете этот модуль к базовому ядру, вы можете передать некоторые параметры с помощью параметров загрузки Linux. См. BootPrompt-HOWTO. Этот драйвер автоматически открывает карту, но не порт 0x310. Нет необходимости в BIOS. Пример: Для LKM нет параметров модуля, но если вы привяжете этот модуль к базовому ядру, вы можете передать некоторые параметры с помощью параметров загрузки Linux. См. BootPrompt-HOWTO. modprobe wd7000
15.3.7. aha152x: низкоуровневый драйвер SCSI для Adaptec AHA152X / 2825
modprobe aha152x
15.3.8. aha1542: драйвер низкого уровня SCSI для Adaptec AHA1542
modprobe aha1542
15.3.9. aha1740: низкоуровневый драйвер SCSI для Adaptec AHA1740 EISA
modprobe aha1740
15.3.10. aic7xxx: низкоуровневый драйвер SCSI для Adaptec AHA274X / 284X / 294X
modprobe aic7xxx
15.3.11. advansys: низкоуровневый драйвер SCSI для AdvanSys / Connect.com
modprobe advansys asc_iopflag = 1 asc_ioport = 0x110,0x330 asc_dbglvl = 1
15.3.12. in2000: низкоуровневый драйвер SCSI для Always IN2000
modprobe in2000
15.3.13. BusLogic: низкоуровневый драйвер SCSI для BusLogic
modprobe BusLogic
15.3.14. dtc: низкоуровневый драйвер SCSI для DTC3180 / 3280
modprobe dtc
15.3.15. eata: низкоуровневый драйвер SCSI для EATA ISA / EISA
modprobe eata
15.3.16. eata_dma: низкоуровневый драйвер SCSI для EATA-DMA
modprobe eata_dma
15.3.17. eata_pio: низкоуровневый драйвер SCSI для EATA-PIO
modprobe eata_pio
15.3.18. fdomain: драйвер низкого уровня SCSI для Future Domain 16xx
modprobe fdomain
15.3.19. NCR5380: низкоуровневый драйвер SCSI для NCR5380 / 53c400
modprobe NCR5380 ncr_irq = xx ncr_addr = xx ncr_dma = xx ncr_5380 = 1 ncr_53c400 = 1
modprobe g_NCR5380 ncr_irq = 5 ncr_addr = 0x350 ncr_5380 = 1
modprobe g_NCR5380 ncr_irq = 255 ncr_addr = 0xc8000 ncr_53c400 = 1
15.3.20. NCR53c406a: низкоуровневый драйвер SCSI для NCR53c406a
modprobe NCR53c406a
15.3.21. 53c7,8xx.o: низкоуровневый драйвер SCSI для NCR53c7,8xx
modprobe 53c7,8xx
15.3.22. ncr53c8xx: низкоуровневый драйвер SCSI для семейства PCI-SCS NCR538xx
modprobe ncr53c8xx
15.3.23. ppa: низкоуровневый SCSI-драйвер для ZIP-порта IOMEGA с параллельным портом
modprobe ppa ppa_base = 0x378 ppa_nybble = 1
15.3.24. pas16: драйвер низкого уровня SCSI для PAS16
modprobe pas16
15.3.25. qlogicfas: драйвер низкого уровня SCSI для Qlogic FAS
modprobe qlogicfas
15.3.26. qlogicisp: низкоуровневый драйвер SCSI для QLogic ISP
modprobe qlogicisp
15.3.27. seagate: SCSI низкоуровневый драйвер для Seagate, Future Domain
modprobe seagate
15.3.28. t128: драйвер низкого уровня SCSI для Trantor T128 / T128F / T228
modprobe t128
15.3.29. u14-34f: низкоуровневый драйвер SCSI для UltraStor 14F / 34F
modprobe u14-34f
15.3.30. ultrastor: низкоуровневый драйвер SCSI для UltraStor
modprobe ultrastor




