Hi Tom, This is the first two of the livetree series as well as some driver-model adjustments for MMC.
It's up to you if you want to take this now, or wait. I will send a new version of the 3rd livetree series later by early next week and am happy to do this all at once if you prefer. On the other hand I don't want to miss RC1 if I can help it. The following changes since commit be62fbf376261ab3a4ed5db3bf54d5df9e216d9f: Merge branch 'rmobile' of git://git.denx.de/u-boot-sh (2017-05-23 16:22:03 -0400) are available in the git repository at: git://git.denx.de/u-boot-dm.git for you to fetch changes up to 68dbdcb3cf8c59ab04b1b31d750fcee1e603e760: sandbox: Move to use live tree (2017-05-24 14:18:23 -0600) ---------------------------------------------------------------- Simon Glass (90): dm: Use dm.h header when driver mode is used dm: core: Move dev_get_addr() etc. into a separate file dm: Rename dev_addr..() functions atmel: Fix up use of dm_scan_fdt_node() dm: Fix up inclusion of common.h dm: core: Dont export dm_scan_fdt_node() dm: core: Replace of_offset with accessor (part 2) dm: core: Add ofnode to represent device tree nodes dm: core: Adjust device_bind_common() to take an ofnode dm: mmc: Don't call board_mmc_power_init() with driver model dm: mmc: Don't re-init when accessing environment dm: blk: Allow finding block devices without probing dm: blk: Add a function to find the next block device number dm: blk: Improve block device claiming dm: mmc: Avoid probing block devices in find_mmc_device() dm: mmc: Check that drivers have operations dm: mmc: Rewrite mmc_blk_probe() tegra: Convert MMC to use driver model for operations dm: core: Set return value first in lists_bind_fdt() Update WARN_ON() to return a value dm: core: Add livetree definitions dm: core: Add livetree access functions dm: Add a function to create a 'live' device tree dm: Build a live tree after relocation dm: core: Rename of_device_is_compatible() dm: core: Add operations on device tree references dm: core: Add livetree address functions fdt: Update fdt_get_base_address() to use const dm: core: Add address operations on device tree references dm: core: Add a place to put extra device-tree reading functions dm: core: Add device-based 'read' functions to access DT dm: core: Implement live tree 'read' functions dm: core: Allow binding a device from a live tree dm: core: Update lists_bind_fdt() to use ofnode dm: core: Update device_bind_driver_to_node() to use ofnode dm: core: Scan the live tree when setting up driver model dm: core: Add a way to find a device by ofnode dm: regmap: Add support for livetree dm: simple-bus: Add support for livetree dm: core: Update uclass_find_device_by_phandle() for livetree sandbox: Add a way to reset sandbox state for tests dm: test: Move test running code into a separate function dm: test: Show the test filename when running dm: test: Add support for running tests with livetree dm: core: Run tests with both livetree and flat tree dm: gpio: Refactor to prepare for live tree support dm: gpio: Drop blank line in gpio_xlate_offs_flags() comment dm: gpio: sandbox: Use dev_read...() functions to access DT dm: gpio: Add live tree support cros_ec: Fix debug() statement in ec_command_inptr() cros_ec: Convert to support live tree sandbox: Add a new sandbox_flattree board test: Update 'make test' to run more tests fdt: Rename a few functions in fdt_support dm: Add more livetree helpers and definitions string: Add strchrnul() string: Add strcspn() dm: i2c: Convert uclass to livetree samsung: Move pmic header out of config file dm: pmic: Convert uclass to livetree sandbox: pmic: Convert pmic emulator to support livetree dm: regulator: Convert regulator uclass to support livetree dm: regulator: Update fixed regulator to support livetree. dm: mmc: Convert uclass to livetree dm: adc: Convert uclass to livetree dm: usb: Convert uclass to livetree sandbox: usb: Convert emulators to livetree clk: Modify xlate() method for livetree dm: clk: Update uclass to support livetree dm: clk: fixed: Update to support livetree dm: test: Separate out the bus DT offset test dm: test: Disable the fdt_offset test with livetree dm: phy: Update tests to use ut_asserteq() dm: mailbox: Update uclass to support livetree dm: phy: Update uclass to support livetree sandbox: phy: Update driver for livetree dm: power-domain: Update uclass to support livetree dm: reset: Update uclass to support livetree dm: pci: Update uclass to support livetree dm: Update the I2C eeprom driver for livetree cros_ec: Update the cros_ec keyboard driver to livetree dm: spi: Convert uclass to livetree dm: sandbox: i2c: Drop fdtdec.h header dm: sandbox: i2c_rtc: Drop fdtdec.h header dm: spi-flash: Convert uclass to livetree dm: sandbox: spi: Convert driver to support livetree dm: sandbox: sysreset: Convert driver to livetree dm: test: Fix nit with position of backslash dm: gpio: power: Convert pm8916 drivers to livetree sandbox: Move to use live tree arch/arm/cpu/armv8/fsl-layerscape/fdt.c | 4 +- arch/arm/lib/bootm.c | 2 +- arch/arm/mach-mvebu/sata.c | 2 +- arch/arm/mach-rockchip/rk3188/sdram_rk3188.c | 2 +- arch/arm/mach-rockchip/rk3328/clk_rk3328.c | 2 +- arch/arm/mach-rockchip/rk3399/sdram_rk3399.c | 2 +- arch/arm/mach-snapdragon/clock-apq8016.c | 2 +- arch/arm/mach-tegra/tegra186/nvtboot_mem.c | 4 +- arch/arm/mach-uniphier/pinctrl-glue.c | 4 +- arch/sandbox/cpu/cpu.c | 1 + arch/sandbox/cpu/state.c | 15 +- arch/sandbox/dts/test.dts | 12 +- arch/sandbox/include/asm/state.h | 7 + board/amlogic/odroid-c2/odroid-c2.c | 2 +- board/armltd/integrator/integrator.c | 2 +- board/armltd/vexpress64/vexpress64.c | 2 +- board/beckhoff/mx53cx9020/mx53cx9020.c | 2 +- board/cadence/xtfpga/xtfpga.c | 2 +- board/cavium/thunderx/thunderx.c | 2 +- board/freescale/common/fsl_chain_of_trust.c | 1 + board/freescale/common/fsl_validate.c | 2 +- board/qualcomm/dragonboard410c/dragonboard410c.c | 12 +- board/samsung/common/board.c | 4 +- board/samsung/common/exynos5-dt.c | 2 +- board/samsung/common/misc.c | 13 + board/sandbox/MAINTAINERS | 7 + board/st/stm32f429-discovery/stm32f429-discovery.c | 2 +- board/st/stm32f746-disco/stm32f746-disco.c | 2 +- board/st/stv0991/stv0991.c | 2 +- board/toradex/apalis_imx6/apalis_imx6.c | 1 + board/toradex/colibri_imx6/colibri_imx6.c | 1 + board/toradex/colibri_pxa270/colibri_pxa270.c | 1 + board/toradex/common/tdx-cfg-block.c | 2 +- cmd/bootefi.c | 2 +- common/board_r.c | 12 + common/env_mmc.c | 3 +- common/env_sf.c | 1 + common/fdt_support.c | 28 +- configs/apalis-tk1_defconfig | 2 - configs/apalis_t30_defconfig | 2 - configs/beaver_defconfig | 2 - configs/cardhu_defconfig | 2 - configs/cei-tk1-som_defconfig | 2 - configs/colibri_t20_defconfig | 2 - configs/colibri_t30_defconfig | 2 - configs/dalmore_defconfig | 2 - configs/e2220-1170_defconfig | 2 - configs/harmony_defconfig | 2 - configs/jetson-tk1_defconfig | 2 - configs/medcom-wide_defconfig | 2 - configs/nyan-big_defconfig | 2 - configs/p2371-0000_defconfig | 2 - configs/p2371-2180_defconfig | 2 - configs/p2571_defconfig | 2 - configs/p2771-0000-000_defconfig | 2 - configs/p2771-0000-500_defconfig | 2 - configs/paz00_defconfig | 2 - configs/plutux_defconfig | 2 - configs/sandbox_defconfig | 1 + configs/sandbox_flattree_defconfig | 179 +++++ configs/seaboard_defconfig | 2 - configs/tec-ng_defconfig | 2 - configs/tec_defconfig | 2 - configs/trimslice_defconfig | 2 - configs/venice2_defconfig | 2 - configs/ventana_defconfig | 2 - configs/whistler_defconfig | 2 - drivers/adc/adc-uclass.c | 14 +- drivers/adc/exynos-adc.c | 2 +- drivers/block/blk-uclass.c | 65 +- drivers/block/dwc_ahci.c | 10 +- drivers/block/sata_ceva.c | 2 +- drivers/clk/aspeed/clk_ast2500.c | 2 +- drivers/clk/at91/clk-generated.c | 2 +- drivers/clk/at91/clk-h32mx.c | 2 +- drivers/clk/at91/clk-main.c | 2 +- drivers/clk/at91/clk-master.c | 2 +- drivers/clk/at91/clk-peripheral.c | 2 +- drivers/clk/at91/clk-plla.c | 2 +- drivers/clk/at91/clk-slow.c | 2 +- drivers/clk/at91/clk-system.c | 2 +- drivers/clk/at91/clk-utmi.c | 2 +- drivers/clk/at91/pmc.c | 11 +- drivers/clk/at91/pmc.h | 2 +- drivers/clk/at91/sckc.c | 3 +- drivers/clk/clk-uclass.c | 14 +- drivers/clk/clk_bcm6345.c | 2 +- drivers/clk/clk_fixed_rate.c | 7 +- drivers/clk/clk_stm32f7.c | 3 +- drivers/clk/clk_zynq.c | 2 +- drivers/clk/clk_zynqmp.c | 2 +- drivers/clk/exynos/clk-exynos7420.c | 4 +- drivers/clk/rockchip/clk_rk3036.c | 2 +- drivers/clk/rockchip/clk_rk3188.c | 2 +- drivers/clk/rockchip/clk_rk3288.c | 2 +- drivers/clk/rockchip/clk_rk3328.c | 2 +- drivers/clk/rockchip/clk_rk3399.c | 4 +- drivers/clk/uniphier/clk-uniphier-core.c | 4 +- drivers/core/Kconfig | 4 + drivers/core/Makefile | 7 +- drivers/core/device.c | 153 +---- drivers/core/fdtaddr.c | 143 ++++ drivers/core/lists.c | 29 +- drivers/core/of_access.c | 735 +++++++++++++++++++++ drivers/core/of_addr.c | 359 ++++++++++ drivers/core/of_extra.c | 37 ++ drivers/core/ofnode.c | 579 ++++++++++++++++ drivers/core/read.c | 140 ++++ drivers/core/regmap.c | 36 +- drivers/core/root.c | 77 ++- drivers/core/simple-bus.c | 3 +- drivers/core/uclass.c | 42 +- drivers/cpu/bmips_cpu.c | 2 +- drivers/cpu/cpu-uclass.c | 6 +- drivers/dma/ti-edma3.c | 4 +- drivers/firmware/firmware-uclass.c | 3 +- drivers/firmware/psci.c | 10 +- drivers/gpio/74x164_gpio.c | 2 +- drivers/gpio/altera_pio.c | 2 +- drivers/gpio/at91_gpio.c | 2 +- drivers/gpio/atmel_pio4.c | 5 +- drivers/gpio/bcm2835_gpio.c | 2 +- drivers/gpio/bcm6345_gpio.c | 6 +- drivers/gpio/gpio-uclass.c | 82 +-- drivers/gpio/gpio-uniphier.c | 4 +- drivers/gpio/imx_rgpio2p.c | 2 +- drivers/gpio/intel_ich6_gpio.c | 2 +- drivers/gpio/lpc32xx_gpio.c | 1 + drivers/gpio/msm_gpio.c | 2 +- drivers/gpio/mvebu_gpio.c | 2 +- drivers/gpio/mxc_gpio.c | 2 +- drivers/gpio/omap_gpio.c | 2 +- drivers/gpio/pca953x_gpio.c | 2 +- drivers/gpio/pm8916_gpio.c | 10 +- drivers/gpio/rk_gpio.c | 2 +- drivers/gpio/s5p_gpio.c | 4 +- drivers/gpio/sandbox.c | 12 +- drivers/gpio/stm32f7_gpio.c | 2 +- drivers/gpio/sunxi_gpio.c | 4 +- drivers/gpio/tegra186_gpio.c | 4 +- drivers/gpio/tegra_gpio.c | 4 +- drivers/gpio/vybrid_gpio.c | 2 +- drivers/gpio/zynq_gpio.c | 2 +- drivers/i2c/Kconfig | 1 - drivers/i2c/ast_i2c.c | 2 +- drivers/i2c/at91_i2c.c | 2 +- drivers/i2c/davinci_i2c.c | 2 +- drivers/i2c/designware_i2c.c | 2 +- drivers/i2c/exynos_hs_i2c.c | 2 +- drivers/i2c/i2c-cdns.c | 4 +- drivers/i2c/i2c-uclass.c | 28 +- drivers/i2c/i2c-uniphier-f.c | 4 +- drivers/i2c/i2c-uniphier.c | 4 +- drivers/i2c/imx_lpi2c.c | 80 +-- drivers/i2c/muxes/i2c-mux-uclass.c | 11 +- drivers/i2c/mv_i2c.c | 2 +- drivers/i2c/mvtwsi.c | 2 +- drivers/i2c/mxc_i2c.c | 14 +- drivers/i2c/omap24xx_i2c.c | 2 +- drivers/i2c/rk_i2c.c | 2 +- drivers/i2c/s3c24x0_i2c.c | 2 +- drivers/i2c/sandbox_i2c.c | 1 - drivers/i2c/tegra_i2c.c | 2 +- drivers/input/cros_ec_keyb.c | 24 +- drivers/input/key_matrix.c | 19 +- drivers/input/tegra-kbc.c | 5 +- drivers/led/led_bcm6328.c | 7 +- drivers/led/led_bcm6358.c | 7 +- drivers/led/led_gpio.c | 13 +- drivers/mailbox/mailbox-uclass.c | 20 +- drivers/mailbox/tegra-hsp.c | 4 +- drivers/misc/altera_sysid.c | 2 +- drivers/misc/cros_ec.c | 36 +- drivers/misc/cros_ec_sandbox.c | 23 +- drivers/misc/i2c_eeprom_emul.c | 7 +- drivers/misc/tegra186_bpmp.c | 6 +- drivers/misc/tegra_car.c | 4 +- drivers/mmc/atmel_sdhci.c | 2 +- drivers/mmc/bcm2835_sdhci.c | 2 +- drivers/mmc/fsl_esdhc.c | 8 +- drivers/mmc/gen_atmel_mci.c | 4 +- drivers/mmc/meson_gx_mmc.c | 4 +- drivers/mmc/mmc-uclass.c | 30 +- drivers/mmc/mmc.c | 15 +- drivers/mmc/msm_sdhci.c | 2 +- drivers/mmc/omap_hsmmc.c | 3 +- drivers/mmc/pic32_sdhci.c | 2 +- drivers/mmc/rockchip_dw_mmc.c | 2 +- drivers/mmc/rockchip_sdhci.c | 2 +- drivers/mmc/s5p_sdhci.c | 8 +- drivers/mmc/sdhci-cadence.c | 6 +- drivers/mmc/socfpga_dw_mmc.c | 2 +- drivers/mmc/sti_sdhci.c | 2 +- drivers/mmc/tangier_sdhci.c | 2 +- drivers/mmc/tegra_mmc.c | 76 ++- drivers/mmc/uniphier-sd.c | 4 +- drivers/mmc/xenon_sdhci.c | 6 +- drivers/mmc/zynq_sdhci.c | 4 +- drivers/mtd/altera_qspi.c | 2 +- drivers/mtd/cfi_flash.c | 2 +- drivers/mtd/nand/sunxi_nand.c | 2 +- drivers/mtd/nand/tegra_nand.c | 4 +- drivers/mtd/pic32_flash.c | 2 +- drivers/mtd/spi/sandbox.c | 6 +- drivers/mtd/spi/spi_flash.c | 7 +- drivers/net/ag7xxx.c | 2 +- drivers/net/altera_tse.c | 2 +- drivers/net/cpsw-common.c | 4 +- drivers/net/cpsw.c | 2 +- drivers/net/designware.c | 2 +- drivers/net/dwc_eth_qos.c | 4 +- drivers/net/ethoc.c | 6 +- drivers/net/fec_mxc.c | 2 +- drivers/net/keystone_net.c | 8 +- drivers/net/macb.c | 2 +- drivers/net/mvneta.c | 4 +- drivers/net/mvpp2.c | 8 +- drivers/net/phy/phy.c | 2 +- drivers/net/phy/ti.c | 2 +- drivers/net/pic32_eth.c | 3 +- drivers/net/sandbox-raw.c | 2 +- drivers/net/sandbox.c | 2 +- drivers/net/sun8i_emac.c | 8 +- drivers/net/sunxi_emac.c | 2 +- drivers/net/tsec.c | 2 +- drivers/net/xilinx_axi_emac.c | 2 +- drivers/net/xilinx_emaclite.c | 2 +- drivers/net/zynq_gem.c | 2 +- drivers/pci/pci-uclass.c | 26 +- drivers/pci/pcie_dw_mvebu.c | 4 +- drivers/phy/marvell/comphy_core.c | 8 +- drivers/phy/phy-uclass.c | 21 +- drivers/phy/sandbox-phy.c | 3 +- drivers/phy/ti-pipe3-phy.c | 4 +- drivers/pinctrl/ath79/pinctrl_ar933x.c | 2 +- drivers/pinctrl/ath79/pinctrl_qca953x.c | 2 +- drivers/pinctrl/exynos/pinctrl-exynos.c | 2 +- drivers/pinctrl/meson/pinctrl-meson-gxbb.c | 3 +- drivers/pinctrl/meson/pinctrl-meson.c | 2 +- drivers/pinctrl/mvebu/pinctrl-mvebu.c | 2 +- drivers/pinctrl/nxp/pinctrl-imx.c | 2 +- drivers/pinctrl/nxp/pinctrl-imx5.c | 3 +- drivers/pinctrl/nxp/pinctrl-imx6.c | 3 +- drivers/pinctrl/nxp/pinctrl-imx7.c | 3 +- drivers/pinctrl/nxp/pinctrl-imx7ulp.c | 3 +- drivers/pinctrl/pinctrl-at91-pio4.c | 4 +- drivers/pinctrl/pinctrl-at91.c | 6 +- drivers/pinctrl/pinctrl-generic.c | 2 +- drivers/pinctrl/pinctrl-sandbox.c | 2 +- drivers/pinctrl/pinctrl-single.c | 13 +- drivers/pinctrl/pinctrl-uclass.c | 18 +- drivers/pinctrl/pinctrl_stm32.c | 2 +- drivers/pinctrl/rockchip/pinctrl_rk3188.c | 4 +- drivers/pinctrl/rockchip/pinctrl_rk3328.c | 2 +- drivers/pinctrl/uniphier/pinctrl-uniphier-core.c | 4 +- drivers/pinctrl/uniphier/pinctrl-uniphier-ld11.c | 3 +- drivers/pinctrl/uniphier/pinctrl-uniphier-ld20.c | 3 +- drivers/pinctrl/uniphier/pinctrl-uniphier-ld4.c | 3 +- drivers/pinctrl/uniphier/pinctrl-uniphier-ld6b.c | 3 +- drivers/pinctrl/uniphier/pinctrl-uniphier-pro4.c | 3 +- drivers/pinctrl/uniphier/pinctrl-uniphier-pro5.c | 3 +- drivers/pinctrl/uniphier/pinctrl-uniphier-pxs2.c | 3 +- drivers/pinctrl/uniphier/pinctrl-uniphier-pxs3.c | 3 +- drivers/pinctrl/uniphier/pinctrl-uniphier-sld3.c | 3 +- drivers/pinctrl/uniphier/pinctrl-uniphier-sld8.c | 3 +- drivers/power/domain/bcm6328-power-domain.c | 2 +- drivers/power/domain/power-domain-uclass.c | 19 +- drivers/power/pmic/act8846.c | 8 +- drivers/power/pmic/i2c_pmic_emul.c | 6 +- drivers/power/pmic/lp873x.c | 12 +- drivers/power/pmic/max77686.c | 8 +- drivers/power/pmic/palmas.c | 16 +- drivers/power/pmic/pfuze100.c | 8 +- drivers/power/pmic/pm8916.c | 2 +- drivers/power/pmic/pmic-uclass.c | 22 +- drivers/power/pmic/rk8xx.c | 8 +- drivers/power/pmic/s5m8767.c | 7 +- drivers/power/pmic/sandbox.c | 2 +- drivers/power/pmic/tps65090.c | 8 +- drivers/power/regulator/fixed.c | 17 +- drivers/power/regulator/regulator-uclass.c | 39 +- drivers/pwm/exynos_pwm.c | 2 +- drivers/pwm/rk_pwm.c | 2 +- drivers/pwm/tegra_pwm.c | 2 +- drivers/ram/bmips_ram.c | 4 +- drivers/ram/stm32_sdram.c | 2 +- drivers/reset/reset-bcm6345.c | 2 +- drivers/reset/reset-uclass.c | 21 +- drivers/reset/reset-uniphier.c | 4 +- drivers/rtc/i2c_rtc_emul.c | 1 - drivers/serial/altera_jtag_uart.c | 2 +- drivers/serial/altera_uart.c | 2 +- drivers/serial/atmel_usart.c | 2 +- drivers/serial/ns16550.c | 2 +- drivers/serial/serial-uclass.c | 3 +- drivers/serial/serial_ar933x.c | 2 +- drivers/serial/serial_arc.c | 2 +- drivers/serial/serial_bcm283x_mu.c | 2 +- drivers/serial/serial_bcm6345.c | 4 +- drivers/serial/serial_lpuart.c | 4 +- drivers/serial/serial_meson.c | 2 +- drivers/serial/serial_msm.c | 2 +- drivers/serial/serial_mvebu_a3700.c | 2 +- drivers/serial/serial_mxc.c | 2 +- drivers/serial/serial_pl01x.c | 2 +- drivers/serial/serial_s5p.c | 2 +- drivers/serial/serial_sti_asc.c | 2 +- drivers/serial/serial_stm32x7.c | 2 +- drivers/serial/serial_uniphier.c | 5 +- drivers/serial/serial_xuartlite.c | 2 +- drivers/serial/serial_zynq.c | 2 +- drivers/sound/max98095.c | 2 + drivers/sound/wm8994.c | 2 +- drivers/spi/altera_spi.c | 2 +- drivers/spi/ath79_spi.c | 2 +- drivers/spi/atmel_spi.c | 2 +- drivers/spi/davinci_spi.c | 2 +- drivers/spi/designware_spi.c | 2 +- drivers/spi/exynos_spi.c | 2 +- drivers/spi/fsl_dspi.c | 4 +- drivers/spi/kirkwood_spi.c | 2 +- drivers/spi/mvebu_a3700_spi.c | 2 +- drivers/spi/omap3_spi.c | 2 +- drivers/spi/pic32_spi.c | 2 +- drivers/spi/rk_spi.c | 2 +- drivers/spi/spi-uclass.c | 31 +- drivers/spi/tegra114_spi.c | 2 +- drivers/spi/tegra20_sflash.c | 2 +- drivers/spi/tegra20_slink.c | 2 +- drivers/spi/tegra210_qspi.c | 2 +- drivers/spi/ti_qspi.c | 12 +- drivers/spi/zynq_spi.c | 2 +- drivers/spmi/spmi-msm.c | 2 +- drivers/sysreset/sysreset_psci.c | 3 +- drivers/sysreset/sysreset_sandbox.c | 2 +- drivers/sysreset/sysreset_snapdragon.c | 2 +- drivers/timer/altera_timer.c | 2 +- drivers/timer/arc_timer.c | 2 +- drivers/timer/ast_timer.c | 2 +- drivers/timer/omap-timer.c | 2 +- drivers/timer/timer-uclass.c | 3 +- drivers/tpm/tpm_tis_lpc.c | 2 +- drivers/usb/emul/sandbox_flash.c | 4 +- drivers/usb/emul/sandbox_hub.c | 3 +- drivers/usb/host/dwc2.c | 2 +- drivers/usb/host/ehci-atmel.c | 2 +- drivers/usb/host/ehci-exynos.c | 2 +- drivers/usb/host/ehci-fsl.c | 2 +- drivers/usb/host/ehci-generic.c | 2 +- drivers/usb/host/ehci-marvell.c | 4 +- drivers/usb/host/ehci-msm.c | 2 +- drivers/usb/host/ehci-mx6.c | 4 +- drivers/usb/host/ehci-sunxi.c | 2 +- drivers/usb/host/ehci-tegra.c | 9 +- drivers/usb/host/ehci-vf.c | 7 +- drivers/usb/host/ehci-zynq.c | 2 +- drivers/usb/host/ohci-generic.c | 2 +- drivers/usb/host/ohci-sunxi.c | 2 +- drivers/usb/host/usb-uclass.c | 8 +- drivers/usb/host/xhci-exynos5.c | 2 +- drivers/usb/host/xhci-fsl.c | 2 +- drivers/usb/host/xhci-mvebu.c | 2 +- drivers/usb/host/xhci-rockchip.c | 6 +- drivers/usb/musb-new/sunxi.c | 1 + drivers/usb/musb-new/ti-musb.c | 4 +- drivers/video/atmel_hlcdfb.c | 6 +- drivers/video/exynos/exynos_dp.c | 4 +- drivers/video/exynos/exynos_fb.c | 2 +- drivers/video/rockchip/rk_edp.c | 2 +- drivers/video/rockchip/rk_hdmi.c | 2 +- drivers/video/rockchip/rk_lvds.c | 2 +- drivers/video/rockchip/rk_mipi.c | 2 +- drivers/video/rockchip/rk_vop.c | 2 +- drivers/video/tegra.c | 2 +- drivers/video/tegra124/dp.c | 2 +- drivers/watchdog/ast_wdt.c | 2 +- dts/Kconfig | 11 + include/asm-generic/global_data.h | 3 + include/asm-generic/gpio.h | 17 +- include/blk.h | 15 +- include/clk-uclass.h | 5 +- include/configs/s5pc210_universal.h | 1 - include/configs/trats.h | 1 - include/configs/trats2.h | 1 - include/cros_ec.h | 8 +- include/dm.h | 4 + include/dm/device-internal.h | 10 +- include/dm/device.h | 110 +-- include/dm/fdtaddr.h | 110 +++ include/dm/lists.h | 9 +- include/dm/of.h | 142 ++++ include/dm/of_access.h | 347 ++++++++++ include/dm/of_addr.h | 64 ++ include/dm/of_extra.h | 46 ++ include/dm/ofnode.h | 578 ++++++++++++++++ include/dm/read.h | 439 ++++++++++++ include/dm/root.h | 19 +- include/dm/test.h | 2 + include/dm/uclass-internal.h | 18 + include/dm/uclass.h | 17 + include/fdt_support.h | 6 +- include/fdtdec.h | 34 - include/generic-phy.h | 3 +- include/i2c.h | 3 +- include/key_matrix.h | 3 +- include/linux/compat.h | 8 +- include/linux/string.h | 28 + include/mailbox-uclass.h | 2 +- include/of_live.h | 24 + include/power-domain-uclass.h | 2 +- include/power/pmic.h | 2 +- include/reset-uclass.h | 4 +- include/spi.h | 2 +- include/test/test.h | 4 + include/test/ut.h | 2 +- lib/Makefile | 1 + lib/fdtdec.c | 33 +- lib/of_live.c | 333 ++++++++++ lib/string.c | 32 + test/dm/blk.c | 60 +- test/dm/bus.c | 16 +- test/dm/phy.c | 15 +- test/dm/test-fdt.c | 3 +- test/dm/test-main.c | 105 ++- test/run | 8 +- 425 files changed, 5748 insertions(+), 1374 deletions(-) create mode 100644 configs/sandbox_flattree_defconfig create mode 100644 drivers/core/fdtaddr.c create mode 100644 drivers/core/of_access.c create mode 100644 drivers/core/of_addr.c create mode 100644 drivers/core/of_extra.c create mode 100644 drivers/core/ofnode.c create mode 100644 drivers/core/read.c create mode 100644 include/dm/fdtaddr.h create mode 100644 include/dm/of.h create mode 100644 include/dm/of_access.h create mode 100644 include/dm/of_addr.h create mode 100644 include/dm/of_extra.h create mode 100644 include/dm/ofnode.h create mode 100644 include/dm/read.h create mode 100644 include/of_live.h create mode 100644 lib/of_live.c Regards, Simon _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot