zy1000 rev C work
git-svn-id: svn://svn.berlios.de/openocd/trunk@2405 b42882b7-edfa-0310-969c-e2dbd0fdcd60
This commit is contained in:
parent
37b15fb2c4
commit
92db0c58b0
|
@ -283,6 +283,14 @@ static int jim_zy1000_version(Jim_Interp *interp, int argc, Jim_Obj *const *argv
|
||||||
{
|
{
|
||||||
version_str = ZYLIN_DATE;
|
version_str = ZYLIN_DATE;
|
||||||
}
|
}
|
||||||
|
else if (strcmp("pcb", str) == 0)
|
||||||
|
{
|
||||||
|
#ifdef CYGPKG_HAL_NIOS2
|
||||||
|
version_str="c";
|
||||||
|
#else
|
||||||
|
version_str="b";
|
||||||
|
#endif
|
||||||
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
return JIM_ERR;
|
return JIM_ERR;
|
||||||
|
@ -295,6 +303,37 @@ static int jim_zy1000_version(Jim_Interp *interp, int argc, Jim_Obj *const *argv
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef CYGPKG_HAL_NIOS2
|
||||||
|
static int jim_zy1000_writefirmware(Jim_Interp *interp, int argc, Jim_Obj *const *argv)
|
||||||
|
{
|
||||||
|
if (argc != 2)
|
||||||
|
return JIM_ERR;
|
||||||
|
|
||||||
|
int length;
|
||||||
|
int stat;
|
||||||
|
const char *str = Jim_GetString(argv[1], &length);
|
||||||
|
|
||||||
|
/* BUG!!!! skip header! */
|
||||||
|
void *firmware_address=0x4000000;
|
||||||
|
int firmware_length=0x100000;
|
||||||
|
|
||||||
|
if (length>firmware_length)
|
||||||
|
return JIM_ERR;
|
||||||
|
|
||||||
|
void *err_addr;
|
||||||
|
|
||||||
|
if ((stat = flash_erase((void *)firmware_address, firmware_length, (void **)&err_addr)) != 0)
|
||||||
|
{
|
||||||
|
return JIM_ERR;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ((stat = flash_program(firmware_address, str, length, (void **)&err_addr)) != 0)
|
||||||
|
return JIM_ERR;
|
||||||
|
|
||||||
|
return JIM_OK;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
static int
|
static int
|
||||||
zylinjtag_Jim_Command_powerstatus(Jim_Interp *interp,
|
zylinjtag_Jim_Command_powerstatus(Jim_Interp *interp,
|
||||||
int argc,
|
int argc,
|
||||||
|
@ -324,6 +363,11 @@ int zy1000_register_commands(struct command_context_s *cmd_ctx)
|
||||||
|
|
||||||
Jim_CreateCommand(interp, "powerstatus", zylinjtag_Jim_Command_powerstatus, NULL, NULL);
|
Jim_CreateCommand(interp, "powerstatus", zylinjtag_Jim_Command_powerstatus, NULL, NULL);
|
||||||
|
|
||||||
|
#ifdef CYGPKG_HAL_NIOS2
|
||||||
|
Jim_CreateCommand(interp, "updatezy1000firmware", jim_zy1000_writefirmware, NULL, NULL);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
return ERROR_OK;
|
return ERROR_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue