set _USER1 0x02 if { [info exists JTAGSPI_IR] } { set _JTAGSPI_IR $JTAGSPI_IR } else { set _JTAGSPI_IR $_USER1 } if { [info exists TARGETNAME] } { set _TARGETNAME $TARGETNAME } else { set _TARGETNAME $_CHIPNAME.proxy } if { [info exists FLASHNAME] } { set _FLASHNAME $FLASHNAME } else { set _FLASHNAME $_CHIPNAME.spi } target create $_TARGETNAME testee -chain-position $_CHIPNAME.tap flash bank $_FLASHNAME jtagspi 0 0 0 0 $_TARGETNAME $_JTAGSPI_IR proc jtagspi_init {chain_id proxy_bit} { # load proxy bitstream $proxy_bit and probe spi flash global _FLASHNAME pld load $chain_id $proxy_bit reset halt flash probe $_FLASHNAME } proc jtagspi_program {bin addr} { # write and verify binary file $bin at offset $addr global _FLASHNAME flash write_image erase $bin $addr flash verify_bank $_FLASHNAME $bin $addr }