I have tried endlessly to soft reset an XU232, one tile after the other like the application notes and some suggestions on the forum here (for example https://www.xcore.com/viewtopic.php?t=3479). The flash is connected to tile[0] so this was always set to reboot last in order [3],[2],[1],[0].
While trying I have used read_sswitch_reg, write_sswitch_reg_no_ack, read_node_config_reg, write_node_config_reg_no_ack all with the same results.
It would always stall and never get to actually resetting tile[0], only tile 2 and 3 for example.
I finally made it work by only resetting tile[2] and after that tile [0] with this:
Code: Select all
read_node_config_reg (tile[2] , 0x6, pllVal);
write_node_config_reg_no_ack (tile[2] , 0x6, pllVal & 0x7FFFFFFF);
read_node_config_reg (tile[0] , 0x6, pllVal);
write_node_config_reg_no_ack (tile[0] , 0x6, pllVal & 0x7FFFFFFF);
The mix of "nodes" and "tiles" in the text confuses me and I'm not sure if I did it correctly now.