mailarchive of the ptxdist mailing list
 help / color / mirror / Atom feed
From: Andreas Pretzsch <apr@cn-eng.de>
To: ptxdist@pengutronix.de
Subject: Re: [ptxdist] [PATCH] openocd: new package for openocd-0.8.0 (host, target)
Date: Mon, 29 Sep 2014 19:43:36 +0200	[thread overview]
Message-ID: <1412012616.18554.57.camel@ws-apr.office.loc> (raw)
In-Reply-To: <1412010731-18154-1-git-send-email-apr@cn-eng.de>

A few comments on this, both generic here and specific inline (sorry for
full quote, more readable in this case).

First, as combined patch host+target due to the shared patches.

Second, the options mimic the ./configure options from OpenOCD, not only
in wording, but also in sequence. To ease maintenance, I refrained
reordering them.


On Mo, 2014-09-29 at 19:12 +0200, Andreas Pretzsch wrote:
> Signed-off-by: Andreas Pretzsch <apr@cn-eng.de>
> ---
>  ...c-correct-test-for-USB_BLASTER_DRIVER-AM-.patch |  33 ++++
>  ...e-correct-test-for-USB_BLASTER_DRIVER-AM-.patch |  20 +++
>  patches/openocd-0.8.0/series                       |   4 +
>  rules/host-openocd.in                              | 199 +++++++++++++++++++++
>  rules/host-openocd.make                            |  76 ++++++++
>  rules/openocd.in                                   | 199 +++++++++++++++++++++
>  rules/openocd.make                                 |  96 ++++++++++
>  7 files changed, 627 insertions(+)
>  create mode 100644 patches/openocd-0.8.0/0001-configure.ac-correct-test-for-USB_BLASTER_DRIVER-AM-.patch
>  create mode 100644 patches/openocd-0.8.0/0002-configure-correct-test-for-USB_BLASTER_DRIVER-AM-.patch
>  create mode 100644 patches/openocd-0.8.0/series
>  create mode 100644 rules/host-openocd.in
>  create mode 100644 rules/host-openocd.make
>  create mode 100644 rules/openocd.in
>  create mode 100644 rules/openocd.make
> 
> diff --git a/patches/openocd-0.8.0/0001-configure.ac-correct-test-for-USB_BLASTER_DRIVER-AM-.patch b/patches/openocd-0.8.0/0001-configure.ac-correct-test-for-USB_BLASTER_DRIVER-AM-.patch
> new file mode 100644
> index 0000000..a7c65b7
> --- /dev/null
> +++ b/patches/openocd-0.8.0/0001-configure.ac-correct-test-for-USB_BLASTER_DRIVER-AM-.patch
> @@ -0,0 +1,33 @@
> +From 930e41a2921b8c2905690153514099c8abf05828 Mon Sep 17 00:00:00 2001
> +From: Paul Fertser <fercerpav@gmail.com>
> +Date: Sat, 31 May 2014 08:19:51 +0400
> +Subject: [PATCH] configure.ac: correct test for USB_BLASTER_DRIVER AM symbol
> +
> +Blaster II should depend on the corresponding symbol, not on libusb-1
> +presence.
> +
> +Change-Id: I3d27a1005a78fe81042cb7b515618604612c3ece
> +Signed-off-by: Paul Fertser <fercerpav@gmail.com>
> +Reviewed-on: http://openocd.zylin.com/2159
> +Tested-by: jenkins
> +Reviewed-by: Andreas Fritiofson <andreas.fritiofson@gmail.com>
> +---
> + configure.ac | 2 +-
> + 1 file changed, 1 insertion(+), 1 deletion(-)
> +
> +diff --git a/configure.ac b/configure.ac
> +index 1b4870e..9943beb 100644
> +--- a/configure.ac
> ++++ b/configure.ac
> +@@ -1174,7 +1174,7 @@ AM_CONDITIONAL([FT2232_DRIVER], [test $build_ft2232_ftd2xx = yes -o $build_ft223
> + AM_CONDITIONAL([USB_BLASTER_LIBFTDI], [test $build_usb_blaster_libftdi = yes])
> + AM_CONDITIONAL([USB_BLASTER_FTD2XX], [test $build_usb_blaster_ftd2xx = yes])
> + AM_CONDITIONAL([JTAG_VPI], [test $build_jtag_vpi = yes -o $build_jtag_vpi = yes])
> +-AM_CONDITIONAL([USB_BLASTER_DRIVER], [test $build_usb_blaster_ftd2xx = yes -o $build_usb_blaster_libftdi = yes -o $use_libusb1 = yes])
> ++AM_CONDITIONAL([USB_BLASTER_DRIVER], [test $build_usb_blaster_ftd2xx = yes -o $build_usb_blaster_libftdi = yes -o $enable_usb_blaster_2 != no])
> + AM_CONDITIONAL([AMTJTAGACCEL], [test $build_amtjtagaccel = yes])
> + AM_CONDITIONAL([GW16012], [test $build_gw16012 = yes])
> + AM_CONDITIONAL([PRESTO_LIBFTDI], [test $build_presto_libftdi = yes])
> +-- 
> +2.1.0
> +
> diff --git a/patches/openocd-0.8.0/0002-configure-correct-test-for-USB_BLASTER_DRIVER-AM-.patch b/patches/openocd-0.8.0/0002-configure-correct-test-for-USB_BLASTER_DRIVER-AM-.patch
> new file mode 100644
> index 0000000..e8c4957
> --- /dev/null
> +++ b/patches/openocd-0.8.0/0002-configure-correct-test-for-USB_BLASTER_DRIVER-AM-.patch
> @@ -0,0 +1,20 @@
> +merge in changes to configure.ac introduced by
> +	0001-configure.ac-correct-test-for-USB_BLASTER_DRIVER-AM-.patch
> +into "configure"
> +---
> + configure |    2 +-
> + 1 file changed, 1 insertion(+), 1 deletion(-)
> +
> +Index: b/configure
> +===================================================================
> +--- a/configure
> ++++ b/configure
> +@@ -15806,7 +15806,7 @@
> +   JTAG_VPI_FALSE=
> + fi
> + 
> +- if test $build_usb_blaster_ftd2xx = yes -o $build_usb_blaster_libftdi = yes -o $use_libusb1 = yes; then
> ++ if test $build_usb_blaster_ftd2xx = yes -o $build_usb_blaster_libftdi = yes -o $enable_usb_blaster_2 != no; then
> +   USB_BLASTER_DRIVER_TRUE=
> +   USB_BLASTER_DRIVER_FALSE='#'
> + else
> diff --git a/patches/openocd-0.8.0/series b/patches/openocd-0.8.0/series
> new file mode 100644
> index 0000000..1860de5
> --- /dev/null
> +++ b/patches/openocd-0.8.0/series
> @@ -0,0 +1,4 @@
> +# keep 0001 disabled, as changing configure.ac will trigger autotools
> +# invocation. The changes from 0001 are done by 0002 in "configure".
> +# 0001-configure.ac-correct-test-for-USB_BLASTER_DRIVER-AM-.patch
> +0002-configure-correct-test-for-USB_BLASTER_DRIVER-AM-.patch
> diff --git a/rules/host-openocd.in b/rules/host-openocd.in
> new file mode 100644
> index 0000000..d8c4e7e
> --- /dev/null
> +++ b/rules/host-openocd.in
> @@ -0,0 +1,199 @@
> +## SECTION=hosttools
> +
> +menuconfig HOST_OPENOCD
> +	tristate
> +	prompt "OpenOCD                       "
> +
> +	# libusb-1.x
> +	select HOST_LIBUSB	if HOST_OPENOCD_FTDI || HOST_OPENOCD_STLINK || HOST_OPENOCD_TI_ICDI || HOST_OPENOCD_ULINK || HOST_OPENOCD_USB_BLASTER_2
> +	# libusb-1.x or libusb-0.1
> +	select HOST_LIBUSB	if HOST_OPENOCD_JLINK || HOST_OPENOCD_OSBDM || HOST_OPENOCD_OPENDOUS || HOST_OPENOCD_AICE
> +	# libusb-0.1 ; no HOST_LIBUSB_COMPAT, so select HOST_LIBUSB and hope for the best
> +	select HOST_LIBUSB	if HOST_OPENOCD_VSLLINK || HOST_OPENOCD_USBPROG || HOST_OPENOCD_RLINK || HOST_OPENOCD_ARMJTAGEW
> +	# libhidapi ; currently no package in ptxdist, so disable it
> +	#select HOST_HIDAPI	if HOST_OPENOCD_CMSIS_DAP
> +	# libftdi1 or libftdi, with libftdi1 preferred ; currently no package in ptxdist, so disable it
> +	#select HOST_LIBFTDI1	if HOST_OPENOCD_USB_BLASTER_LIBFTDI || HOST_OPENOCD_PRESTO_LIBFTDI || HOST_OPENOCD_OPENJTAG_FTDI

Both not perfect, but matches the current state. So I kept them given
the situation changes some day.

> +
> +	help
> +	  The Open On-Chip Debugger (OpenOCD) provides debugging, in-system
> +	  programming and boundary-scan testing for embedded target devices.
> +	  It supports JTAG and SWD (direct or via dongle) to access targets.
> +	  Flash writing is supported for various internal and external types.
> +	  It is controlled with TCL scripts and can act as gdbserver.
> +
> +if HOST_OPENOCD
> +
> +# ===== interface drivers =====
> +
> +config HOST_OPENOCD_DUMMY
> +	bool
> +	prompt "dummy port driver"
> +
> +# --- libusb-1.x based
> +
> +config HOST_OPENOCD_FTDI
> +	bool
> +	prompt "MPSSE mode of FTDI based devices"
> +
> +config HOST_OPENOCD_STLINK
> +	bool
> +	prompt "ST-Link JTAG Programmer"
> +
> +config HOST_OPENOCD_TI_ICDI
> +	bool
> +	prompt "TI ICDI JTAG Programmer"
> +
> +config HOST_OPENOCD_ULINK
> +	bool
> +	prompt "Keil ULINK JTAG Programmer"
> +
> +config HOST_OPENOCD_USB_BLASTER_2
> +	bool
> +	prompt "Altera USB-Blaster II Compatible"
> +
> +# --- libusb-1.x or libusb-0.1 based
> +
> +config HOST_OPENOCD_JLINK
> +	bool
> +	prompt "Segger J-Link JTAG Programmer"
> +
> +config HOST_OPENOCD_OSBDM
> +	bool
> +	prompt "OSBDM (JTAG only) Programmer"
> +
> +config HOST_OPENOCD_OPENDOUS
> +	bool
> +	prompt "eStick/opendous JTAG Programmer"
> +
> +config HOST_OPENOCD_AICE
> +	bool
> +	prompt "Andes JTAG Programmer"
> +
> +# --- libusb-0.1 based
> +
> +config HOST_OPENOCD_VSLLINK
> +	bool
> +	prompt "Versaloon-Link JTAG Programmer"
> +
> +config HOST_OPENOCD_USBPROG
> +	bool
> +	prompt "USBProg JTAG Programmer"
> +
> +config HOST_OPENOCD_RLINK
> +	bool
> +	prompt "Raisonance RLink JTAG Programmer"
> +
> +config HOST_OPENOCD_ARMJTAGEW
> +	bool
> +	prompt "Olimex ARM-JTAG-EW Programmer"
> +
> +# --- hidapi based
> +# currently no package in ptxdist, so disable it
> +#config HOST_OPENOCD_CMSIS_DAP
> +#	bool
> +#	prompt "CMSIS-DAP Compliant Debugger"

same as above

> +
> +# --- various
> +
> +config HOST_OPENOCD_PARPORT
> +	bool
> +	prompt "pc parallel port driver"
> +
> +if HOST_OPENOCD_PARPORT
> +	config HOST_OPENOCD_PARPORT_DISABLE_PARPORT_PPDEV
> +		bool
> +		prompt "Disable use of ppdev (/dev/parportN) (x86 only)"
> +
> +	config HOST_OPENOCD_PARPORT_GIVEIO
> +		bool
> +		depends on HOST_OPENOCD_PARPORT
> +		prompt "Enable use of giveio (CygWin only)"
> +endif
> +
> +config HOST_OPENOCD_JTAG_VPI
> +	bool
> +	prompt "JTAG VPI"
> +
> +config HOST_OPENOCD_USB_BLASTER_LIBFTDI
> +	bool
> +	prompt "Altera USB-Blaster (libftdi driver, opensource)"
> +
> +# no ftd2xx package in ptxdist, so disable it
> +#config HOST_OPENOCD_USB_BLASTER_FTD2XX
> +#	bool
> +#	prompt "Altera USB-Blaster (FTD2XX driver from ftdichip.com)"

same as above

> +
> +config HOST_OPENOCD_AMTJTAGACCEL
> +	bool
> +	prompt "Amontec JTAG-Accelerator driver"
> +
> +config HOST_OPENOCD_ZY1000
> +	bool
> +	prompt "ZY1000 interface"
> +
> +if HOST_OPENOCD_ZY1000
> +	config HOST_OPENOCD_ZY1000_MASTER
> +		bool
> +		prompt "Use ZY1000 JTAG master registers"
> +endif
> +
> +config HOST_OPENOCD_IOUTIL
> +	bool
> +	prompt "ioutil functions - for standalone OpenOCD implementations"
> +
> +config HOST_OPENOCD_EP93XX
> +	bool
> +	prompt "EP93xx based SBCs"
> +
> +config HOST_OPENOCD_AT91RM9200
> +	bool
> +	prompt "AT91RM9200 based SBCs"
> +
> +config HOST_OPENOCD_BCM2835GPIO
> +	bool
> +	prompt "bitbanging on BCM2835 (as found in Raspberry Pi)"
> +
> +config HOST_OPENOCD_GW16012
> +	bool
> +	prompt "Gateworks GW16012 JTAG Programmer"
> +
> +config HOST_OPENOCD_PRESTO_LIBFTDI
> +	bool
> +	prompt "ASIX Presto Programmer using the libftdi driver"
> +
> +# no ftd2xx package in ptxdist, so disable it
> +#config HOST_OPENOCD_PRESTO_FTD2XX
> +#	bool
> +#	prompt "ASIX Presto Programmer using the FTD2XX driver"
> +
> +# no ftd2xx package in ptxdist, so disable it
> +#config HOST_OPENOCD_OPENJTAG_FTD2XX
> +#	bool
> +#	prompt "OpenJTAG Programmer with ftd2xx driver"

same as above

> +
> +config HOST_OPENOCD_OPENJTAG_FTDI
> +	bool
> +	prompt "OpenJTAG Programmer with ftdi driver"
> +
> +config HOST_OPENOCD_OOCD_TRACE
> +	bool
> +	prompt "prototype OpenOCD+trace ETM capture hardware"
> +
> +config HOST_OPENOCD_BUSPIRATE
> +	bool
> +	prompt "Buspirate"
> +
> +config HOST_OPENOCD_SYSFSGPIO
> +	bool
> +	prompt "programming driven via sysfs gpios"
> +
> +config HOST_OPENOCD_MINIDRIVER_DUMMY
> +	bool
> +	prompt "dummy minidriver"
> +
> +config HOST_OPENOCD_REMOTE_BITBANG
> +	bool
> +	prompt "Remote Bitbang jtag driver"
> +
> +endif
> diff --git a/rules/host-openocd.make b/rules/host-openocd.make
> new file mode 100644
> index 0000000..913c761
> --- /dev/null
> +++ b/rules/host-openocd.make
> @@ -0,0 +1,76 @@
> +# -*-makefile-*-
> +#
> +# Copyright (C) 2014 by Andreas Pretzsch <apr@cn-eng.de>
> +#
> +# See CREDITS for details about who has contributed to this project.
> +#
> +# For further information about the PTXdist project and license conditions
> +# see the README file.
> +#
> +
> +#
> +# We provide this package
> +#
> +HOST_PACKAGES-$(PTXCONF_HOST_OPENOCD) += host-openocd
> +
> +#
> +# Paths and names
> +#
> +HOST_OPENOCD_VERSION	:= 0.8.0
> +HOST_OPENOCD_MD5	:= 6d83c34763a5f1d1ac7ad83c5a11f4fb
> +HOST_OPENOCD		:= openocd-$(HOST_OPENOCD_VERSION)
> +HOST_OPENOCD_SUFFIX	:= tar.bz2
> +HOST_OPENOCD_URL	:= http://downloads.sourceforge.net/project/openocd/openocd/$(HOST_OPENOCD_VERSION)/$(HOST_OPENOCD).$(HOST_OPENOCD_SUFFIX)
> +#HOST_OPENOCD_URL	:= $(call ptx/mirror, SF, openocd/$(HOST_OPENOCD).$(HOST_OPENOCD_SUFFIX))

Took this mirror from Michael Grzeschik original patch, but still refer
to the official source. Please change before apply at your own
discretion.

> +HOST_OPENOCD_SOURCE	:= $(SRCDIR)/$(HOST_OPENOCD).$(HOST_OPENOCD_SUFFIX)
> +HOST_OPENOCD_DIR	:= $(HOST_BUILDDIR)/$(HOST_OPENOCD)
> +# License: OpenOCD: GPLv2+, jimtcl: BSD
> +HOST_OPENOCD_LICENSE	:= LGPLv2, BSD
> +
> +# ----------------------------------------------------------------------------
> +# Prepare
> +# ----------------------------------------------------------------------------
> +
> +HOST_OPENOCD_CONF_TOOL	:= autoconf
> +HOST_OPENOCD_CONF_OPT	:= $(HOST_AUTOCONF) \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_DUMMY)-dummy \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_FTDI)-ftdi \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_STLINK)-stlink \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_TI_ICDI)-ti-icdi \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_ULINK)-ulink \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_USB_BLASTER_2)-usb-blaster-2 \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_JLINK)-jlink \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_OSBDM)-osbdm \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_OPENDOUS)-opendous \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_AICE)-aice \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_VSLLINK)-vsllink \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_USBPROG)-usbprog \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_RLINK)-rlink \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_ARMJTAGEW)-armjtagew \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_CMSIS_DAP)-cmsis-dap \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_PARPORT)-parport \
> +	--$(call ptx/disen, PTXCONF_HOST_OPENOCD_PARPORT_DISABLE_PARPORT_PPDEV)-parport-ppdev \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_PARPORT_GIVEIO)-parport-giveio \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_JTAG_VPI)-jtag_vpi \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_USB_BLASTER_LIBFTDI)-usb_blaster_libftdi \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_USB_BLASTER_FTD2XX)-usb_blaster_ftd2xx \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_AMTJTAGACCEL)-amtjtagaccel \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_ZY1000)-zy1000 \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_ZY1000_MASTER)-zy1000-master \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_IOUTIL)-ioutil \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_EP93XX)-ep93xx \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_AT91RM9200)-at91rm9200 \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_BCM2835GPIO)-bcm2835gpio \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_GW16012)-gw16012 \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_PRESTO_LIBFTDI)-presto_libftdi \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_PRESTO_FTD2XX)-presto_ftd2xx \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_OPENJTAG_FTD2XX)-openjtag_ftd2xx \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_OPENJTAG_FTDI)-openjtag_ftdi \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_OOCD_TRACE)-oocd_trace \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_BUSPIRATE)-buspirate \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_SYSFSGPIO)-sysfsgpio \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_MINIDRIVER_DUMMY)-minidriver-dummy \
> +	--$(call ptx/endis, PTXCONF_HOST_OPENOCD_REMOTE_BITBANG)-remote-bitbang \
> +
> +
> +# vim: syntax=make
> diff --git a/rules/openocd.in b/rules/openocd.in
> new file mode 100644
> index 0000000..56384e7
> --- /dev/null
> +++ b/rules/openocd.in
> @@ -0,0 +1,199 @@
> +## SECTION=debug_tools
> +
> +menuconfig OPENOCD
> +	tristate
> +	prompt "OpenOCD                       "
> +
> +	# libusb-1.x
> +	select LIBUSB	if OPENOCD_FTDI || OPENOCD_STLINK || OPENOCD_TI_ICDI || OPENOCD_ULINK || OPENOCD_USB_BLASTER_2
> +	# libusb-1.x or libusb-0.1
> +	select LIBUSB	if OPENOCD_JLINK || OPENOCD_OSBDM || OPENOCD_OPENDOUS || OPENOCD_AICE
> +	# libusb-0.1
> +	select LIBUSB_COMPAT	if OPENOCD_VSLLINK || OPENOCD_USBPROG || OPENOCD_RLINK || OPENOCD_ARMJTAGEW
> +	# libhidapi ; currently no package in ptxdist, so disable it
> +	#select HIDAPI	if OPENOCD_CMSIS_DAP
> +	# libftdi1 or libftdi, with libftdi1 preferred ; currently no package in ptxdist, so disable it
> +	#select LIBFTDI1	if OPENOCD_USB_BLASTER_LIBFTDI || OPENOCD_PRESTO_LIBFTDI || OPENOCD_OPENJTAG_FTDI

