Merge git://git.denx.de/u-boot-dm

This commit is contained in:
Tom Rini 2018-07-26 23:12:47 -04:00
commit 2ae23a280b
5 changed files with 20 additions and 10 deletions

View File

@ -695,7 +695,7 @@ steps (see device_probe()):
allocate it yourself in ofdata_to_platdata(). Note that it is preferable allocate it yourself in ofdata_to_platdata(). Note that it is preferable
to do all the device tree decoding in ofdata_to_platdata() rather than to do all the device tree decoding in ofdata_to_platdata() rather than
in probe(). (Apart from the ugliness of mixing configuration and run-time in probe(). (Apart from the ugliness of mixing configuration and run-time
data, one day it is possible that U-Boot will cache platformat data for data, one day it is possible that U-Boot will cache platform data for
devices which are regularly de/activated). devices which are regularly de/activated).
h. The device's probe() method is called. This should do anything that h. The device's probe() method is called. This should do anything that

View File

@ -334,7 +334,7 @@ config SPL_OF_LIBFDT
config FDT_FIXUP_PARTITIONS config FDT_FIXUP_PARTITIONS
bool "overwrite MTD partitions in DTS through defined in 'mtdparts'" bool "overwrite MTD partitions in DTS through defined in 'mtdparts'"
depends on OF_LIBFDT depends on OF_LIBFDT
default n depends on CMD_MTDPARTS
help help
Allow overwriting defined partitions in the device tree blob Allow overwriting defined partitions in the device tree blob
using partition info defined in the 'mtdparts' environment using partition info defined in the 'mtdparts' environment

View File

@ -1181,13 +1181,25 @@ int fdtdec_setup_mem_size_base(void)
} }
#if defined(CONFIG_NR_DRAM_BANKS) #if defined(CONFIG_NR_DRAM_BANKS)
static int get_next_memory_node(const void *blob, int startoffset)
{
int mem = -1;
do {
mem = fdt_node_offset_by_prop_value(gd->fdt_blob, mem,
"device_type", "memory", 7);
} while (!fdtdec_get_is_enabled(blob, mem));
return mem;
}
int fdtdec_setup_memory_banksize(void) int fdtdec_setup_memory_banksize(void)
{ {
int bank, ret, mem, reg = 0; int bank, ret, mem, reg = 0;
struct fdt_resource res; struct fdt_resource res;
mem = fdt_node_offset_by_prop_value(gd->fdt_blob, -1, "device_type", mem = get_next_memory_node(gd->fdt_blob, -1);
"memory", 7);
if (mem < 0) { if (mem < 0) {
debug("%s: Missing /memory node\n", __func__); debug("%s: Missing /memory node\n", __func__);
return -EINVAL; return -EINVAL;
@ -1197,9 +1209,7 @@ int fdtdec_setup_memory_banksize(void)
ret = fdt_get_resource(gd->fdt_blob, mem, "reg", reg++, &res); ret = fdt_get_resource(gd->fdt_blob, mem, "reg", reg++, &res);
if (ret == -FDT_ERR_NOTFOUND) { if (ret == -FDT_ERR_NOTFOUND) {
reg = 0; reg = 0;
mem = fdt_node_offset_by_prop_value(gd->fdt_blob, mem, mem = get_next_memory_node(gd->fdt_blob, mem);
"device_type",
"memory", 7);
if (mem == -FDT_ERR_NOTFOUND) if (mem == -FDT_ERR_NOTFOUND)
break; break;

View File

@ -263,7 +263,7 @@ def _ReadAliasFile(fname):
line = line.strip() line = line.strip()
if not line or line.startswith('#'): if not line or line.startswith('#'):
continue continue
words = line.split(' ', 2) words = line.split(None, 2)
if len(words) < 3 or words[0] != 'alias': if len(words) < 3 or words[0] != 'alias':
if not bad_line: if not bad_line:
bad_line = "%s:%d:Invalid line '%s'" % (fname, linenum, bad_line = "%s:%d:Invalid line '%s'" % (fname, linenum,