Add openocd with patch for STM32L4+
This commit is contained in:
parent
633bec4cad
commit
4ce144d67f
|
@ -0,0 +1,45 @@
|
|||
From 829e7d9eaca3f47f32b184e3479c066e05f8554b Mon Sep 17 00:00:00 2001
|
||||
From: Elrond <elrond+openocd.org@samba-tng.org>
|
||||
Date: Mon, 5 Mar 2018 13:20:28 +0100
|
||||
Subject: [PATCH] Add STM32L4+ flash/dev_id
|
||||
|
||||
According to RM0432 chapter 51.6.1 the DBGMCU_IDCODE is
|
||||
0x470.
|
||||
|
||||
Tested on NUCLEO-STM32L4R5ZI with a similiar change to
|
||||
openocd 0.10.0-4 in Debian.
|
||||
|
||||
Signed-off-by: Elrond <elrond+openocd.org@samba-tng.org>
|
||||
Change-Id: I9b57013ef23fa963abfecddb728e4a6fadd1f8a1
|
||||
---
|
||||
src/flash/nor/stm32l4x.c | 7 +++++++
|
||||
1 file changed, 7 insertions(+)
|
||||
|
||||
diff --git a/src/flash/nor/stm32l4x.c b/src/flash/nor/stm32l4x.c
|
||||
index 6a1fa07..dcb7a92 100644
|
||||
--- a/src/flash/nor/stm32l4x.c
|
||||
+++ b/src/flash/nor/stm32l4x.c
|
||||
@@ -618,6 +618,9 @@ static int stm32l4_probe(struct flash_bank *bank)
|
||||
|
||||
/* set max flash size depending on family */
|
||||
switch (device_id & 0xfff) {
|
||||
+ case 0x470:
|
||||
+ max_flash_size_in_kb = 2048;
|
||||
+ break;
|
||||
case 0x461:
|
||||
case 0x415:
|
||||
max_flash_size_in_kb = 1024;
|
||||
@@ -743,6 +746,10 @@ static int get_stm32l4_info(struct flash_bank *bank, char *buf, int buf_size)
|
||||
device_str = "STM32L43x/44x";
|
||||
break;
|
||||
|
||||
+ case 0x470:
|
||||
+ device_str = "STM32L4Rxxx/4Sxxx";
|
||||
+ break;
|
||||
+
|
||||
default:
|
||||
snprintf(buf, buf_size, "Cannot identify target as a STM32L4\n");
|
||||
return ERROR_FAIL;
|
||||
--
|
||||
1.9.1
|
||||
|
|
@ -0,0 +1,44 @@
|
|||
# $Id: PKGBUILD 266875 2017-11-15 14:29:11Z foutrelis $
|
||||
# Maintainer: Sergej Pupykin <arch+pub@sergej.pp.ru>
|
||||
# Contributor: Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
|
||||
# Contributor: Matthias Bauch <matthias.bauch@gmail.com>
|
||||
# Contributor: Laszlo Papp <djszapi2 at gmail com>
|
||||
# Contributor: Samuel Tardieu <sam@rfc1149.net>
|
||||
|
||||
pkgname=openocd
|
||||
pkgver=0.10.0
|
||||
epoch=1
|
||||
pkgrel=2
|
||||
pkgdesc='Debugging, in-system programming and boundary-scan testing for embedded target devices'
|
||||
arch=('x86_64')
|
||||
url='http://openocd.org/'
|
||||
license=('GPL')
|
||||
depends=('libftdi' 'libftdi-compat' 'libusb' 'libusb-compat' 'hidapi')
|
||||
options=(!strip)
|
||||
_features=(amtjtagaccel armjtagew buspirate ftdi gw16012 jlink oocd_trace
|
||||
opendous osbdm parport presto_libftdi remote-bitbang rlink stlink ti-icdi ulink usbprog vsllink
|
||||
aice cmsis-dap dummy jtag_vpi openjtag_ftdi usb-blaster-2 usb_blaster_libftdi)
|
||||
source=("https://downloads.sourceforge.net/sourceforge/$pkgname/$pkgname-${pkgver/_/-}.tar.bz2"
|
||||
'Add-STM32L4-Plus-Dev-ID.patch')
|
||||
sha256sums=('7312e7d680752ac088b8b8f2b5ba3ff0d30e0a78139531847be4b75c101316ae'
|
||||
'a3c4e15d8ee6fa63f668b363a96652db923c7da84fc9ffcf39448e2983da2994')
|
||||
|
||||
prepare() {
|
||||
cd $pkgname-${pkgver/_/-}
|
||||
sed -i 's|ftdi_new();|(void*)12345;|g' configure{,.ac}
|
||||
patch -p1 -i '../Add-STM32L4-Plus-Dev-ID.patch' # doesn't apply yet
|
||||
}
|
||||
|
||||
build() {
|
||||
cd $pkgname-${pkgver/_/-}
|
||||
libtoolize
|
||||
autoreconf
|
||||
./configure --prefix=/usr ${_features[@]/#/--enable-} --disable-werror
|
||||
make
|
||||
}
|
||||
|
||||
package() {
|
||||
cd $pkgname-${pkgver/_/-}
|
||||
make DESTDIR="$pkgdir" install
|
||||
(cd "$pkgdir"/usr/share/openocd/scripts/target && mv 1986*.cfg 1986be1t.cfg)
|
||||
}
|
|
@ -0,0 +1,45 @@
|
|||
From 829e7d9eaca3f47f32b184e3479c066e05f8554b Mon Sep 17 00:00:00 2001
|
||||
From: Elrond <elrond+openocd.org@samba-tng.org>
|
||||
Date: Mon, 5 Mar 2018 13:20:28 +0100
|
||||
Subject: [PATCH] Add STM32L4+ flash/dev_id
|
||||
|
||||
According to RM0432 chapter 51.6.1 the DBGMCU_IDCODE is
|
||||
0x470.
|
||||
|
||||
Tested on NUCLEO-STM32L4R5ZI with a similiar change to
|
||||
openocd 0.10.0-4 in Debian.
|
||||
|
||||
Signed-off-by: Elrond <elrond+openocd.org@samba-tng.org>
|
||||
Change-Id: I9b57013ef23fa963abfecddb728e4a6fadd1f8a1
|
||||
---
|
||||
src/flash/nor/stm32l4x.c | 7 +++++++
|
||||
1 file changed, 7 insertions(+)
|
||||
|
||||
diff --git a/src/flash/nor/stm32l4x.c b/src/flash/nor/stm32l4x.c
|
||||
index 6a1fa07..dcb7a92 100644
|
||||
--- a/src/flash/nor/stm32l4x.c
|
||||
+++ b/src/flash/nor/stm32l4x.c
|
||||
@@ -618,6 +618,9 @@ static int stm32l4_probe(struct flash_bank *bank)
|
||||
|
||||
/* set max flash size depending on family */
|
||||
switch (device_id & 0xfff) {
|
||||
+ case 0x470:
|
||||
+ max_flash_size_in_kb = 2048;
|
||||
+ break;
|
||||
case 0x461:
|
||||
case 0x415:
|
||||
max_flash_size_in_kb = 1024;
|
||||
@@ -743,6 +746,10 @@ static int get_stm32l4_info(struct flash_bank *bank, char *buf, int buf_size)
|
||||
device_str = "STM32L43x/44x";
|
||||
break;
|
||||
|
||||
+ case 0x470:
|
||||
+ device_str = "STM32L4Rxxx/4Sxxx";
|
||||
+ break;
|
||||
+
|
||||
default:
|
||||
snprintf(buf, buf_size, "Cannot identify target as a STM32L4\n");
|
||||
return ERROR_FAIL;
|
||||
--
|
||||
1.9.1
|
||||
|
|
@ -0,0 +1,104 @@
|
|||
# ex: ts=2 sts=2 sw=2 et
|
||||
# Maintainer: yhfudev <yhfudev ta gmail dot com>
|
||||
# Contributor: veox <veox ta wemakethings dot net>
|
||||
# Contributor: Nick Østergaard <oe.nick at gmail dot com>
|
||||
# Contributor: Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
|
||||
# Contributor: Matthias Bauch <matthias.bauch@gmail.com>
|
||||
# Contributor: Laszlo Papp <djszapi2 at gmail com>
|
||||
# Contributor: Samuel Tardieu <sam@rfc1149.net>
|
||||
|
||||
_pkgbase=openocd
|
||||
pkgname=openocd-git
|
||||
pkgver=0.10.0.r523.g2a3b709aa
|
||||
pkgrel=1
|
||||
pkgdesc="Debugging, in-system programming and boundary-scan testing for embedded target devices (git version)"
|
||||
arch=('i686' 'x86_64' 'arm')
|
||||
url="http://openocd.org"
|
||||
license=('GPL')
|
||||
depends=('libftdi' 'libftdi-compat' 'libusb' 'libusb-compat' 'hidapi' )
|
||||
makedepends=('git' 'automake>=1.11' 'autoconf' 'libtool' 'tcl')
|
||||
options=(!strip)
|
||||
provides=('openocd')
|
||||
conflicts=('openocd')
|
||||
|
||||
source=(
|
||||
"${pkgname}::git+http://repo.or.cz/openocd.git"
|
||||
'Add-STM32L4-Plus-Dev-ID.patch'
|
||||
)
|
||||
# "git+http://repo.or.cz/r/git2cl.git"
|
||||
# "git+http://repo.or.cz/r/jimtcl.git"
|
||||
# "git+http://repo.or.cz/r/libjaylink.git"
|
||||
sha256sums=('SKIP'
|
||||
'a3c4e15d8ee6fa63f668b363a96652db923c7da84fc9ffcf39448e2983da2994')
|
||||
|
||||
# Specify desired features and device support here. A list can be
|
||||
# obtained by running ./configure in the source directory.
|
||||
_features=(
|
||||
aice
|
||||
amtjtagaccel
|
||||
armjtagew
|
||||
at91rm9200
|
||||
bcm2835gpio
|
||||
buspirate
|
||||
cmsis-dap
|
||||
dummy
|
||||
ep93xx
|
||||
ftdi
|
||||
gw16012
|
||||
ioutil
|
||||
jlink
|
||||
jtag_vpi
|
||||
legacy-ft2232_libftdi
|
||||
oocd_trace
|
||||
opendous
|
||||
openjtag_ftdi
|
||||
osbdm
|
||||
parport
|
||||
presto_libftdi
|
||||
remote-bitbang
|
||||
rlink
|
||||
stlink
|
||||
sysfsgpio
|
||||
ti-icdi
|
||||
ulink
|
||||
usb-blaster-2
|
||||
usb_blaster_libftdi
|
||||
usbprog
|
||||
vsllink
|
||||
#parport-giveio
|
||||
#zy1000
|
||||
#zy1000-master
|
||||
)
|
||||
|
||||
pkgver() {
|
||||
cd "${srcdir}/${pkgname}"
|
||||
git describe --tags --long | sed -E 's/^v//;s/([^-]*-g)/r\1/;s/-/./g'
|
||||
}
|
||||
|
||||
prepare() {
|
||||
cd "$srcdir/${pkgname}"
|
||||
|
||||
patch -p1 -i '../Add-STM32L4-Plus-Dev-ID.patch'
|
||||
}
|
||||
|
||||
build() {
|
||||
cd "$srcdir/${pkgname}"
|
||||
|
||||
./bootstrap
|
||||
./configure --prefix=/usr \
|
||||
--enable-maintainer-mode \
|
||||
--disable-werror \
|
||||
${_features[@]/#/--enable-}
|
||||
|
||||
#make clean
|
||||
make
|
||||
}
|
||||
|
||||
package() {
|
||||
cd "$srcdir/${pkgname}"
|
||||
make "DESTDIR=${pkgdir}" install
|
||||
rm -rf ${srcdir}/$pkgname-build
|
||||
rm -rf "$pkgdir/usr/share/info/dir"
|
||||
mkdir -p "$pkgdir/usr/lib/udev/rules.d"
|
||||
mv "$pkgdir/usr/share/$_pkgbase/contrib/60-openocd.rules" "$pkgdir/usr/lib/udev/rules.d"
|
||||
}
|
Loading…
Reference in New Issue