gnu: openocd: Update to 0.10.0
* gnu/packages/embedded.scm (openocd): Update to 0.10.0. [arguments] <configure-flags>: Add "--enable-sysfsgpio" flag. Remove "--enable-oocd_trace" flag. [arguments] <phases>: Add phase "change-udev-group". Add phase "install-udev-rules". * gnu/packages/patches/openocd-nrf52.patch: Modify to apply on 0.10.0. Signed-off-by: Ludovic Courtès <ludo@gnu.org>master
parent
2da8865a70
commit
ea1aa4525e
|
@ -355,59 +355,66 @@ language.")
|
|||
(license license:bsd-2)))
|
||||
|
||||
(define-public openocd
|
||||
;; FIXME: Use tarball release after nrf52 patch is merged.
|
||||
(let ((commit "674141e8a7a6413cb803d90c2a20150260015f81")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "openocd")
|
||||
(version (string-append "0.9.0-" revision "."
|
||||
(string-take commit 7)))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://git.code.sf.net/p/openocd/code.git")
|
||||
(commit commit)))
|
||||
(sha256
|
||||
(base32
|
||||
"1i86jp0wawq78d73z8hp7q1pn7lmlvhjjr19f7299h4w40a5jf8j"))
|
||||
(file-name (string-append name "-" version "-checkout"))
|
||||
(patches
|
||||
(search-patches "openocd-nrf52.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("autoconf" ,autoconf)
|
||||
("automake" ,automake)
|
||||
("libtool" ,libtool)
|
||||
("pkg-config" ,pkg-config)))
|
||||
(inputs
|
||||
`(("hidapi" ,hidapi)
|
||||
("jimtcl" ,jimtcl)
|
||||
("libftdi" ,libftdi)
|
||||
("libjaylink" ,libjaylink)
|
||||
("libusb-compat" ,libusb-compat)))
|
||||
(arguments
|
||||
'(#:configure-flags
|
||||
(append (list "--disable-werror"
|
||||
"--disable-internal-jimtcl"
|
||||
"--disable-internal-libjaylink")
|
||||
(map (lambda (programmer)
|
||||
(string-append "--enable-" programmer))
|
||||
'("amtjtagaccel" "armjtagew" "buspirate" "ftdi"
|
||||
"gw16012" "jlink" "oocd_trace" "opendous" "osbdm"
|
||||
"parport" "aice" "cmsis-dap" "dummy" "jtag_vpi"
|
||||
"remote-bitbang" "rlink" "stlink" "ti-icdi" "ulink"
|
||||
"usbprog" "vsllink" "usb-blaster-2" "usb_blaster"
|
||||
"presto" "openjtag")))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'autoreconf
|
||||
(lambda _
|
||||
(zero? (system* "autoreconf" "-vfi")))))))
|
||||
(home-page "http://openocd.org")
|
||||
(synopsis "On-Chip Debugger")
|
||||
(description "OpenOCD provides on-chip programming and debugging support
|
||||
(package
|
||||
(name "openocd")
|
||||
(version "0.10.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://sourceforge/openocd/openocd/"
|
||||
version "/openocd-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"09p57y3c2spqx4vjjlz1ljm1lcd0j9q8g76ywxqgn3yc34wv18zd"))
|
||||
;; FIXME: Remove after nrf52 patch is merged.
|
||||
(patches
|
||||
(search-patches "openocd-nrf52.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("autoconf" ,autoconf)
|
||||
("automake" ,automake)
|
||||
("libtool" ,libtool)
|
||||
("pkg-config" ,pkg-config)))
|
||||
(inputs
|
||||
`(("hidapi" ,hidapi)
|
||||
("jimtcl" ,jimtcl)
|
||||
("libftdi" ,libftdi)
|
||||
("libjaylink" ,libjaylink)
|
||||
("libusb-compat" ,libusb-compat)))
|
||||
(arguments
|
||||
'(#:configure-flags
|
||||
(append (list "--disable-werror"
|
||||
"--enable-sysfsgpio"
|
||||
"--disable-internal-jimtcl"
|
||||
"--disable-internal-libjaylink")
|
||||
(map (lambda (programmer)
|
||||
(string-append "--enable-" programmer))
|
||||
'("amtjtagaccel" "armjtagew" "buspirate" "ftdi"
|
||||
"gw16012" "jlink" "opendous" "osbdm"
|
||||
"parport" "aice" "cmsis-dap" "dummy" "jtag_vpi"
|
||||
"remote-bitbang" "rlink" "stlink" "ti-icdi" "ulink"
|
||||
"usbprog" "vsllink" "usb-blaster-2" "usb_blaster"
|
||||
"presto" "openjtag")))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'configure 'autoreconf
|
||||
(lambda _
|
||||
(zero? (system* "autoreconf" "-vfi"))))
|
||||
(add-after 'autoreconf 'change-udev-group
|
||||
(lambda _
|
||||
(substitute* "contrib/60-openocd.rules"
|
||||
(("plugdev") "dialout"))
|
||||
#t))
|
||||
(add-after 'install 'install-udev-rules
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(install-file "contrib/60-openocd.rules"
|
||||
(string-append
|
||||
(assoc-ref outputs "out")
|
||||
"/lib/udev/rules.d/")))))))
|
||||
(home-page "http://openocd.org")
|
||||
(synopsis "On-Chip Debugger")
|
||||
(description "OpenOCD provides on-chip programming and debugging support
|
||||
with a layered architecture of JTAG interface and TAP support.")
|
||||
(license license:gpl2+))))
|
||||
(license license:gpl2+)))
|
||||
|
||||
;; The commits for all propeller tools are the latest versions as published
|
||||
;; here: https://github.com/dbetz/propeller-gcc
|
||||
|
|
|
@ -21,19 +21,19 @@ Signed-off-by: Michael Dietz <mjdietzx@gmail.com>
|
|||
---
|
||||
|
||||
diff --git a/src/flash/nor/Makefile.am b/src/flash/nor/Makefile.am
|
||||
index c167e8f..b6a2be3 100644
|
||||
index 727e4f2..839667c 100644
|
||||
--- a/src/flash/nor/Makefile.am
|
||||
+++ b/src/flash/nor/Makefile.am
|
||||
@@ -37,6 +37,7 @@ NOR_DRIVERS = \
|
||||
niietcm4.c \
|
||||
non_cfi.c \
|
||||
nrf51.c \
|
||||
+ nrf52.c \
|
||||
numicro.c \
|
||||
ocl.c \
|
||||
pic32mx.c \
|
||||
@@ -36,6 +36,7 @@ NOR_DRIVERS = \
|
||||
%D%/niietcm4.c \
|
||||
%D%/non_cfi.c \
|
||||
%D%/nrf51.c \
|
||||
+ %D%/nrf52.c \
|
||||
%D%/numicro.c \
|
||||
%D%/ocl.c \
|
||||
%D%/pic32mx.c \
|
||||
diff --git a/src/flash/nor/drivers.c b/src/flash/nor/drivers.c
|
||||
index 56a5cb2..3e071bd 100644
|
||||
index 56a5cb2..071273e 100644
|
||||
--- a/src/flash/nor/drivers.c
|
||||
+++ b/src/flash/nor/drivers.c
|
||||
@@ -48,6 +48,7 @@ extern struct flash_driver mdr_flash;
|
||||
|
@ -48,7 +48,7 @@ index 56a5cb2..3e071bd 100644
|
|||
&mrvlqspi_flash,
|
||||
&niietcm4_flash,
|
||||
&nrf51_flash,
|
||||
+ &nrf52_flash,
|
||||
+ &nrf52_flash,
|
||||
&numicro_flash,
|
||||
&ocl_flash,
|
||||
&pic32mx_flash,
|
||||
|
@ -792,47 +792,31 @@ index 0000000..7f2bd35
|
|||
+ .protect_check = nrf52_protect_check,
|
||||
+};
|
||||
diff --git a/tcl/target/nrf52.cfg b/tcl/target/nrf52.cfg
|
||||
index c1cbf1a..a2567ff 100644
|
||||
index c1cbf1a..41a22ff 100644
|
||||
--- a/tcl/target/nrf52.cfg
|
||||
+++ b/tcl/target/nrf52.cfg
|
||||
@@ -5,15 +5,22 @@
|
||||
source [find target/swj-dp.tcl]
|
||||
@@ -10,6 +10,13 @@ if { [info exists CHIPNAME] } {
|
||||
set _CHIPNAME nrf52
|
||||
}
|
||||
|
||||
if { [info exists CHIPNAME] } {
|
||||
- set _CHIPNAME $CHIPNAME
|
||||
+ set _CHIPNAME $CHIPNAME
|
||||
} else {
|
||||
- set _CHIPNAME nrf52
|
||||
+ set _CHIPNAME nrf52
|
||||
+}
|
||||
+
|
||||
+# Work-area is a space in RAM used for flash programming, by default use 16kB.
|
||||
+if { [info exists WORKAREASIZE] } {
|
||||
+ set _WORKAREASIZE $WORKAREASIZE
|
||||
+ set _WORKAREASIZE $WORKAREASIZE
|
||||
+} else {
|
||||
+ set _WORKAREASIZE 0x4000
|
||||
}
|
||||
|
||||
+ set _WORKAREASIZE 0x4000
|
||||
+}
|
||||
+
|
||||
if { [info exists CPUTAPID] } {
|
||||
- set _CPUTAPID $CPUTAPID
|
||||
+ set _CPUTAPID $CPUTAPID
|
||||
set _CPUTAPID $CPUTAPID
|
||||
} else {
|
||||
- set _CPUTAPID 0x2ba01477
|
||||
+ set _CPUTAPID 0x2ba01477
|
||||
}
|
||||
|
||||
swj_newdap $_CHIPNAME cpu -expected-id $_CPUTAPID
|
||||
@@ -21,8 +28,15 @@ swj_newdap $_CHIPNAME cpu -expected-id $_CPUTAPID
|
||||
set _TARGETNAME $_CHIPNAME.cpu
|
||||
@@ -22,7 +29,15 @@ set _TARGETNAME $_CHIPNAME.cpu
|
||||
target create $_TARGETNAME cortex_m -chain-position $_TARGETNAME
|
||||
|
||||
-adapter_khz 10000
|
||||
adapter_khz 10000
|
||||
+$_TARGETNAME configure -work-area-phys 0x20000000 -work-area-size $_WORKAREASIZE -work-area-backup 0
|
||||
|
||||
-if { ![using_hla] } {
|
||||
- cortex_m reset_config sysresetreq
|
||||
+if {![using_hla]} {
|
||||
+ cortex_m reset_config sysresetreq
|
||||
if { ![using_hla] } {
|
||||
cortex_m reset_config sysresetreq
|
||||
}
|
||||
+
|
||||
+flash bank $_CHIPNAME.flash nrf52 0x00000000 0 1 1 $_TARGETNAME
|
||||
|
|
Reference in New Issue