Openocd server for cc3200-env
This commit is contained in:
commit
b2133c610c
25
0001-openocd-poll.patch
Normal file
25
0001-openocd-poll.patch
Normal file
@ -0,0 +1,25 @@
|
||||
From eebb3feb1b79dab95153eb56aaf93edea8c6fa93 Mon Sep 17 00:00:00 2001
|
||||
From: Thomas Klaehn <thomas.klaehn@perinet.io>
|
||||
Date: Tue, 15 Oct 2019 09:13:03 +0200
|
||||
Subject: [PATCH 3/3] .
|
||||
|
||||
---
|
||||
src/helper/system.h | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/helper/system.h b/src/helper/system.h
|
||||
index f710cfb5..22ffd295 100644
|
||||
--- a/src/helper/system.h
|
||||
+++ b/src/helper/system.h
|
||||
@@ -57,7 +57,7 @@
|
||||
#include <sys/socket.h>
|
||||
#endif
|
||||
#ifdef HAVE_SYS_POLL_H
|
||||
-#include <sys/poll.h>
|
||||
+#include <poll.h>
|
||||
#endif
|
||||
|
||||
#ifdef __ECOS
|
||||
--
|
||||
2.20.1
|
||||
|
28
Dockerfile
Normal file
28
Dockerfile
Normal file
@ -0,0 +1,28 @@
|
||||
FROM alpine:3.1
|
||||
|
||||
RUN apk update
|
||||
RUN apk add \
|
||||
build-base \
|
||||
git \
|
||||
libtool \
|
||||
libusb-dev \
|
||||
perl \
|
||||
autoconf \
|
||||
automake \
|
||||
texinfo
|
||||
|
||||
RUN git config --global user.email "tkl@blackfinn.de"
|
||||
RUN git config --global user.name "Thomas Klaehn"
|
||||
|
||||
# Openocd
|
||||
COPY 0001-openocd-poll.patch /
|
||||
COPY cc3200.cfg /
|
||||
COPY openocd-cc3200 /bin
|
||||
RUN git clone --single-branch --branch v0.9.0 --depth 1 https://repo.or.cz/openocd.git \
|
||||
&& cd openocd \
|
||||
&& git am /0001-openocd-poll.patch \
|
||||
&& ./bootstrap \
|
||||
&& ./configure \
|
||||
&& make \
|
||||
&& make install
|
||||
|
12
README.md
Normal file
12
README.md
Normal file
@ -0,0 +1,12 @@
|
||||
# CC3200 environment
|
||||
|
||||
## Build
|
||||
|
||||
docker build -t cc3200-env .
|
||||
|
||||
## Run
|
||||
|
||||
### Openocd server
|
||||
|
||||
docker run --privileged -p 3333:3333 cc3200-env openocd-cc3200
|
||||
|
115
cc3200.cfg
Normal file
115
cc3200.cfg
Normal file
@ -0,0 +1,115 @@
|
||||
#
|
||||
# Droidifi OpenOCD config for TI CC3200-LP V3.2
|
||||
#
|
||||
# http://www.droidifi.com
|
||||
#
|
||||
# Copyright Droidifi LLC 2013, 2014 All rights reserved
|
||||
#
|
||||
|
||||
#*****************************************************************************
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
# Redistribution and use in source and binary forms, with or without
|
||||
# modification, are permitted provided that the following conditions
|
||||
# are met:
|
||||
#
|
||||
# Redistributions of source code must retain the above copyright
|
||||
# notice, this list of conditions and the following disclaimer.
|
||||
#
|
||||
# Redistributions in binary form must reproduce the above copyright
|
||||
# notice, this list of conditions and the following disclaimer in the
|
||||
# documentation and/or other materials provided with the
|
||||
# distribution.
|
||||
#
|
||||
# Neither the name of Texas Instruments Incorporated nor the names of
|
||||
# its contributors may be used to endorse or promote products derived
|
||||
# from this software without specific prior written permission.
|
||||
#
|
||||
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
#
|
||||
#*****************************************************************************
|
||||
|
||||
interface ftdi
|
||||
ftdi_vid_pid 0x0451 0xc32a
|
||||
adapter_khz 1000
|
||||
set _ENDIAN little
|
||||
ftdi_layout_init 0x00a8 0x00eb
|
||||
ftdi_layout_signal nSRST -noe 0x0020
|
||||
ftdi_layout_signal SWD_EN -ndata 0x0080
|
||||
ftdi_layout_signal SWDIO_OE -data 0x0008
|
||||
|
||||
if { [info exists CHIPNAME] } {
|
||||
set _CHIPNAME $CHIPNAME
|
||||
} else {
|
||||
set _CHIPNAME cc3200
|
||||
}
|
||||
|
||||
source [find target/icepick.cfg]
|
||||
|
||||
if { [info exists DAP_TAPID] } {
|
||||
set _DAP_TAPID $DAP_TAPID
|
||||
} else {
|
||||
set _DAP_TAPID 0x0b97c02f
|
||||
}
|
||||
|
||||
jtag newtap $_CHIPNAME dap -irlen 4 -ircapture 0x1 -irmask 0xf -expected-id $_DAP_TAPID -disable
|
||||
|
||||
# APP m4
|
||||
jtag configure $_CHIPNAME.dap -event tap-enable "icepick_c_tapenable $_CHIPNAME.jrc 0"
|
||||
|
||||
# ICEpick-C (JTAG route controller)
|
||||
if { [info exists JRC_TAPID] } {
|
||||
set _JRC_TAPID $JRC_TAPID
|
||||
} else {
|
||||
set _JRC_TAPID $_DAP_TAPID
|
||||
}
|
||||
|
||||
jtag newtap $_CHIPNAME jrc -irlen 6 -ircapture 0x1 -irmask 0x3f -expected-id $_JRC_TAPID -ignore-version
|
||||
|
||||
# jtag configure auto0.jrc -event post-reset "runtest 100"
|
||||
jtag configure $_CHIPNAME.jrc -event setup "jtag tapenable $_CHIPNAME.dap"
|
||||
jtag configure $_CHIPNAME.jrc -event post-reset "runtest 100"
|
||||
|
||||
set _TARGETNAME $_CHIPNAME.cpu
|
||||
|
||||
target create $_CHIPNAME.cpu cortex_m -endian little -chain-position $_CHIPNAME.dap
|
||||
$_CHIPNAME.cpu configure -work-area-phys 0x20000000 -work-area-size 0x30000 -work-area-backup 0 -coreid 0
|
||||
|
||||
source [find mem_helper.tcl]
|
||||
|
||||
$_TARGETNAME configure -event gdb-attach {
|
||||
# cc3200_dbginit $_TARGETNAME
|
||||
# cortex_m dbginit
|
||||
halt
|
||||
}
|
||||
|
||||
$_TARGETNAME configure -event "reset-start" { adapter_khz 1000 }
|
||||
$_TARGETNAME configure -event "reset-assert" {
|
||||
|
||||
global _CHIPNAME
|
||||
|
||||
# assert warm system reset through ICEPick
|
||||
icepick_c_wreset $_CHIPNAME.jrc
|
||||
}
|
||||
|
||||
|
||||
# Run this to enable invasive debugging. This is run automatically in the
|
||||
# reset sequence.
|
||||
proc cc3200_dbginit {target} {
|
||||
|
||||
cortex_m dbginit
|
||||
|
||||
}
|
||||
|
4
openocd-cc3200
Executable file
4
openocd-cc3200
Executable file
@ -0,0 +1,4 @@
|
||||
#!/bin/sh
|
||||
|
||||
openocd -f /cc3200.cfg
|
||||
|
Loading…
Reference in New Issue
Block a user