return retval;
}
-COMMAND_HANDLER(virtex2_handle_program_command)
+COMMAND_HANDLER(virtex2_handle_refresh_command)
{
struct pld_device *device;
return ERROR_OK;
}
+static int xilinx_get_jtagspi_userircode(struct pld_device *pld_device, unsigned int *ir)
+{
+ if (!pld_device || !pld_device->driver_priv)
+ return ERROR_FAIL;
+ struct virtex2_pld_device *pld_device_info = pld_device->driver_priv;
+
+ if (pld_device_info->command_set.num_user < 1) {
+ LOG_ERROR("code for command 'select user1' is unknown");
+ return ERROR_FAIL;
+ }
+
+ *ir = pld_device_info->command_set.user[0];
+ return ERROR_OK;
+}
+
COMMAND_HANDLER(virtex2_handle_set_instuction_codes_command)
{
if (CMD_ARGC < 6 || CMD_ARGC > (6 + VIRTEX2_MAX_USER_INSTRUCTIONS))
COMMAND_PARSE_NUMBER(u64, CMD_ARGV[3], instr_codes.jprog_b);
COMMAND_PARSE_NUMBER(u64, CMD_ARGV[4], instr_codes.jstart);
COMMAND_PARSE_NUMBER(u64, CMD_ARGV[5], instr_codes.jshutdown);
- instr_codes.bypass = 0xffffffffffffffff;
+ instr_codes.bypass = 0xffffffffffffffffULL;
unsigned int num_user = CMD_ARGC - 6;
for (unsigned int i = 0; i < num_user; ++i)
.help = "set instructions codes used for jtag-hub",
.usage = "pld_name user1 [user2 [user3 [user4]]]",
}, {
- .name = "program",
+ .name = "refresh",
.mode = COMMAND_EXEC,
- .handler = virtex2_handle_program_command,
- .help = "start loading of configuration (refresh)",
+ .handler = virtex2_handle_refresh_command,
+ .help = "start loading of configuration (program)",
.usage = "pld_name",
},
COMMAND_REGISTRATION_DONE
.pld_create_command = &virtex2_pld_create_command,
.load = &virtex2_load,
.get_ipdbg_hub = xilinx_get_ipdbg_hub,
+ .get_jtagspi_userircode = xilinx_get_jtagspi_userircode,
};