SATA: Welche Linux-Kernel-Treiber werden für die grundlegende Unterstützung benötigt?

SATA: Welche Linux-Kernel-Treiber werden für die grundlegende Unterstützung benötigt?

Ich suche nach den grundlegenden Kerneltreibern, um die SATA-Unterstützung zu aktivieren.

Ich habe ein Braswell-Setup (Intel SoC) und möchte die Anzahl der Kerneltreiber auf ein Minimum reduzieren. Benötigt die SATA-Unterstützung die ATA-Treiber? Was ist mit den SCSI-Treibern? Oder Device Mapper-Unterstützung (aus dem RAID-Menü)? Es scheint, dass neben dem Treiber des Herstellers mehr als 10 verschiedene generische Treiber zur Unterstützung von SATA erforderlich sind.

Ich verwende den Linux-Kernel 4.4 und konnte in der Dokumentation nicht viele Informationen finden. Es scheint, dass die ATA-, SATA- und SCSI-Menükonfigurationsoptionen über mehrere Abschnitte verstreut sind.

Ich denke, das Wichtigste ist der libataTreiber, aber mir ist nicht klar, ob sie die ATA- oder SCSI-Treiber benötigen.

Device Drivers  --->
    Serial ATA and Parallel ATA drivers (libata)   --->

Ich habe das Thema durchsucht, aber keine klare Antwort gefunden. Mir gefiel diese Antwort über die historische Perspektive von ATA und SCSI und wie siemiteinander reden.

Würde es außerdem einen großen Unterschied machen, wenn SATA für einen anderen SoC, wie einen ARM-SoC, aktiviert wird, abgesehen vom herstellerspezifischen Treiber? Eine ideale Antwort würde sich auf die spezifischen Optionen in menuconfig beziehen!

Danke !

Antwort1

Teilantwort:

Die Kernelschichten sind etwas komplex und ich kann Ihnen kein vollständiges Bild geben. Heutzutage verwenden fast alle Speichergeräte eine Art SCSI-Befehle (weshalb sie als /dev/sdXstatt angezeigt werden /dev/hdX), obwohl diese über verschiedene Mechanismen (ATA-Pakete, USB oder andere) transportiert werden können. Sie benötigen also mindestens:

  • Der SATA-Treiber für Ihre jeweilige Hardware (ggf. mehrere Module, zB libahci)
  • Die generische ATA-Schicht (ggf. mehrere Module, darunter libata)
  • Die generische SCSI-Schicht, zumindest für die Art von Speichergeräten, die Sie verwenden (auf jeden Fall mehrere Module, einschließlich scsi_mod).

ICHdenkenDer Kernel sollte in der Lage sein, die minimalen Abhängigkeiten selbst herauszufinden menuconfig: Wenn Sie zuerst alles deaktivieren und dann nur den unteren Treiber (hardwarespezifisch) und den oberen Treiber (SCSI-Festplatte, CONFIG_BLK_DEV_SD, Modul sd_mod) aktivieren, werden Siewahrscheinlicham Ende erhält man eine ziemlich minimale, funktionsfähige Konfiguration.

verwandte Informationen