Home » Source Code » » jelie-1.3-_-ezusb_jtag.h

jelie-1.3-_-ezusb_jtag.h ( File view )

From:
  • By 2010-08-26
  • View(s):12
  • Download(s):0
  • Point(s): 1
			/*
 * This file is part of Jelie,
 * (c) 2002 Julien Pilet <julien.pilet@epfl.ch> and
 * Stephane Magnenat <stephane.magnenat@epfl.ch>
 *
 * Jelie 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.
 *
 * Jelie 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 Foobar; if not, write to the Free Software
 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 */

/*! \file
 *
 * This is the definition of the JTAG controller
 *
 * \author Julien Pilet <julien.pilet@epfl.ch>
 * \author Stephane Magnenat <stephane.magnenat@epfl.ch>
 */

#ifndef __EZUSB_JTAG_H
#define __EZUSB_JTAG_H

#include "ezusb_loader.h"
#include "jtag.h"

//! The implementation of JTAG Control for EzUSB
/*! This class inherits from JTAGControl as it's
	purprose is to implement a JTAG interface.
	It also inherits from EzUSB so all program upload
	facilities are already here. */
class EzUSBJTAG: public EzUSB, public JTAGControl
{

protected:
	//! Method used internally to send and receive a buffer
	void writeAndReadBuffer(unsigned char *buffer, int toWrite, int toRead, unsigned long delay=0);

	//! interneal queu for message queuing
	unsigned char queue[64];

	//! internal position in queu
	int queuePos;

public:
	//! The constructor, call EzUSB's one with empty file name and install signal handlers
	EzUSBJTAG();

	//! The destructor, remove signal handlers
	virtual ~EzUSBJTAG();

	//! Initialize the link with the connection device.
	// \return true on success, false on error.
	virtual bool init(int argc, char **argv);

	//! Read and write the jtag instruction register.
	virtual void ireg(unsigned char *data);

	//! Read and write the jtag data register.
	//
	// \param data a pointer to a buffer which will be exchanged with the
	// JTAG data register.
	// \param length number of bits to read/write.
	virtual void dreg(unsigned char *data, unsigned char length, bool writeOnly=false);

	//! Put the JTAG in run test/idle mode
	virtual void jtagReset(void);

	//! Assert or deassert the cpu reset line.
	virtual void cpuReset(bool state);

	//! Assert or deassert the TRST (the JTAG Reset line)
	virtual void trst(bool state);

	//! Idle for some TCKs in the run test/idle state.
	virtual void idle(unsigned int nbTCK);

	//! Flush the jtag write only command queue
	virtual void flushQueue(void);

	virtual const char *getName(void) const {
 return "ezusb"; 
}

};

#endif
			
...
Expand> <Close

Want complete source code? Download it here

Point(s): 1

Download
0 lines left, continue to read
Sponsored links

File list

