Hi, Detlev Zundel wrote: > Hi, > >> Wolfgang Denk wrote: >>> Dear Scott Wood, >>> >>> In message <4a034b09.7030...@freescale.com> you wrote: >>>>> Or what replaced the "immr" structs? >>>> The device tree, mainly... >>> Right, of course. >>> >>>> ... But #defines can work for u-boot. >>> Of course they _can_ work. But they can easily fail (as we just see >>> in this patch), and we don't have typechecking. So until DT's are >>> omnipresent, let's use structs in U-Boot, please. >> You *do* have typechecking as long as the individual blocks are >> described with structs. >> >> We could take immap to extremes by defining one big 4GiB struct that >> shows where memory, immr, flash, desired PCI bars, FPGAs, etc. are -- >> but that would be silly. IMHO, so is doing it at the immr level. :-) >> >> How would you deal with blocks being at different locations in different >> chips? It's a lot easier to ifdef (or have the config file specify) a >> couple addresses than to ifdef the locations of fields in a struct, >> especially when you have more than a couple variations. > > For what its worth, I'm with Scott here. Structures for register blocks > is very nice and should be mandated and it seems they are maintainable. > Locations of individual blocks (or number of incarnations thereof) seem > to change frequently and thus tend to be less friendly to "whole > internal address space" structures. So the latter may better be mapped > by single defines. The correctness of them is easily validated and an > incorrect value will immediatley be discovered.
I tend to agree with Scott and Detlev, too. At least from practical point of view http://www.ti.com/litv/pdf/spruf98b (attention: ~40MB) ;) Best regards Dirk _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot