Hi Marcel, On 13 July 2017 at 02:38, Marcel Ziswiler <marcel.ziswi...@toradex.com> wrote: > On Tue, 2017-07-11 at 21:29 -0600, Simon Glass wrote: >> This moves four entire boards to use a live device tree as an example >> of >> the impact. >> >> Nyan-big was chosen because I can easily and boot U-Boot without any >> media swapping, etc. Beaver is enabled as well since it failed to >> boot >> with serial v1 due to a disabled console node. Jetson-TK1 is chosen >> because I found some USB problems in the v2 patches. Jetson-TX1 is >> added >> because Stephen Warren found some problems with PCI. >> >> Total code size impact on this board is approximately 9KB on U-Boot >> and >> 64 bytes on SPL: >> >> 27: dm: tegra: nyan-big: Move to livetree >> arm: (for 1/1 boards) all +9264.0 bss -16.0 data +44.0 rodata >> +92.0 >> spl/u-boot-spl:all +326.0 spl/u-boot-spl:rodata +262.0 >> spl/u-boot-spl:text +64.0 text +9144.0 >> >> Tegra does not use Thumb2, which would likely reduce the code size by >> about >> 25%, indicating a code-size impact of perhaps 7KB. >> >> Boot time is affected slightly. For nyan-big the times with flat tree >> are: >> >> 2,108 dm_r >> 7,924 dm_spl >> 120,724 dm_f >> 171,816 lcd >> >> With the livetree: >> >> 721 dm_r >> 3,764 of_live >> 7,990 dm_spl >> 120,736 dm_f >> 168,215 lcd >> >> As expected the spl and pre-relocation times are not affected. In the >> post-relocation case, the live tree must be built, which here takes >> about >> 3.8ms. Driver-model device creation takes a bit of 1ms less time with >> the >> livetree, so all up the cost is about 2.4ms. After DM init there >> appears >> to be a slight reduction in the time taken to set up devices (from >> 327ms >> to 319ms) so overall the live tree does not appear to be any slower. >> This >> is because pre-parsing the device tree makes reading it later faster. >> >> The use of livetree is controlled by a the CONFIG_OF_LIVE option. >> When >> enabled, U-Boot builds a livetree immediately after relocation and >> uses >> it from then on. >> >> This series is available at u-boot-dm/livet-working >> >> Changes in v4: >> - Add new patch to add ofnode_read_resource() >> - Add new patch to fix up ofnode_get_addr_index() for 64-bit values >> - Update to use ofnode_read_resource() >> - Drop fdtdec.h header >> - Update to deal with rename of ofnode_read_prop() >> - Rebase to master >> - Drop changes already applied >> - Fix PCI and i2c init problems on jetson-tx1 > > Could you elaborate a little bit more on this as from the actual patch > set I don't seem to be able to figure out how/what exactly you did in > that respect. > > Other than that it at least works for me on my Beaver and Jetson TK1 so > you may add the following to the whole series: > > Tested-by: Marcel Ziswiler <marcel.ziswi...@toradex.com> > Tested-on: Beaver, Jetson-TK1
Thanks. I cannot test Jetson-TK1 yet but I think these changes are needed to make USB work, and possibly PCI: >> - Add new patch to add ofnode_read_resource() >> - Update to use ofnode_read_resource() (see the appropriate patches with these changes mentioned in the change log) Basically the code for setting up the USB PHY did not work and that stopped PCI from working, I believe. The changes applicable to TX1 are: >> - Add new patch to fix up ofnode_get_addr_index() for 64-bit values (this fixed I2C reading the register address) [..] Regards, Simon _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot