On Sat, Oct 29, 2011 at 01:03:20PM +0200, Grant Likely wrote: > On Sat, Oct 29, 2011 at 09:43:30AM +0100, Russell King - ARM Linux wrote: > > On Fri, Oct 28, 2011 at 09:49:49AM -0700, Stephen Warren wrote: > > > When boards boot from DT, there is no fixup function to override the > > > bootloader's ATAGs. I also see a bunch of code to set up the memory > > > information from DT e.g. setup_machine_fdt()'s call to: > > > > > > of_scan_flat_dt(early_init_dt_scan_memory, NULL); > > > > > > ... but I assume that happens before the ATAGs are processed, and the > > > buggy ATAGs end up overriding the information in the DT file. > > > > As far as the uncompressed kernel is concerned, there is either ATAG > > or DT information, never both. If the boot loader provides ATAGs and > > the zImage has a DT appended to it, the zImage decompressor merges the > > ATAGs into the appended DT and passes the DT to the kernel. > > > > So anyone who currently 'fixes' their broken boot loader via the fixup > > function by directly manipulating the ATAGS is going to hit the DT > > image instead. > > Ugh. Not pretty. A platform could still have board specific fixup > code that matches on the compatible string that deals with broken > firmware ATAGs, but I don't think that is what we want to do. No. The point I was making is that by the time you get to the fixup function with a DT or even into the uncompressed kernel, even if the boot loader provided ATAGs, your ATAGs have long since been obliterated and are no longer available. -- To unsubscribe from this list: send the line "unsubscribe linux-tegra" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html