2003-09-14 Marcel Telka <marcel@telka.sk>

* src/tap/cable/triton.c: New file (patch 805103, Andreas Mohr).
	* src/tap/Makefile.am (libtap_a_SOURCES): Added cable/triton.c (patch 805103, Andreas Mohr).
	* src/tap/cable.c (cable_drivers): Added triton_cable_driver member (patch 805103, Andreas Mohr).
	* src/tap/cable/generic.h (PARAM_SRESET): New macro (patch 805103, Andreas Mohr).
	(generic_params_t): New structure member 'sreset' (patch 805103, Andreas Mohr).

	* configure.ac: Changed description for --with-include parameter (thanks to Andreas Mohr).


git-svn-id: https://urjtag.svn.sourceforge.net/svnroot/urjtag/trunk@565 b68d4a1b-bc3d-0410-92ed-d4ac073336b7
master
Marcel Telka 21 years ago
parent bf54af7380
commit 67c8d61b0c

@ -1,3 +1,13 @@
2003-09-14 Marcel Telka <marcel@telka.sk>
* src/tap/cable/triton.c: New file (patch 805103, Andreas Mohr).
* src/tap/Makefile.am (libtap_a_SOURCES): Added cable/triton.c (patch 805103, Andreas Mohr).
* src/tap/cable.c (cable_drivers): Added triton_cable_driver member (patch 805103, Andreas Mohr).
* src/tap/cable/generic.h (PARAM_SRESET): New macro (patch 805103, Andreas Mohr).
(generic_params_t): New structure member 'sreset' (patch 805103, Andreas Mohr).
* configure.ac: Changed description for --with-include parameter (thanks to Andreas Mohr).
2003-09-12 Marcel Telka <marcel@telka.sk>
* configure.ac (AC_CHECK_FUNCS): Added swprintf.

@ -15,6 +15,7 @@ jtag-0.5.1:
* Added BOOT_DEF register emulation for PXA2x0 bus driver.
* Fixed inverted TRST signal for Macraigor Wiggler JTAG Cable see patch 799377 for more info,
thanks to Mike Tesch for reporting).
* Added Ka-Ro TRITON (PXA255/250) JTAG Cable driver (patch 805103, Andreas Mohr).
* Fixed minor bugs.
jtag-0.5 (2003-08-19):

@ -37,6 +37,7 @@ JTAG adapters/cables (see 'help cable' command for more info):
- ETC EI012 JTAG Cable
- Keith & Koep JTAG Cable
- Mpcbdm JTAG Cable
- Ka-Ro TRITON (PXA255/250) JTAG Cable
- Macraigor Wiggler JTAG Cable
JTAG-aware parts (chips):

@ -13,6 +13,7 @@ August Hörandl
Rojhalat Ibrahim
Stas Khirman
Guennadi Liakhovetski
Andreas Mohr
Brad Parker
Christian Pellegrin
Ramses VI

