2013-07-03 9 views
6

cos'è Device Tree in Linux? quali sono i vantaggi e gli svantaggi della struttura dei dispositivi?Che cos'è l'albero dei dispositivi Vantaggi e svantaggi?

Se qualcuno conosce Albero dei dispositivi in ​​dettaglio, per favore aiutatemi a rispondere alle domande precedenti.

+0

https://stackoverflow.com/questions/17488320/how-to-program-linux-dts-device-tree-files/44994940#44994940 –

risposta

15

L'albero dispositivo è una descrizione dei componenti hardware in un sistema, ecco la lista dei file albero dispositivo Linux per l'arcata braccio:

https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/arch/arm/boot/dts?id=refs/tags/v3.10

Da qui:

http://devicetree.org/Device_Tree_Usage

L'albero dei dispositivi è una semplice struttura ad albero di nodi e proprietà. Le proprietà sono coppie chiave-valore, e il nodo può contenere entrambe le proprietà e nodi figlio

I nodi dell'albero descrivono i parametri che il kernel di Linux o di altri sistemi software come u-boot, utilizza a init hardware.

Alcuni dei vantaggi includono:

  1. semplice per modificare la configurazione del sistema senza dover ricompilare il codice sorgente.
  2. Può facilmente aggiungere il supporto per il nuovo hardware (ad esempio se si dispone di un nuovo rev di una scheda che modifica solo alcuni componenti minori, è possibile essere in grado di eseguire lo stesso carico software dei precedenti giri della scheda, con solo piccole modifiche al file .dts sulla nuova scheda ...)
  3. Riutilizza i file .dts esistenti con le istruzioni include e può sostituire le funzionalità definite in precedenza. Ad esempio, se si include un dtsi (albero include albero del dispositivo) che definisce un componente hardware, ma è disabilitato, è sufficiente creare un nuovo nodo nel file dts di livello superiore che non fa altro che abilitare quel componente.
  4. Essi possono (possono) fornire descrizioni dell'hardware con facilità di lettura e comprensione e possono fornire nomi descrittivi di componenti hardware.

Alcuni degli svantaggi include:

  1. Non è così facile scrivere un nuovo file .dts, perché richiede la conoscenza molto dettagliata dell'hardware.
  2. Anche se si conoscono tutti i dettagli dell'hardware, può essere difficile capire la sintassi esatta da utilizzare per esprimere ciò che si vuole fare ... (cioè la documentazione è carente in molti aspetti)

Per me scrivere un file .dts è quasi del 100% in prova ed errore, tirando esempi da altri file .dts e vedere cosa fa e se si avvicina a quello che voglio ... Spesso gli esempi sono tutto quello che devo lavorare con, e non c'è molto in termini di spiegazione di cosa sta succedendo.

+2

segui questo link se desideri sapere in che modo sono collegati i driver le strutture del dispositivo e come modificare un file dts in base al driver. : http://xillybus.com/tutorials/device-tree-zynq-1 – Raulp

Problemi correlati