Bootloader come U-Boot che non implementano l'API Open Firmware, si prevede di passare al kernel una forma binaria della struttura dei dispositivi appiattito - LinuxFDTBlobPerché il file DTS (Device Tree Structure) è necessario sia nel bootloader sia nel codice sorgente del kernel?
Perché sono i file DTS presenti nel kernel anche? Non è ridondante?
A titolo di esempio, il codice sorgente di U-boot è il file seguente:
arch/arm/dts/tegra124-jetson-tk1.dts
Questo file può anche essere trovato sotto il codice sorgente di Linux:
arch/arm/boot/dts/tegra124-jetson-tk1.dts
Anche se la versione del kernel è 4 volte le Versione U-boot, mi piacerebbe sapere la ragione di questa ridondanza. Credo sia più difficile da mantenere e utilizzare sia per i manutentori che per gli sviluppatori
È un problema che [le persone hanno cercato di capire come risolvere per un po 'di tempo] (http://thread.gmane.org/gmane.comp.devicetree.compiler/14). – Notlikethat
sembra che non abbiano completato la migrazione quando hanno quasi trovato una soluzione: | – Hamzahfrq
Sono per scopi diversi. La versione * u-boot * consente a diverse versioni di * u-boot * di funzionare su più schede. Fa parte di un'infrastruttura [tag: kbuild] o * config * che è un WIP. Le versioni di Linux sono per l'avvio di Linux. Ovviamente, * u-boot * è una versione ridotta perché non ci sono tante periferiche necessarie per l'avvio. Puoi fare lo stesso argomento per tutti i driver * u-boot *; la maggior parte sono copie dei driver Linux con interrupt sostituiti da routine di polling. Perché esistono BSD e Linux? Non si duplicano? Perché ogni progetto ha il proprio elenco collegato? –