OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [trunk/] [or1ksim/] [vapi/] [vapi.h] - Blame information for rev 1765

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 293 markom
/* vapi.h - Verification API Interface
2 1748 jeremybenn
 
3 293 markom
   Copyright (C) 2001, Marko Mlinar, markom@opencores.org
4 1748 jeremybenn
   Copyright (C) 2008 Embecosm Limited
5 293 markom
 
6 1748 jeremybenn
   Contributor Jeremy Bennett <jeremy.bennett@embecosm.com>
7 293 markom
 
8 1748 jeremybenn
   This file is part of Or1ksim, the OpenRISC 1000 Architectural Simulator.
9 293 markom
 
10 1748 jeremybenn
   This program is free software; you can redistribute it and/or modify it
11
   under the terms of the GNU General Public License as published by the Free
12
   Software Foundation; either version 3 of the License, or (at your option)
13
   any later version.
14 293 markom
 
15 1748 jeremybenn
   This program is distributed in the hope that it will be useful, but WITHOUT
16
   ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
17
   FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
18
   more details.
19 293 markom
 
20 1748 jeremybenn
   You should have received a copy of the GNU General Public License along
21
   with this program.  If not, see <http://www.gnu.org/licenses/>.  */
22 645 markom
 
23 1748 jeremybenn
/* This program is commented throughout in a fashion suitable for processing
24
   with Doxygen. */
25 304 markom
 
26 293 markom
 
27 1748 jeremybenn
#ifndef  VAPI__H
28
#define  VAPI__H
29 293 markom
 
30 1748 jeremybenn
/*! Maximum value for VAPI device id */
31
#define VAPI_MAX_DEVID 0xFFFF
32 477 erez
 
33 439 erez
/* Types of commands that can be written to the VAPI log file */
34 1748 jeremybenn
typedef enum
35
{
36
  VAPI_COMMAND_REQUEST = 0,      /* Data coming from outside world to device */
37
  VAPI_COMMAND_SEND = 1,        /* Device writing data to the outside world */
38
  VAPI_COMMAND_END = 2          /* End of log for device */
39 439 erez
} VAPI_COMMAND;
40
 
41 1748 jeremybenn
/* Prototypes for external use */
42
extern int   vapi_init ();
43
extern void  vapi_done ();
44
extern void  vapi_install_handler (unsigned long id,
45
                                   void (*read_func) (unsigned long,
46
                                                      unsigned long,
47
                                                      void *),
48
                                  void *dat);
49
extern void  vapi_install_multi_handler (unsigned long base_id,
50
                                         unsigned long num_ids,
51
                                         void (*read_func) (unsigned long,
52
                                                            unsigned long,
53
                                                            void *),
54
                                         void *dat);
55
extern void  vapi_check ();
56
extern int   vapi_num_unconnected (int printout);
57
extern void  vapi_send (unsigned long id,
58
                        unsigned long data);
59
extern void  vapi_write_log_file (VAPI_COMMAND command,
60
                                  unsigned long device_id,
61
                                  unsigned long data);
62
extern void  reg_vapi_sec ();
63 645 markom
 
64 1748 jeremybenn
#endif /* VAPI__H */

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.