Estou procurando os drivers básicos do kernel para ativar o suporte SATA.
Eu tenho uma configuração Braswell (Intel SoC) e gostaria de reduzir ao mínimo o número de drivers de kernel. O suporte SATA precisa dos drivers ATA? E os drivers SCSI? Ou suporte ao Device Mapper (no menu RAID)? Parece que são necessários mais de 10 drivers genéricos diferentes para suportar SATA além do driver do fabricante.
Estou usando o kernel Linux 4.4 e não consegui encontrar muitas informações na Documentação. Parece que as opções de menuconfig ATA, SATA e SCSI estão espalhadas por várias seções.
Acho que o mais importante é o libata
driver, mas não está claro para mim se eles precisam dos drivers ATA ou SCSI
Device Drivers --->
Serial ATA and Parallel ATA drivers (libata) --->
Pesquisei o assunto mas não encontrei uma resposta clara. Gostei desta resposta sobre a perspectiva histórica do ATA e do SCSI e como eles podemfalar um com o outro.
Além disso, haveria alguma diferença importante ao ativar o SATA para outro SoC, como um SoC ARM, além do driver específico do fornecedor? Uma resposta ideal seria referir-se às opções específicas em menuconfig !
Obrigado !
Responder1
Resposta parcial:
As camadas do kernel são um pouco complexas e não posso dar uma imagem completa. Hoje, quase todos os dispositivos de armazenamento usam algum tipo de comando SCSI (por isso aparecem em /dev/sdX
vez de /dev/hdX
), embora possam ser transportados por diferentes mecanismos (pacotes ATA, USB ou outros). Então você precisa de pelo menos:
- O driver SATA para seu hardware específico (possivelmente vários módulos, por exemplo
libahci
) - A camada ATA genérica (possivelmente vários módulos, incluindo
libata
) - A camada SCSI genérica, pelo menos para o tipo de dispositivo de armazenamento que você usa (definitivamente vários módulos, incluindo
scsi_mod
).
EUpensaro kernel deve ser capaz de descobrir as dependências mínimas em menuconfig
: Se você primeiro desabilitar tudo e depois habilitar apenas o driver inferior (específico do hardware) e o driver superior (disco SCSI, CONFIG_BLK_DEV_SD
módulo sd_mod
), vocêprovávelacabar com uma configuração viável mínima.