same as with host package, beside libusb_compat, which is there as
target package.

> +
> +	help
> +	  The Open On-Chip Debugger (OpenOCD) provides debugging, in-system
> +	  programming and boundary-scan testing for embedded target devices.
> +	  It supports JTAG and SWD (direct or via dongle) to access targets.
> +	  Flash writing is supported for various internal and external types.
> +	  It is controlled with TCL scripts and can act as gdbserver.
> +
> +if OPENOCD
> +
> +# ===== interface drivers =====
> +
> +config OPENOCD_DUMMY
> +	bool
> +	prompt "dummy port driver"
> +
> +# --- libusb-1.x based
> +
> +config OPENOCD_FTDI
> +	bool
> +	prompt "MPSSE mode of FTDI based devices"
> +
> +config OPENOCD_STLINK
> +	bool
> +	prompt "ST-Link JTAG Programmer"
> +
> +config OPENOCD_TI_ICDI
> +	bool
> +	prompt "TI ICDI JTAG Programmer"
> +
> +config OPENOCD_ULINK
> +	bool
> +	prompt "Keil ULINK JTAG Programmer"
> +
> +config OPENOCD_USB_BLASTER_2
> +	bool
> +	prompt "Altera USB-Blaster II Compatible"
> +
> +# --- libusb-1.x or libusb-0.1 based
> +
> +config OPENOCD_JLINK
> +	bool
> +	prompt "Segger J-Link JTAG Programmer"
> +
> +config OPENOCD_OSBDM
> +	bool
> +	prompt "OSBDM (JTAG only) Programmer"
> +
> +config OPENOCD_OPENDOUS
> +	bool
> +	prompt "eStick/opendous JTAG Programmer"
> +
> +config OPENOCD_AICE
> +	bool
> +	prompt "Andes JTAG Programmer"
> +
> +# --- libusb-0.1 based
> +
> +config OPENOCD_VSLLINK
> +	bool
> +	prompt "Versaloon-Link JTAG Programmer"
> +
> +config OPENOCD_USBPROG
> +	bool
> +	prompt "USBProg JTAG Programmer"
> +
> +config OPENOCD_RLINK
> +	bool
> +	prompt "Raisonance RLink JTAG Programmer"
> +
> +config OPENOCD_ARMJTAGEW
> +	bool
> +	prompt "Olimex ARM-JTAG-EW Programmer"
> +
> +# --- hidapi based
> +# currently no package in ptxdist, so disable it
> +#config OPENOCD_CMSIS_DAP
> +#	bool
> +#	prompt "CMSIS-DAP Compliant Debugger"
> +
> +# --- various
> +
> +config OPENOCD_PARPORT
> +	bool
> +	prompt "pc parallel port driver"
> +
> +if OPENOCD_PARPORT
> +	config OPENOCD_PARPORT_DISABLE_PARPORT_PPDEV
> +		bool
> +		prompt "Disable use of ppdev (/dev/parportN) (x86 only)"
> +
> +	config OPENOCD_PARPORT_GIVEIO
> +		bool
> +		depends on OPENOCD_PARPORT
> +		prompt "Enable use of giveio (CygWin only)"
> +endif
> +
> +config OPENOCD_JTAG_VPI
> +	bool
> +	prompt "JTAG VPI"
> +
> +config OPENOCD_USB_BLASTER_LIBFTDI
> +	bool
> +	prompt "Altera USB-Blaster (libftdi driver, opensource)"
> +
> +# no ftd2xx package in ptxdist, so disable it
> +#config OPENOCD_USB_BLASTER_FTD2XX
> +#	bool
> +#	prompt "Altera USB-Blaster (FTD2XX driver from ftdichip.com)"
> +
> +config OPENOCD_AMTJTAGACCEL
> +	bool
> +	prompt "Amontec JTAG-Accelerator driver"
> +
> +config OPENOCD_ZY1000
> +	bool
> +	prompt "ZY1000 interface"
> +
> +if OPENOCD_ZY1000
> +	config OPENOCD_ZY1000_MASTER
> +		bool
> +		prompt "Use ZY1000 JTAG master registers"
> +endif
> +
> +config OPENOCD_IOUTIL
> +	bool
> +	prompt "ioutil functions - for standalone OpenOCD implementations"
> +
> +config OPENOCD_EP93XX
> +	bool
> +	prompt "EP93xx based SBCs"
> +
> +config OPENOCD_AT91RM9200
> +	bool
> +	prompt "AT91RM9200 based SBCs"
> +
> +config OPENOCD_BCM2835GPIO
> +	bool
> +	prompt "bitbanging on BCM2835 (as found in Raspberry Pi)"
> +
> +config OPENOCD_GW16012
> +	bool
> +	prompt "Gateworks GW16012 JTAG Programmer"
> +
> +config OPENOCD_PRESTO_LIBFTDI
> +	bool
> +	prompt "ASIX Presto Programmer using the libftdi driver"
> +
> +# no ftd2xx package in ptxdist, so disable it
> +#config OPENOCD_PRESTO_FTD2XX
> +#	bool
> +#	prompt "ASIX Presto Programmer using the FTD2XX driver"
> +
> +# no ftd2xx package in ptxdist, so disable it
> +#config OPENOCD_OPENJTAG_FTD2XX
> +#	bool
> +#	prompt "OpenJTAG Programmer with ftd2xx driver"
> +
> +config OPENOCD_OPENJTAG_FTDI
> +	bool
> +	prompt "OpenJTAG Programmer with ftdi driver"
> +
> +config OPENOCD_OOCD_TRACE
> +	bool
> +	prompt "prototype OpenOCD+trace ETM capture hardware"
> +
> +config OPENOCD_BUSPIRATE
> +	bool
> +	prompt "Buspirate"
> +
> +config OPENOCD_SYSFSGPIO
> +	bool
> +	prompt "programming driven via sysfs gpios"
> +
> +config OPENOCD_MINIDRIVER_DUMMY
> +	bool
> +	prompt "dummy minidriver"
> +
> +config OPENOCD_REMOTE_BITBANG
> +	bool
> +	prompt "Remote Bitbang jtag driver"
> +
> +endif
> diff --git a/rules/openocd.make b/rules/openocd.make
> new file mode 100644
> index 0000000..8301df3
> --- /dev/null
> +++ b/rules/openocd.make
> @@ -0,0 +1,96 @@
> +# -*-makefile-*-
> +#
> +# Copyright (C) 2014 by Andreas Pretzsch <apr@cn-eng.de>
> +#
> +# See CREDITS for details about who has contributed to this project.
> +#
> +# For further information about the PTXdist project and license conditions
> +# see the README file.
> +#
> +
> +#
> +# We provide this package
> +#
> +PACKAGES-$(PTXCONF_OPENOCD) += openocd
> +
> +#
> +# Paths and names
> +#
> +OPENOCD_VERSION	:= 0.8.0
> +OPENOCD_MD5	:= 6d83c34763a5f1d1ac7ad83c5a11f4fb
> +OPENOCD		:= openocd-$(OPENOCD_VERSION)
> +OPENOCD_SUFFIX	:= tar.bz2
> +OPENOCD_URL	:= http://downloads.sourceforge.net/project/openocd/openocd/$(OPENOCD_VERSION)/$(OPENOCD).$(OPENOCD_SUFFIX)
> +#OPENOCD_URL	:= $(call ptx/mirror, SF, openocd/$(OPENOCD).$(OPENOCD_SUFFIX))

