]> git.gag.com Git - fw/openocd/blob - tcl/board/ti_beaglebone.cfg
cfg: beaglebone cleanup
[fw/openocd] / tcl / board / ti_beaglebone.cfg
1 interface ft2232
2 #ft2232_device_desc "BeagleBone A"
3 ft2232_layout xds100v2
4 ft2232_vid_pid 0x0403 0xa6d0
5
6 adapter_khz 16000
7
8 reset_config trst_and_srst
9
10
11
12
13 if { [info exists CHIPNAME] } {
14    set _CHIPNAME $CHIPNAME
15 } else {
16    set _CHIPNAME am335x
17 }
18
19 proc icepick_d_tapenable {jrc port} {
20         # select router
21         irscan $jrc 7 -endstate IRPAUSE
22         drscan $jrc 8 0x89 -endstate DRPAUSE
23
24         # set ip control
25         irscan $jrc 2 -endstate IRPAUSE
26         drscan $jrc 32 [expr 0xa0002108 + ($port << 24)] -endstate DRPAUSE
27
28         # for icepick_D
29         irscan $jrc 2 -endstate IRPAUSE
30         drscan $jrc 32 0xe0002008 -endstate DRPAUSE
31
32         irscan $jrc 0x3F -endstate RUN/IDLE
33         runtest 10
34 }
35
36 #
37 # M3 DAP
38 #
39 if { [info exists M3_DAP_TAPID] } {
40         set _M3_DAP_TAPID $M3_DAP_TAPID
41 } else {
42         set _M3_DAP_TAPID 0x4b6b902f
43 }
44 jtag newtap $_CHIPNAME m3_dap -irlen 4 -ircapture 0x1 -irmask 0xf -expected-id $_M3_DAP_TAPID -disable
45 jtag configure $_CHIPNAME.m3_dap -event tap-enable "icepick_d_tapenable $_CHIPNAME.jrc 11"
46
47 #
48 # Main DAP
49 #
50 if { [info exists DAP_TAPID ] } {
51    set _DAP_TAPID $DAP_TAPID
52 } else {
53    set _DAP_TAPID 0x4b6b902f
54 }
55 jtag newtap $_CHIPNAME dap -irlen 4 -ircapture 0x1 -irmask 0xf -expected-id $_DAP_TAPID -disable
56 jtag configure $_CHIPNAME.dap -event tap-enable "icepick_d_tapenable $_CHIPNAME.jrc 12"
57
58 #
59 # ICEpick-D (JTAG route controller)
60 #
61 if { [info exists JRC_TAPID ] } {
62    set _JRC_TAPID $JRC_TAPID
63 } else {
64    set _JRC_TAPID 0x0b94402f
65 }
66 jtag newtap $_CHIPNAME jrc -irlen 6 -ircapture 0x1 -irmask 0x3f -expected-id $_JRC_TAPID
67 jtag configure $_CHIPNAME.jrc -event setup "jtag tapenable $_CHIPNAME.dap"
68 # some TCK tycles are required to activate the DEBUG power domain
69 jtag configure $_CHIPNAME.jrc -event post-reset "runtest 100"
70
71 #
72 # Cortex A8 target
73 #
74 set _TARGETNAME $_CHIPNAME.cpu
75 target create $_TARGETNAME cortex_a8 -chain-position $_CHIPNAME.dap -dbgbase 0x80001000
76
77 # SRAM: 64K at 0x4030.0000; use the first 16K
78 $_TARGETNAME configure -work-area-phys 0x40300000 -work-area-size 0x4000
79
80 $_TARGETNAME configure -event gdb-attach {
81    cortex_a8 dbginit
82    halt
83 }
84