4c0502c5db24339329faa29672b4fc0a4c3ff172
[fw/openocd] / tcl / cpld / xilinx-xc7.cfg
1 # xilinx series 7 (artix, kintex, virtex)
2 # http://www.xilinx.com/support/documentation/user_guides/ug470_7Series_Config.pdf
3
4 if { [info exists CHIPNAME] } {
5         set _CHIPNAME $CHIPNAME
6 } else {
7         set _CHIPNAME xc7
8 }
9
10 # the 4 top bits (28:31) are the die stepping/revisions. ignore it.
11 jtag newtap $_CHIPNAME tap -irlen 6 -ignore-version \
12         -expected-id 0x03622093 \
13         -expected-id 0x03620093 \
14         -expected-id 0x037C4093 \
15         -expected-id 0x0362F093 \
16         -expected-id 0x037C8093 \
17         -expected-id 0x037C7093 \
18         -expected-id 0x037C3093 \
19         -expected-id 0x0362E093 \
20         -expected-id 0x037C2093 \
21         -expected-id 0x0362D093 \
22         -expected-id 0x0362C093 \
23         -expected-id 0x03632093 \
24         -expected-id 0x03631093 \
25         -expected-id 0x03636093 \
26         -expected-id 0x03647093 \
27         -expected-id 0x0364C093 \
28         -expected-id 0x03651093 \
29         -expected-id 0x03747093 \
30         -expected-id 0x03656093 \
31         -expected-id 0x03752093 \
32         -expected-id 0x03751093 \
33         -expected-id 0x03671093 \
34         -expected-id 0x036B3093 \
35         -expected-id 0x036B7093 \
36         -expected-id 0x036BB093 \
37         -expected-id 0x036BF093 \
38         -expected-id 0x03667093 \
39         -expected-id 0x03682093 \
40         -expected-id 0x03687093 \
41         -expected-id 0x03692093 \
42         -expected-id 0x03691093 \
43         -expected-id 0x03696093 \
44         -expected-id 0x036D5093 \
45         -expected-id 0x036D9093 \
46         -expected-id 0x036DB093
47
48 pld device virtex2 $_CHIPNAME.tap 1
49
50 set XC7_JSHUTDOWN 0x0d
51 set XC7_JPROGRAM 0x0b
52 set XC7_JSTART 0x0c
53 set XC7_BYPASS 0x3f
54
55 proc xc7_program {tap} {
56         global XC7_JSHUTDOWN XC7_JPROGRAM XC7_JSTART XC7_BYPASS
57         irscan $tap $XC7_JSHUTDOWN
58         irscan $tap $XC7_JPROGRAM
59         runtest 60000
60         #JSTART prevents this from working...
61         #irscan $tap $XC7_JSTART
62         runtest 2000
63         irscan $tap $XC7_BYPASS
64         runtest 2000
65 }