Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

jtag_commander.h

00001 /*--------------------------------------------------------------------
00002  * jtag_commander.cpp -- JTAG Commander Class Definition
00003  *--------------------------------------------------------------------
00004  * $Id: jtag_commander.h,v 1.1 2003/04/08 08:59:53 cgaudin Exp $
00005  *--------------------------------------------------------------------
00006  * This file is part of JTAG Framework
00007  * (c) 2002 Julien Pilet <julien.pilet@epfl.ch> and
00008  *          Stephane Magnenat <stephane.magnenat@epfl.ch>
00009  *--------------------------------------------------------------------
00010  * JTAG Framework is free software; you can redistribute it
00011  * and/or modify it under the terms of the GNU General Public License 
00012  * as published by the Free Software Foundation; either version 2 of 
00013  * the License, or (at your option) any later version.
00014  *
00015  * JTAG Framework is distributed in the hope that it will be useful,
00016  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00017  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00018  * GNU General Public License for more details.
00019  *
00020  * You should have received a copy of the GNU General Public License
00021  * along with Foobar; if not, write to: 
00022  * Free Software Foundation, Inc., 
00023  * 59 Temple Place, 
00024  * Suite 330, Boston, MA  02111-1307  USA
00025  *--------------------------------------------------------------------
00026  *! \file
00027  *
00028  * \brief JTAG Commander Abstract Class Definition
00029  *
00030  * \author Julien Pilet <julien.pilet@epfl.ch>
00031  * \author Stephane Magnenat <stephane.magnenat@epfl.ch>
00032  * \author Cedric Gaudin <cedric.gaudin@epfl.ch> 
00033  */
00034 
00035 #ifndef _JTAG_COMMANDER_
00036 #define _JTAG_COMMANDER_
00037 
00038 class JTAG_Commander 
00039 {
00040 public:
00041 
00043   virtual bool init( int argc , 
00044                      char **argv ) = 0;
00045 
00047   virtual void jtag_ireg( unsigned long value ) = 0;
00048 
00050   virtual bool jtag_shiftdr( void ) = 0;
00051   
00053   virtual bool jtag_updatedr( void ) = 0;
00054 
00056   virtual unsigned long jtag_dreg( int bit_count ,
00057                                    unsigned long data ) = 0;
00058 
00060   virtual bool jtag_reset( bool cold ) = 0;
00061   
00063   virtual void jtag_idle() = 0;
00064 
00066   virtual bool cpu_reset( bool state ) = 0;
00067   
00069   virtual void flush() = 0;
00070 
00071 };
00072 
00073 #endif // _JTAG_COMMANDER_

Generated on Fri May 16 13:01:45 2003 for Jelie by doxygen1.2.15