Line 63... |
Line 63... |
uint8_t *mem;
|
uint8_t *mem;
|
char *area_name;
|
char *area_name;
|
} t_block;
|
} t_block;
|
|
|
#define NUM_MEM_BLOCKS (4)
|
#define NUM_MEM_BLOCKS (4)
|
#define NUM_MEM_MAPS (2)
|
#define NUM_MEM_MAPS (3)
|
|
|
/** Definition of a memory map */
|
/** Definition of a memory map */
|
/* FIXME i/o addresses missing, hardcoded */
|
/* FIXME i/o addresses missing, hardcoded */
|
typedef struct s_map {
|
typedef struct s_map {
|
t_block blocks[NUM_MEM_BLOCKS];
|
t_block blocks[NUM_MEM_BLOCKS];
|
Line 95... |
Line 95... |
Make sure the blocks don't overlap or the scheme will fail.
|
Make sure the blocks don't overlap or the scheme will fail.
|
*/
|
*/
|
|
|
#define MAP_DEFAULT (0)
|
#define MAP_DEFAULT (0)
|
#define MAP_UCLINUX (1)
|
#define MAP_UCLINUX (1)
|
|
#define MAP_SMALL (2)
|
|
|
t_map memory_maps[NUM_MEM_MAPS] = {
|
t_map memory_maps[NUM_MEM_MAPS] = {
|
{/* Experimental memory map (default) */
|
{/* Experimental memory map (default) */
|
{/* Bootstrap BRAM, read only */
|
{/* Bootstrap BRAM, read only */
|
{VECTOR_RESET, 0x00004800, 0xf8000000, 1, NULL, "Boot BRAM"},
|
{VECTOR_RESET, 0x00004800, 0xf8000000, 1, NULL, "Boot BRAM"},
|
Line 119... |
Line 120... |
{0x00000000, 0x00400000, 0xf8000000, 0, NULL, "XRAM1"},
|
{0x00000000, 0x00400000, 0xf8000000, 0, NULL, "XRAM1"},
|
/* external flash block */
|
/* external flash block */
|
{0xb0000000, 0x00100000, 0xf8000000, 0, NULL, "Flash"},
|
{0xb0000000, 0x00100000, 0xf8000000, 0, NULL, "Flash"},
|
}
|
}
|
},
|
},
|
|
|
|
{/* Experimental memory map with small XRAM */
|
|
{/* Bootstrap BRAM, read only */
|
|
{VECTOR_RESET, 0x00004800, 0xf8000000, 1, NULL, "Boot BRAM"},
|
|
/* main external ram block */
|
|
{0x00000000, 0x00001000, 0xf8000000, 0, NULL, "XRAM0"},
|
|
/* main external ram block */
|
|
{0x80000000, 0x00001000, 0xf8000000, 0, NULL, "XRAM1"},
|
|
/* external flash block */
|
|
{0xb0000000, 0x00040000, 0xf8000000, 0, NULL, "Flash"},
|
|
}
|
|
},
|
};
|
};
|
|
|
|
|
/*---- end of system parameters ----------------------------------------------*/
|
/*---- end of system parameters ----------------------------------------------*/
|
|
|
Line 1478... |
Line 1491... |
else if(strcmp(argv[i],"--uclinux")==0){
|
else if(strcmp(argv[i],"--uclinux")==0){
|
args->memory_map = MAP_UCLINUX;
|
args->memory_map = MAP_UCLINUX;
|
/* FIXME selecting uClinux enables unaligned L/S emulation */
|
/* FIXME selecting uClinux enables unaligned L/S emulation */
|
args->do_unaligned = 1;
|
args->do_unaligned = 1;
|
}
|
}
|
|
else if(strcmp(argv[i],"--small")==0){
|
|
args->memory_map = MAP_SMALL;
|
|
}
|
else if(strcmp(argv[i],"--unaligned")==0){
|
else if(strcmp(argv[i],"--unaligned")==0){
|
args->do_unaligned = 1;
|
args->do_unaligned = 1;
|
}
|
}
|
else if(strcmp(argv[i],"--noprompt")==0){
|
else if(strcmp(argv[i],"--noprompt")==0){
|
args->no_prompt = 1;
|
args->no_prompt = 1;
|