Antwort

0

Im Linux-Kernel vor der Einführung der Gerätebäume wurden die von den Treibern benötigten Daten über die Board-Dateien bereitgestellt, und für jede mögliche Karte gab es eine Board-Datei. Es wurde von etwas bereitgestellt, das als Plattformdaten bezeichnet wird, und Treiber wären Plattformtreiber, die Treiber sind, die im Grunde nicht automatisch gefunden oder aufgezählt werden wie USB oder PCI.

Der obige Ansatz führte zu einer Menge Unordnung und Duplikation, da viele der Daten natürlich üblich waren oder zwischen den Boards üblich waren. Zum Beispiel wird ein GPIO-Controller für ein bestimmtes SoC nicht zwischen Boards unterschiedlich sein oder andere Informationen benötigen, zumindest keine primären wie eine Interrupt-ID.

Gerätebäume Ansatz haben eine SoC-Ebene dtsi-Datei, die häufig ist und alle Board-oder Modul-Varianten erben sie aber angeben, welche Unterschiede oder zusätzliche Peripheriegeräte ein- oder auszuschalten.

Funktionen zum Parsen oder Lesen von beiden sind unterschiedlich. Gerätebäume beschreiben Hardware und der Hauptunterschied bei beiden ist, wie die Daten bereitgestellt und gelesen werden.

+0

Angenommen, ich werde jetzt einen neuen Gerätetreiber schreiben, wie ** ** ich auf die Daten von Gerätbaum _ ** auf meinen Treiber zugreifen kann, indem ** ** PIN-Konfiguration ** zuweisen. –

Verwandte Themen