jtagspi/pld: add support from xilinx driver
Provide jtagspi with information to use jtagspi for programming spi-flash devices on xilinx devices using a proxy bitstream. Change-Id: I68000d71de25118ed8a8603e544cff1dc69bd9ba Signed-off-by: Daniel Anselmi <danselmi@gmx.ch> Reviewed-on: https://review.openocd.org/c/openocd/+/7836 Tested-by: jenkins Reviewed-by: Antonio Borneo <borneo.antonio@gmail.com>
This commit is contained in:
parent
b2a22943e1
commit
2d4fd58fca
|
@ -326,6 +326,21 @@ static int xilinx_get_ipdbg_hub(int user_num, struct pld_device *pld_device, str
|
|||
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))
|
||||
|
@ -460,4 +475,5 @@ struct pld_driver virtex2_pld = {
|
|||
.pld_create_command = &virtex2_pld_create_command,
|
||||
.load = &virtex2_load,
|
||||
.get_ipdbg_hub = xilinx_get_ipdbg_hub,
|
||||
.get_jtagspi_userircode = xilinx_get_jtagspi_userircode,
|
||||
};
|
||||
|
|
|
@ -0,0 +1,25 @@
|
|||
# SPDX-License-Identifier: GPL-2.0-or-later
|
||||
|
||||
# digilent CMOD S7
|
||||
# https://digilent.com/reference/programmable-logic/cmod-s7/reference-manual
|
||||
|
||||
|
||||
adapter driver ftdi
|
||||
ftdi channel 0
|
||||
ftdi layout_init 0x0008 0x008b
|
||||
ftdi vid_pid 0x0403 0x6010
|
||||
reset_config none
|
||||
transport select jtag
|
||||
|
||||
adapter speed 10000
|
||||
|
||||
source [find cpld/xilinx-xc7.cfg]
|
||||
|
||||
# "ipdbg -start -tap xc7.tap -hub 0x02 -tool 0 -port 5555"
|
||||
#openocd -f board/digilent_cmod_s7.cfg -c "init" -c "pld load xc7.pld shared_folder/cmod_s7_fast.bit"
|
||||
|
||||
set JTAGSPI_CHAIN_ID xc7.pld
|
||||
source [find cpld/jtagspi.cfg]
|
||||
|
||||
#jtagspi_init xc7.pld "shared_folder/bscan_spi_xc7s25.bit" 0xab
|
||||
#jtagspi_program shared_folder/cmod_s7_fast.bit 0
|
Loading…
Reference in New Issue