mirror of
				https://github.com/smaeul/u-boot.git
				synced 2025-11-04 05:50:17 +00:00 
			
		
		
		
	Merge git://git.denx.de/u-boot-cfi-flash
This commit is contained in:
		
						commit
						282f15804b
					
				@ -2461,27 +2461,28 @@ unsigned long flash_init(void)
 | 
			
		||||
#ifdef CONFIG_CFI_FLASH /* for driver model */
 | 
			
		||||
static int cfi_flash_probe(struct udevice *dev)
 | 
			
		||||
{
 | 
			
		||||
	void *blob = (void *)gd->fdt_blob;
 | 
			
		||||
	int node = dev_of_offset(dev);
 | 
			
		||||
	const fdt32_t *cell;
 | 
			
		||||
	phys_addr_t addr;
 | 
			
		||||
	int parent, addrc, sizec;
 | 
			
		||||
	int addrc, sizec;
 | 
			
		||||
	int len, idx;
 | 
			
		||||
 | 
			
		||||
	parent = fdt_parent_offset(blob, node);
 | 
			
		||||
	fdt_support_default_count_cells(blob, parent, &addrc, &sizec);
 | 
			
		||||
	/* decode regs, there may be multiple reg tuples. */
 | 
			
		||||
	cell = fdt_getprop(blob, node, "reg", &len);
 | 
			
		||||
	addrc = dev_read_addr_cells(dev);
 | 
			
		||||
	sizec = dev_read_size_cells(dev);
 | 
			
		||||
 | 
			
		||||
	/* decode regs; there may be multiple reg tuples. */
 | 
			
		||||
	cell = dev_read_prop(dev, "reg", &len);
 | 
			
		||||
	if (!cell)
 | 
			
		||||
		return -ENOENT;
 | 
			
		||||
	idx = 0;
 | 
			
		||||
	len /= sizeof(fdt32_t);
 | 
			
		||||
	while (idx < len) {
 | 
			
		||||
		addr = fdt_translate_address((void *)blob,
 | 
			
		||||
					     node, cell + idx);
 | 
			
		||||
		phys_addr_t addr;
 | 
			
		||||
 | 
			
		||||
		addr = dev_translate_address(dev, cell + idx);
 | 
			
		||||
 | 
			
		||||
		flash_info[cfi_flash_num_flash_banks].dev = dev;
 | 
			
		||||
		flash_info[cfi_flash_num_flash_banks].base = addr;
 | 
			
		||||
		cfi_flash_num_flash_banks++;
 | 
			
		||||
 | 
			
		||||
		idx += addrc + sizec;
 | 
			
		||||
	}
 | 
			
		||||
	gd->bd->bi_flashstart = flash_info[0].base;
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user