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:
- semplice per modificare la configurazione del sistema senza dover ricompilare il codice sorgente.
- 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 ...)
- 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.
- 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:
- Non è così facile scrivere un nuovo file .dts, perché richiede la conoscenza molto dettagliata dell'hardware.
- 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.
fonte
2013-07-03 06:31:50
https://stackoverflow.com/questions/17488320/how-to-program-linux-dts-device-tree-files/44994940#44994940 –