@ -60,7 +60,7 @@ AC_PROG_RANLIB
AC_CONFIG_SUBDIRS(libbrux)
AC_ARG_WITH(include,
AC_HELP_STRING([--with-include=PATH], [Path to the openwince includes]),
AC_HELP_STRING([--with-include=PATH], [Absolute path to the openwince includes]),
openwince_inc="$withval")
AC_CACHE_CHECK([for the openwince includes], openwince_includes_path, [

@ -43,4 +43,5 @@ libtap_a_SOURCES = \
cable/ei012.c \
cable/keithkoep.c \
cable/mpcbdm.c \
cable/triton.c \
cable/wiggler.c

@ -38,6 +38,7 @@ extern cable_driver_t ea253_cable_driver;
extern cable_driver_t ei012_cable_driver;
extern cable_driver_t keithkoep_cable_driver;
extern cable_driver_t mpcbdm_cable_driver;
extern cable_driver_t triton_cable_driver;
extern cable_driver_t wiggler_cable_driver;
uint32_t frequency = 0;
@ -50,6 +51,7 @@ cable_driver_t *cable_drivers[] = {
&ei012_cable_driver,
&keithkoep_cable_driver,
&mpcbdm_cable_driver,
&triton_cable_driver,
&wiggler_cable_driver,
NULL /* last must be NULL */
};

@ -30,9 +30,11 @@
typedef struct {
int trst;
int sreset;
} generic_params_t;
#define PARAM_TRST(cable) ((generic_params_t *) cable->params)->trst
#define PARAM_SRESET(cable) ((generic_params_t *) cable->params)->sreset
cable_t *generic_connect( cable_driver_t *cable_driver, parport_t *port );
void generic_disconnect( cable_t *cable );

@ -0,0 +1,123 @@
/*
* $Id$
*
* Ka-Ro TRITON Starterkit II (PXA255/250) JTAG Cable
* Copyright (C) 2002, 2003 ETC s.r.o.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
* 02111-1307, USA.
*
* Written by Marcel Telka <marcel@telka.sk>, 2002, 2003.
* Modified for TRITON by Andreas Mohr <andi@lisas.de>, 2003
*
*/
/*
* Ka-Ro electronics GmbH (http://www.karo-electronics.de)
* TRITON Starterkit II (PXA255/250) JTAG Parallel Cable Driver
* (boards probably produced by www.mite.cz)
* Other vendors: www.strategic-test.com, www.fsforth.de (www.es-usa.com),
* www.directinsight.co.uk, www.quantum.com.pl,
*
* This code has been verified to work with a Starterkit II,
* but a Starterkit I might also work (however it has a differing JTAG cable
* interface circuit, so all bets are off).
*/
#include "sysdep.h"
#include "cable.h"
#include "parport.h"
#include "chain.h"
#include "generic.h"
/*
* data D[7:0] (pins 9:2)
*/
#define TDI 1
#define TCK 0
#define TMS 2
#define TRST 3
#define SRESET 4
#define ENAB 5 /* not programmed, since it's always 0 */
/*
* status
*
* 7 - BUSY (pin 11)
* 6 - ACK (pin 10)
* 5 - PE (pin 12)
* 4 - SEL (pin 13)
* 3 - ERROR (pin 15)
*/
#define TDO 7
static int
triton_init( cable_t *cable )
{
int data;
if (parport_open( cable->port ))
return -1;
PARAM_TRST(cable) = 1;
PARAM_SRESET(cable) = 1;
return 0;
}
static void
triton_clock( cable_t *cable, int tms, int tdi )
{
tms = tms ? 1 : 0;
tdi = tdi ? 1 : 0;
parport_set_data( cable->port, (PARAM_TRST(cable) << TRST) | (PARAM_SRESET(cable) << SRESET) | (0 << TCK) | (tms << TMS) | (tdi << TDI) );
cable_wait();
parport_set_data( cable->port, (PARAM_TRST(cable) << TRST) | (PARAM_SRESET(cable) << SRESET) | (1 << TCK) | (tms << TMS) | (tdi << TDI) );
cable_wait();
}
static int
triton_get_tdo( cable_t *cable )
{
parport_set_data( cable->port, (PARAM_TRST(cable) << TRST) | (PARAM_SRESET(cable) << SRESET) | (0 << TCK) );
cable_wait();
return (parport_get_status( cable->port ) >> TDO) & 1;
}
static int
triton_set_trst( cable_t *cable, int trst )
{
PARAM_TRST(cable) = trst ? 1 : 0;
parport_set_data( cable->port, (PARAM_TRST(cable) << TRST) | (PARAM_SRESET(cable) << SRESET) );
return PARAM_TRST(cable);
}
cable_driver_t triton_cable_driver = {
"TRITON",
N_("Ka-Ro TRITON Starterkit II (PXA255/250) JTAG Cable"),
generic_connect,
generic_disconnect,
generic_cable_free,
triton_init,
generic_done,
triton_clock,
triton_get_tdo,
triton_set_trst,
generic_get_trst
};
Loading…
Cancel
Save