15.3. Drivers SCSI
Informações detalhadas sobre drivers SCSI estão em HOWTO SCSI-2.4.
A função SCSI do Linux é implementada em três camadas e há LKMs para todos eles.
No meio está o driver de nível médio ou núcleo SCSI. Este consiste no scsi_mod LKM Ele faz todas as coisas que são comuns entre dispositivos SCSI, independentemente de qual adaptador SCSI você usa e qual classe de dispositivo (disco, scanner, unidade de CD-ROM, etc.) é.
Existe um driver de baixo nível para cada tipo de adaptador SCSI - normalmente, um driver diferente para cada marca. Por exemplo, o driver de baixo nível para adaptadores Advansys (fabricado pela empresa que é agora Connect.com) é denominado advansys . (Se você estiver comparando dispositivos de disco ATA (também IDE) e SCSI, essa é uma grande diferença - o ATA é simples e padrão o suficiente para que um driver funcione com todos os adaptadores de todas as empresas. menos confiança em qualquer adaptador em particular, sendo perfeitamente compatível com o seu sistema).
Drivers de alto nível apresentam ao restante do kernel uma interface apropriada para uma determinada classe de dispositivos. O driver de alto nível SCSI para dispositivos de fita, st , por exemplo, tem ioctls para retroceder. O driver SCSI de alto nível para unidades de CD-ROM, sr , não.
Observe que você raramente precisa de um driver de alto nível específico para uma determinada marca de dispositivo. Nesse nível, há pouco espaço para uma marca ser distinguível da outra.
Um driver de alto nível SCSI que merece menção especial é sg . Esse driver, chamado de driver "genérico SCSI", é uma camada bastante fina que apresenta uma representação bastante bruta do driver de nível médio SCSI para o restante do kernel. Programas de espaço do usuário que operam através do driver genérico SCSI (porque eles acessam arquivos especiais do dispositivo cujo número principal é aquele registrado pelo sg (a saber, 21)) têm uma compreensão detalhada dos protocolos SCSI, enquanto que os programas de espaço do usuário que operam através de outros drivers de alto nível SCSI normalmente nem sabem o que é SCSI. O SCSI-Programming-HOWTO possui documentação completa do driver genérico SCSI.
A ordem de camadas dos módulos SCSI desmente a maneira como os LKMs dependem uns dos outros e a ordem na qual eles devem ser carregados. Você sempre carrega o driver de nível médio primeiro e descarrega-o pela última vez. Os drivers de baixo e alto nível podem ser carregados e descarregados em qualquer ordem depois disso, e eles se conectam e estabelecem dependência no driver de nível médio em ambas as extremidades. Se você não tiver um conjunto completo, receberá um erro "dispositivo não encontrado" ao tentar acessar um dispositivo.
A maioria dos drivers SCSI de baixo nível (adaptador) não possui parâmetros LKM; eles geralmente são autoprometidos para configurações de cartão. Se a sua placa responder a algum endereço de porta não convencional, você deverá ligar o driver ao kernel base e usar as opções de "linha de comando" do kernel. Veja BootPrompt-HOWTO. Ou você pode girar a fonte e recompilar.
Muitos drivers de baixo nível SCSI possuem documentação no drivers / scsi diretório na árvore de código-fonte do Linux, em arquivos chamados README. *.
15.3.1. scsi_mod: driver de nível médio SCSI
Exemplo:
modprobe scsi_mod
Não há parâmetros do módulo.
15.3.2. sd_mod: Driver de alto nível SCSI para dispositivos de disco
Exemplo:
modprobe sd_mod
Não há parâmetros do módulo.
15.3.3. st: driver de alto nível SCSI para dispositivos de fita
Exemplo:
modprobe st
Não existem parâmetros de módulo para o LKM, mas se você ligar este módulo ao kernel base, poderá passar alguns parâmetros através dos parâmetros de inicialização do Linux. Veja BootPrompt-HOWTO.
15.3.4. sr_mod: Driver de alto nível SCSI para unidades de CD-ROM
Exemplo:
modprobe sr_mod
Não há parâmetros do módulo.
15.3.5. sg: Driver de alto nível SCSI para dispositivos SCSI genéricos
Veja a explicação deste driver especial de alto nível acima.
Exemplo:
modprobe sg
Não há parâmetros do módulo.
* Licença
* Índice How-To do Módulo Kernel Carregável
parâmetros.
15.3.6. wd7000: Driver de baixo nível SCSI para 7000FASST
Exemplo:
Não existem parâmetros de módulo para o LKM, mas se você ligar este módulo ao kernel base, poderá passar alguns parâmetros através dos parâmetros de inicialização do Linux. Veja BootPrompt-HOWTO. Este driver atoprobes a placa e requer o BIOS instalado. Exemplo: Não existem parâmetros de módulo para o LKM, mas se você ligar este módulo ao kernel base, poderá passar alguns parâmetros através dos parâmetros de inicialização do Linux. Veja BootPrompt-HOWTO. Este driver atoprobes a placa e requer o BIOS instalado. Exemplo: Não existem parâmetros de módulo para o LKM, mas se você ligar este módulo ao kernel base, poderá passar alguns parâmetros através dos parâmetros de inicialização do Linux. Veja BootPrompt-HOWTO. Este driver autoprobes a placa em 0x330 e 0x334 somente. Exemplo: Não há parâmetros do módulo. Esse driver autoprobe o cartão. Exemplo: Não existem parâmetros de módulo para o LKM, mas se você ligar este módulo ao kernel base, poderá passar alguns parâmetros através dos parâmetros de inicialização do Linux. Veja BootPrompt-HOWTO. Este driver detecta automaticamente a placa e o BIOS deve estar ativado. Exemplo: Parâmetros do módulo: Se você ligar este driver ao kernel base, poderá passar parâmetros para ele através dos parâmetros de inicialização do kernel. Veja BootPrompt-HOWTO. Exemplo: Não há parâmetros do módulo. Esse driver autoprobe o cartão. Nenhum BIOS é necessário. A lista de cartões BusLogic que este driver pode dirigir é longa. Ler arquivo drivers / scsi / README.BusLogic na árvore de fontes do Linux para obter a imagem total. Exemplo: Não há parâmetros do módulo. Se você ligar este driver ao kernel base, poderá passar parâmetros para ele através dos parâmetros de inicialização do kernel. Veja BootPrompt-HOWTO. Exemplo: Não existem parâmetros de módulo para o LKM, mas se você ligar este módulo ao kernel base, poderá passar alguns parâmetros através dos parâmetros de inicialização do Linux. Veja BootPrompt-HOWTO. Esse driver autoprobe o cartão. Este driver manipula DPT PM2011 / 021/012/022/122/322. Exemplo: Não existem parâmetros de módulo para o LKM, mas se você ligar este módulo ao kernel base, poderá passar alguns parâmetros através dos parâmetros de inicialização do Linux. Veja BootPrompt-HOWTO. Este driver lida com DPT, NEC, AT & T, SNI, AST, Olivetti e Alphatronix. Este driver lida com DPT Smartcache, Smartcache III e SmartRAID. Exemplo: Não há parâmetros do módulo. Autoprobe funciona em todas as configurações. Este driver lida com o antigo DPT PM2001, PM2012A. Exemplo: Não há parâmetros do módulo. Exemplo: Não há parâmetros do módulo. Este driver detecta automaticamente a placa e requer o BIOS instalado. Exemplo: para uma placa NCR5380 mapeada em porta: para uma placa NCR53C400 mapeada na memória com interrupções desativadas: Parâmetros: Se você ligar este driver ao kernel base, poderá passar parâmetros para ele através dos parâmetros de inicialização do kernel. Veja BootPrompt-HOWTO. Exemplo: Não existem parâmetros de módulo para o LKM, mas se você ligar este módulo ao kernel base, poderá passar alguns parâmetros através dos parâmetros de inicialização do Linux. Veja BootPrompt-HOWTO. Exemplo: Não existem parâmetros de módulo para o LKM, mas se você ligar este módulo ao kernel base, poderá passar alguns parâmetros através dos parâmetros de inicialização do Linux. Veja BootPrompt-HOWTO. Este driver detecta automaticamente a placa e requer o BIOS instalado. Exemplo: Não há parâmetros do módulo. Veja o arquivo drivers / scsi / README.ppa na árvore de fontes do Linux para detalhes. Exemplo: Parâmetros: Exemplo: Não existem parâmetros de módulo para o LKM, mas se você ligar este módulo ao kernel base, poderá passar alguns parâmetros através dos parâmetros de inicialização do Linux. Veja BootPrompt-HOWTO. Esse driver autoprobe o cartão. Nenhum BIOS é necessário. Exemplo: Não existem parâmetros de módulo para o LKM, mas se você ligar este módulo ao kernel base, poderá passar alguns parâmetros através dos parâmetros de inicialização do Linux. Veja BootPrompt-HOWTO. Exemplo: Não existem parâmetros de módulo para o LKM, mas se você ligar este módulo ao kernel base, poderá passar alguns parâmetros através dos parâmetros de inicialização do Linux. Veja BootPrompt-HOWTO. Requer firmware. Este driver é para o Seagate ST-02 e o Future Domain TMC-8xx. Exemplo: Não existem parâmetros de módulo para o LKM, mas se você ligar este módulo ao kernel base, poderá passar alguns parâmetros através dos parâmetros de inicialização do Linux. Veja BootPrompt-HOWTO. Este driver autoprobes para endereço somente. O IRQ é fixado em 5. O driver requer o BIOS instalado. Exemplo: Não existem parâmetros de módulo para o LKM, mas se você ligar este módulo ao kernel base, poderá passar alguns parâmetros através dos parâmetros de inicialização do Linux. Veja BootPrompt-HOWTO. Esse driver autoprobe o cartão. O driver requer o BIOS instalado. Exemplo: Não existem parâmetros de módulo para o LKM, mas se você ligar este módulo ao kernel base, poderá passar alguns parâmetros através dos parâmetros de inicialização do Linux. Veja BootPrompt-HOWTO. Este driver autoprobes o cartão, mas não a porta 0x310. Nenhum BIOS é necessário. Exemplo: Não existem parâmetros de módulo para o LKM, mas se você ligar este módulo ao kernel base, poderá passar alguns parâmetros através dos parâmetros de inicialização do Linux. Veja BootPrompt-HOWTO. modprobe wd7000
15.3.7. aha152x: Driver de baixo nível SCSI para Adaptec AHA152X / 2825
modprobe aha152x
15.3.8. aha1542: Driver de baixo nível SCSI para Adaptec AHA1542
modprobe aha1542
15.3.9. aha1740: Driver de baixo nível SCSI para Adaptec AHA1740 EISA
modprobe aha1740
15.3.10. aic7xxx: Driver de baixo nível SCSI para Adaptec AHA274X / 284X / 294X
modprobe aic7xxx
15.3.11. advansys: driver de baixo nível SCSI para AdvanSys / Connect.com
modevolegente advansys asc_iopflag = 1 asc_ioport = 0x110,0x330 asc_dbglvl = 1
15.3.12. in2000: driver de baixo nível SCSI para Always IN2000
modprobe in2000
15.3.13. BusLogic: driver de baixo nível SCSI para BusLogic
modprobe BusLogic
15.3.14. dtc: driver de baixo nível SCSI para DTC3180 / 3280
modprobe dtc
15.3.15. eata: Driver de baixo nível SCSI para EATA ISA / EISA
comer modprobe
15.3.16. eata_dma: Driver SCSI de baixo nível para o EATA-DMA
modprobe eata_dma
15.3.17. eata_pio: Driver de baixo nível SCSI para EATA-PIO
modprobe eata_pio
15.3.18. fdomain: driver SCSI de baixo nível para o domínio futuro 16xx
modprobe fdomain
15.3.19. NCR5380: Driver de baixo nível SCSI para 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: driver de baixo nível SCSI para NCR53c406a
modprobe NCR53c406a
15.3.21. 53c7,8xx.o: Driver de baixo nível SCSI para NCR53c7,8xx
modprobe 53c7,8xx
15.3.22. ncr53c8xx: Driver SCSI de baixo nível para a família PCI-SCS NCR538xx
modprobe ncr53c8xx
15.3.23. ppa: driver SCSI de baixo nível para a unidade ZIP de porta paralela IOMEGA
modprobe ppa ppa_base = 0x378 ppa_nybble = 1
15.3.24. pas16: driver de baixo nível SCSI para PAS16
modprobe pas16
15.3.25. qlogicfas: Driver de baixo nível SCSI para Qlogic FAS
modprobe qlogicfas
15.3.26. qlogicisp: Driver de baixo nível SCSI para o Qlogic ISP
modprobe qlogicisp
15.3.27. Seagate: Driver de baixo nível SCSI para Seagate, Future Domain
seagate modprobe
15.3.28. t128: Driver de baixo nível SCSI para Trantor T128 / T128F / T228
modprobe t128
15.3.29. u14-34f: driver de baixo nível SCSI para UltraStor 14F / 34F
modprobe u14-34f
15.3.30. ultrastor: driver SCSI de baixo nível para UltraStor
ultrastor modprobe