u-boot/drivers/core
Simon Glass c20ee0ed07 dtoc: Add support for 32 or 64-bit addresses
When using 32-bit addresses dtoc works correctly. For 64-bit addresses it
does not since it ignores the #address-cells and #size-cells properties.

Update the tool to use fdt64_t as the element type for reg properties when
either the address or size is larger than one cell. Use the correct value
so that C code can obtain the information from the device tree easily.

Alos create a new type, fdt_val_t, which is defined to either fdt32_t or
fdt64_t depending on the word size of the machine. This type corresponds
to fdt_addr_t and fdt_size_t. Unfortunately we cannot just use those types
since they are defined to phys_addr_t and phys_size_t which use
'unsigned long' in the 32-bit case, rather than 'unsigned int'.

Add tests for the four combinations of address and size values (32/32,
64/64, 32/64, 64/32). Also update existing uses for rk3399 and rk3368
which now need to use the new fdt_val_t type.

Signed-off-by: Simon Glass <sjg@chromium.org>

Suggested-by: Heiko Stuebner <heiko@sntech.de>
Reported-by: Kever Yang <kever.yang@rock-chips.com>
Reviewed-by: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
Tested-by: Kever Yang <kever.yang@rock-chips.com>
2017-09-15 05:27:38 -06:00
..
device-remove.c dm: core: Add DM_FLAG_OS_PREPARE flag 2017-05-17 17:13:06 +08:00
device.c dm: core: Allow binding a device from a live tree 2017-06-01 07:03:08 -06:00
devres.c devres: add debug command to dump device resources 2015-08-06 07:44:29 -06:00
dump.c dm: core: Show driver name with 'dm tree' 2017-09-11 21:43:58 -06:00
fdtaddr.c dm: Rename dev_addr..() functions 2017-06-01 07:03:01 -06:00
Kconfig spl: dm: Kconfig: split REGMAP/SYSCON support for TPL from SPL 2017-08-13 17:12:20 +02:00
lists.c dm: ofnode: rename ofnode_read_prop() to ofnode_get_property() 2017-07-11 10:08:20 -06:00
Makefile spl: dm: Kconfig: split REGMAP/SYSCON support for TPL from SPL 2017-08-13 17:12:20 +02:00
of_access.c dm: core: add ofnode_count_phandle_with_args() 2017-07-28 23:34:08 +02:00
of_addr.c dm: core: Add livetree address functions 2017-06-01 07:03:07 -06:00
of_extra.c dm: core: Add a place to put extra device-tree reading functions 2017-06-01 07:03:07 -06:00
ofnode.c dm: core: Add ofnode_for_each_subnode() 2017-09-11 21:43:58 -06:00
read_extra.c dm: core: Add ofnode_read_resource() 2017-07-28 12:02:47 -06:00
read.c ofnode: add {ofnode, dev}_read_resource_byname() 2017-08-29 23:56:17 +09:00
regmap.c dtoc: Add support for 32 or 64-bit addresses 2017-09-15 05:27:38 -06:00
root.c dm: core: add clocks node scan 2017-09-11 21:43:58 -06:00
simple-bus.c dm: simple-bus: Add support for livetree 2017-06-01 07:03:09 -06:00
syscon-uclass.c dm: core: Avoid calling dm_scan_fdt_dev() with of-platdata 2017-08-17 16:44:16 +09:00
uclass.c dm: core: Add uclass_first/next_device_check() 2017-07-11 10:08:19 -06:00
util.c dm: include <dm/util.h> from drivers/core/util.c 2017-07-11 10:08:20 -06:00