Tips: You can preview the content of files by clicking file names^_^
Name Size Date
<>0.00 B2003-11-03 08:43
Makefile.in24.05 kB2003-11-03 08:37
configure200.74 kB2003-11-03 08:37
AUTHORS169.00 B2003-11-03 07:31
COPYING17.57 kB2003-10-09 23:27
INSTALL9.02 kB2003-10-09 23:27
Makefile.am757.00 B2003-11-03 07:31
acinclude.m45.87 kB2003-11-03 08:29
aclocal.m437.16 kB2003-11-03 08:37
config.h.in3.90 kB2003-11-03 08:43
configure.in4.66 kB2003-11-03 08:37
depcomp13.54 kB2003-10-09 23:27
install-sh6.96 kB2003-10-09 23:27
missing10.03 kB2003-10-09 23:27
mkinstalldirs1.94 kB2003-10-09 23:27
cmdline.cpp15.69 kB2003-11-03 07:31
cmdline.h10.38 kB2003-11-03 07:31
debug.cpp1.79 kB2003-11-03 07:31
debug.h1.63 kB2003-11-03 07:31
filemanager.cpp8.61 kB2003-11-03 07:31
filemanager.h2.73 kB2003-11-03 07:31
gdbremote.cpp11.69 kB2003-11-03 07:31
gdbremote.h3.00 kB2003-11-03 07:31
jtag.h2.97 kB2003-11-03 07:31
jtag_order.h1.21 kB2003-11-03 07:31
jtagctrl_factory.cpp2.87 kB2003-11-03 07:31
jtagctrl_factory.h1.76 kB2003-11-03 07:31
jtagpxa250.cpp16.63 kB2003-11-03 07:31
jtagpxa250.h7.16 kB2003-11-03 07:31
main.cpp6.93 kB2003-11-03 07:31
tcp.c6.31 kB2003-11-03 07:31
tcp.h1.88 kB2003-11-03 07:31
step.h47.00 B2003-11-03 07:31
step.cpp8.65 kB2003-11-03 07:31
pp_jtag.cpp6.00 kB2003-11-03 07:31
pp_jtag.h1.89 kB2003-11-03 07:31
ezusb_jtag.h2.77 kB2003-11-03 07:31
ezusb_loader.cpp11.60 kB2003-11-03 07:31
ezusb_loader.h2.88 kB2003-11-03 07:31
ezusb_jtag.cpp5.16 kB2003-11-03 07:31
jtag_usb.ihx5.66 kB2003-11-03 07:31
jtag_usb.c9.74 kB2003-11-03 07:31
ezusb.h22.60 kB2003-11-03 07:31
bootstrap85.00 B2003-11-03 07:41
LICENSE14.78 kB2003-11-03 07:31
<>0.00 B2003-11-03 08:43
Makefile.in11.01 kB2003-11-03 08:37
Makefile.am654.00 B2003-11-03 07:51
basic_gpio_init.S4.68 kB2003-11-03 07:31
debug_handler.S8.04 kB2003-11-03 07:31
jtag_com.S1.57 kB2003-11-03 07:31
serial.S3.15 kB2003-11-03 07:31
high_vectors.S1.36 kB2003-11-03 07:31
led.S1.40 kB2003-11-03 07:31
loadreg.S1.11 kB2003-11-03 07:31
pxa250regs.S23.74 kB2003-11-03 07:31
target_to_host.h1.59 kB2003-11-03 07:31
korebot-conf.S4.26 kB2003-11-03 08:36
armonie-conf.S3.17 kB2003-11-03 07:31
debug_handler.bin1.77 kB2003-11-03 08:36
<>0.00 B2003-11-03 08:43
Makefile.in6.84 kB2003-11-03 08:37
Makefile.am41.00 B2003-11-03 07:31
little_endian.fig1.86 kB2003-11-03 07:31
manuel.lyx35.02 kB2003-11-03 07:31
<>0.00 B2003-11-03 08:43
Makefile.in11.45 kB2003-11-03 08:37
Makefile.am483.00 B2003-11-03 07:31
fcs.S1.32 kB2003-11-03 07:31
turbo.S1.29 kB2003-11-03 07:31
fcs.bin80.00 B2003-11-03 08:34
turbo.bin80.00 B2003-11-03 08:34
chspeed205.00 B2003-11-03 07:31
loadlinux503.00 B2003-11-03 07:31
loadlinux_turbo503.00 B2003-11-03 07:31
goturbo207.00 B2003-11-03 07:31
<>0.00 B2003-11-03 08:43
Makefile.in12.30 kB2003-11-03 08:37
Makefile.am601.00 B2003-11-03 07:31
bm.S243.00 B2003-11-03 07:31
flash.c5.48 kB2003-11-03 07:31
serial.c3.13 kB2003-11-03 07:31
serial.h118.00 B2003-11-03 07:31
flash.bin37.20 kB2003-11-03 08:34
enp.lnj807.00 B2003-11-03 08:34
enp.j820.00 B2003-11-03 07:31
flashid57.00 B2003-11-03 07:31
...
Sponsored links

jelie-1.3-_-ezusb_jtag.h (169.15 kB)

Need 1 point
Your Point(s)

Your Point isn't enough.

Get point immediately by PayPal

More(Debit card / Credit card / PayPal Credit / Online Banking)

Submit your source codes. Get more point

LOGIN

Don't have an account? Register now
Need any help?
Mail to: support@codeforge.com

切换到中文版?

CodeForge Chinese Version
CodeForge English Version

Where are you going?

^_^"Oops ...

Sorry!This guy is mysterious, its blog hasn't been opened, try another, please!
OK

Warm tip!

CodeForge to FavoriteFavorite by Ctrl+D