
In message 46500875.6060706@grandegger.com you wrote:
CFG_FDT_ADDR_FLASH: If defined, "fdt" is set to that address at compile time. The FDT can be used from the early beginning of the boot.
Just nitpicking: maybe we should call this CFG_FDT_ADDR_STATIC or CFG_FDT_ADDR_DEFAULT or CFG_FDT_ADDR_INIT or something like that. Rationale: flash is just one of the possible storage devies - it could be ROM instead, or even RAM in certain configurations.
Also, while we are defining this, please keep in mind that sooner or later someone will come up with the idea of storing the FDT in EEPROM, so we might want to reserve such identifiers.
CFG_FDT_ADDR_BY_ENV: If defined, the env variable "fdtaddr" is looked up early in the boot and "fdt" is set accordingly. This allows to hold more than one blob in FLASH and select one via env setting. This would allow for _one_ combination of images of U-Boot + Linux + Blobs for a _set_ of boards.
Traditionally, that should be named CFG_FDT_ADDR_IN_ENV
CFG_FDT_ADDR_RAM: If defined, the blob is moved to RAM after relocation for further preparation or for performance reasons. "fdt" is re-set accordingly. The blob is then ready and in place for booting Linux. If CFG_FDT_ADDR_RAM is set to 0, the blob will be copied to a default location, e.g. before the initrd location.
I'm not sure I understand this - will CFG_FDT_ADDR_RAM hold the *address* in RAM where the FDT gets copied to? That sounds pretty static to me.
A board-specific checkboad function is called as early as possible to verify the FDT.
"checkboard()" is a name that can mean anything. If the function is to check or to verify the FDT, the function name should represent this, i. e. please callit checkfdt() or verifyfdt() of probably fdtcheck() / fdtverify() or fdt_check() / fdt_verify().
Best regards,
Wolfgang Denk