view loadtools/flash.h @ 182:13a0348ffce4

rvinterf/etm: checkpointing not-yet-compilable code
author Michael Spacefalcon <msokolov@ivan.Harhan.ORG>
date Sun, 24 Nov 2013 06:59:09 +0000
parents 278052b6afda
children 99c234bf6a9b
line wrap: on
line source

/* this header file contains definitions for fc-loadtool flash support */

/*
 * The following structures represent an "abstract"
 * description of flash devices.
 *
 * A "region" is a consecutive group of erase units of the same size.
 */

struct flash_region_desc {
	uint32_t	sector_size;
	unsigned	nsectors;
};

struct flash_bank_desc {
	struct flash_region_desc	*regions;
	uint32_t			prog_base_mask;
};

struct flash_device_desc {
	char			*name;
	struct flash_bank_desc	*bank_desc;
	unsigned		nbanks;
};

/* the following structures describe flash banks as accessible to us */

struct sector_info {
	uint32_t	start;
	uint32_t	size;
};

struct flash_bank_info {
	uint32_t		base_addr;
	uint32_t		total_size;
	struct flash_bank_desc	*bank_desc;
	struct sector_info	*sectors;
	unsigned		nsectors;
};