same as with host package

> +OPENOCD_SOURCE	:= $(SRCDIR)/$(OPENOCD).$(OPENOCD_SUFFIX)
> +OPENOCD_DIR	:= $(BUILDDIR)/$(OPENOCD)
> +# License: OpenOCD: GPLv2+, jimtcl: BSD
> +OPENOCD_LICENSE	:= LGPLv2, BSD
> +
> +# ----------------------------------------------------------------------------
> +# Prepare
> +# ----------------------------------------------------------------------------
> +
> +OPENOCD_CONF_TOOL	:= autoconf
> +OPENOCD_CONF_OPT	:= $(CROSS_AUTOCONF_USR) \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_DUMMY)-dummy \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_FTDI)-ftdi \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_STLINK)-stlink \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_TI_ICDI)-ti-icdi \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_ULINK)-ulink \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_USB_BLASTER_2)-usb-blaster-2 \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_JLINK)-jlink \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_OSBDM)-osbdm \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_OPENDOUS)-opendous \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_AICE)-aice \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_VSLLINK)-vsllink \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_USBPROG)-usbprog \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_RLINK)-rlink \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_ARMJTAGEW)-armjtagew \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_CMSIS_DAP)-cmsis-dap \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_PARPORT)-parport \
> +	--$(call ptx/disen, PTXCONF_OPENOCD_PARPORT_DISABLE_PARPORT_PPDEV)-parport-ppdev \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_PARPORT_GIVEIO)-parport-giveio \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_JTAG_VPI)-jtag_vpi \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_USB_BLASTER_LIBFTDI)-usb_blaster_libftdi \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_USB_BLASTER_FTD2XX)-usb_blaster_ftd2xx \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_AMTJTAGACCEL)-amtjtagaccel \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_ZY1000)-zy1000 \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_ZY1000_MASTER)-zy1000-master \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_IOUTIL)-ioutil \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_EP93XX)-ep93xx \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_AT91RM9200)-at91rm9200 \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_BCM2835GPIO)-bcm2835gpio \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_GW16012)-gw16012 \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_PRESTO_LIBFTDI)-presto_libftdi \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_PRESTO_FTD2XX)-presto_ftd2xx \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_OPENJTAG_FTD2XX)-openjtag_ftd2xx \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_OPENJTAG_FTDI)-openjtag_ftdi \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_OOCD_TRACE)-oocd_trace \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_BUSPIRATE)-buspirate \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_SYSFSGPIO)-sysfsgpio \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_MINIDRIVER_DUMMY)-minidriver-dummy \
> +	--$(call ptx/endis, PTXCONF_OPENOCD_REMOTE_BITBANG)-remote-bitbang
> +
> +# ----------------------------------------------------------------------------
> +# Target-Install
> +# ----------------------------------------------------------------------------
> +
> +$(STATEDIR)/openocd.targetinstall:
> +	@$(call targetinfo)
> +
> +	@$(call install_init, openocd)
> +	@$(call install_fixup, openocd,PRIORITY,optional)
> +	@$(call install_fixup, openocd,SECTION,base)
> +	@$(call install_fixup, openocd,AUTHOR,"Andreas Pretzsch <apr@cn-eng.de>")
> +	@$(call install_fixup, openocd,DESCRIPTION,"OpenOCD - Open On-Chip Debugger")
> +
> +	@$(call install_copy, openocd, 0, 0, 0755, -, /usr/bin/openocd)
> +#	@$(call install_tree, openocd, 0, 0, -, /usr/share/openocd/)

