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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-stable/] [gdb-7.2/] [sim/] [common/] [hw-base.h] - Diff between revs 835 and 841

Go to most recent revision | Only display areas with differences | Details | Blame | View Log

Rev 835 Rev 841
/* The common simulator framework for GDB, the GNU Debugger.
/* The common simulator framework for GDB, the GNU Debugger.
 
 
   Copyright 2002, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
   Copyright 2002, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
 
 
   Contributed by Andrew Cagney and Red Hat.
   Contributed by Andrew Cagney and Red Hat.
 
 
   This file is part of GDB.
   This file is part of GDB.
 
 
   This program is free software; you can redistribute it and/or modify
   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
   it under the terms of the GNU General Public License as published by
   the Free Software Foundation; either version 3 of the License, or
   the Free Software Foundation; either version 3 of the License, or
   (at your option) any later version.
   (at your option) any later version.
 
 
   This program is distributed in the hope that it will be useful,
   This program is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   GNU General Public License for more details.
   GNU General Public License for more details.
 
 
   You should have received a copy of the GNU General Public License
   You should have received a copy of the GNU General Public License
   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 
 
 
 
#ifndef HW_BASE
#ifndef HW_BASE
#define HW_BASE
#define HW_BASE
 
 
/* Create a primative device */
/* Create a primative device */
 
 
struct hw *hw_create
struct hw *hw_create
(struct sim_state *sd,
(struct sim_state *sd,
 struct hw *parent,
 struct hw *parent,
 const char *family,
 const char *family,
 const char *name,
 const char *name,
 const char *unit,
 const char *unit,
 const char *args);
 const char *args);
 
 
 
 
/* Complete the creation of that device (finish overrides methods
/* Complete the creation of that device (finish overrides methods
   using the set_hw_* operations below) */
   using the set_hw_* operations below) */
 
 
void hw_finish
void hw_finish
(struct hw *me);
(struct hw *me);
 
 
int hw_finished_p
int hw_finished_p
(struct hw *me);
(struct hw *me);
 
 
 
 
/* Delete the entire device */
/* Delete the entire device */
 
 
void hw_delete
void hw_delete
(struct hw *me);
(struct hw *me);
 
 
 
 
/* Override device methods */
/* Override device methods */
 
 
typedef void (hw_delete_callback)
typedef void (hw_delete_callback)
     (struct hw *me);
     (struct hw *me);
 
 
extern void set_hw_delete(struct hw* hw, hw_delete_callback method);
extern void set_hw_delete(struct hw* hw, hw_delete_callback method);
 
 
 
 
/* ALLOC */
/* ALLOC */
 
 
extern void create_hw_alloc_data
extern void create_hw_alloc_data
(struct hw *hw);
(struct hw *hw);
extern void delete_hw_alloc_data
extern void delete_hw_alloc_data
(struct hw *hw);
(struct hw *hw);
 
 
 
 
/* PORTS */
/* PORTS */
 
 
extern void create_hw_port_data
extern void create_hw_port_data
(struct hw *hw);
(struct hw *hw);
extern void delete_hw_port_data
extern void delete_hw_port_data
(struct hw *hw);
(struct hw *hw);
 
 
 
 
/* PROPERTIES */
/* PROPERTIES */
 
 
extern void create_hw_property_data
extern void create_hw_property_data
(struct hw *hw);
(struct hw *hw);
extern void delete_hw_property_data
extern void delete_hw_property_data
(struct hw *hw);
(struct hw *hw);
 
 
 
 
/* EVENTS */
/* EVENTS */
 
 
extern void create_hw_event_data
extern void create_hw_event_data
(struct hw *hw);
(struct hw *hw);
extern void delete_hw_event_data
extern void delete_hw_event_data
(struct hw *hw);
(struct hw *hw);
 
 
 
 
/* HANDLES */
/* HANDLES */
 
 
extern void create_hw_handle_data
extern void create_hw_handle_data
(struct hw *hw);
(struct hw *hw);
extern void delete_hw_handle_data
extern void delete_hw_handle_data
(struct hw *hw);
(struct hw *hw);
 
 
 
 
/* INSTANCES */
/* INSTANCES */
 
 
extern void create_hw_instance_data
extern void create_hw_instance_data
(struct hw *hw);
(struct hw *hw);
extern void delete_hw_instance_data
extern void delete_hw_instance_data
(struct hw *hw);
(struct hw *hw);
 
 
 
 
#endif
#endif
 
 

powered by: WebSVN 2.1.0

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