
On 12/17/2012 03:37 PM, Wolfgang Denk wrote:
Dear Stephen Warren,
In message 50CF9BAA.3050504@wwwdotorg.org you wrote:
There are many ways besides device tree to enumerate hardware. For example, consider PCI or USB (albeit USB isn't memory mapped). I don't
Yes, there are. But your console port cannot be compred against dynamically populated and scannable bus interfaces like USB or PCI, and I think you are aware of that.
I honestly don't know why you couldn't have a PCI-based console UART.
think we should tie any new U-Boot dynamic device registration API to device tree, since that would seem to prevent (or imply against) usage of that API with PCI for example.
Not any dynamic device registration. But here, it actually AIN'T dynamic - it is fully static, just board dependent.
If you want to run the same U-Boot binary on multiple different boards, then that does make the UART selection dynamic. There's no conceptual difference between dynamic information coming from a DT passed to U-Boot at runtime, SoC-defined enumeration/selection mechanisms such as Tegra's ODMDATA, or scanning a PCI bus.
Or, is U-Boot going to ban addressing TI's case where the UART selection is stored in an I2C EEPROM that can be read at run-time, since instead during flashing that information could be extracted and hard-coded into the board's device tree instead?