Intentionally disabled. 700kB generic extra data on the target makes no
sense. I doubt there won't be one real use case where the makefile is
not pulled into platform local rules and adapted to copy only the 5
relevant files from this tree. So this is more of a reminder where to
look, so I kept is as comment.

> +
> +	@$(call install_finish, openocd)
> +
> +	@$(call touch)
> +
> +
> +# vim: syntax=make
> -- 
> 2.1.0
> 
> 


-- 

carpe noctem engineering
Ingenieurbuero fuer Hard- & Software-Entwicklung Andreas Pretzsch
Dipl.-Ing. (FH) Andreas Pretzsch          Tel. +49-(0)731-5521572
Hahnengasse 3                             Fax: +49-(0)731-5521571
89073 Ulm, Germany                        email: apr@cn-eng.de


-- 
ptxdist mailing list
ptxdist@pengutronix.de

  parent reply	other threads:[~2014-09-29 17:43 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-09-29 17:12 Andreas Pretzsch
2014-09-29 17:27 ` Marc Kleine-Budde
2014-09-29 17:50   ` Andreas Pretzsch
2014-10-01 10:15     ` Michael Olbrich
2014-09-29 17:43 ` Andreas Pretzsch [this message]
2014-10-01 10:39   ` Michael Olbrich
2014-10-01 10:29 ` Michael Olbrich
2014-10-01 14:25   ` Andreas Pretzsch
2014-10-01 15:12     ` Michael Olbrich
2014-10-06 23:18 ` [ptxdist] [PATCH v2 1/2] openocd: new package for openocd-0.8.0 Andreas Pretzsch
2014-10-26 17:24   ` Andreas Pretzsch
2014-11-13 16:46   ` Michael Olbrich
2014-11-16 15:30     ` Andreas Pretzsch
2014-11-19  9:05       ` Michael Olbrich
2014-11-29 14:34     ` Andreas Pretzsch
2014-12-04 15:58       ` Michael Olbrich
2014-10-06 23:18 ` [ptxdist] [PATCH v2 2/2] host-openocd: " Andreas Pretzsch
2014-10-26 17:25   ` Andreas Pretzsch
2014-11-13 16:48   ` Michael Olbrich
2014-11-16 15:42     ` Andreas Pretzsch
2014-11-19 10:32       ` Michael Olbrich

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1412012616.18554.57.camel@ws-apr.office.loc \
    --to=apr@cn-eng.de \
    --cc=ptxdist@pengutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox