SystemC Library API Reference Manual
Reference documentation for the Simics SystemC Library.
 
Loading...
Searching...
No Matches
pci_bus_interface.h
Go to the documentation of this file.
1/*
2 © 2015 Intel Corporation
3
4 This software and the related documents are Intel copyrighted materials, and
5 your use of them is governed by the express license under which they were
6 provided to you ("License"). Unless the License provides otherwise, you may
7 not use, modify, copy, publish, distribute, disclose or transmit this software
8 or the related documents without Intel's prior written permission.
9
10 This software and the related documents are provided as is, with no express or
11 implied warranties, other than those that are expressly stated in the License.
12*/
13
14#ifndef SIMICS_SYSTEMC_IFACE_PCI_BUS_INTERFACE_H
15#define SIMICS_SYSTEMC_IFACE_PCI_BUS_INTERFACE_H
16
19#include <stdint.h>
20
21namespace simics {
22namespace systemc {
23namespace iface {
24
27 public:
28 virtual void raise_interrupt(int pin) = 0;
29 virtual void lower_interrupt(int pin) = 0;
30 virtual int interrupt_acknowledge() = 0;
31 virtual int add_map(types::addr_space_t space, types::map_info_t info) = 0;
32 virtual int remove_map(types::addr_space_t space, int function) = 0;
33 virtual void set_bus_number(int bus_id) = 0;
34 virtual void set_sub_bus_number(int bus_id) = 0;
35 virtual void add_default(types::addr_space_t space,
36 types::map_info_t info) = 0;
37 virtual void remove_default(types::addr_space_t space) = 0;
38 virtual void bus_reset() = 0;
39 virtual void special_cycle(uint32_t value) = 0;
40 virtual void system_error() = 0;
41 virtual int get_bus_address() = 0;
42 virtual void set_device_status(int device, int function, int enabled) = 0;
43
44 virtual ~PciBusInterface() {}
45};
46
47} // namespace iface
48} // namespace systemc
49} // namespace simics
50
51#endif
Simics SystemC pci_bus interface.
Definition: pci_bus_interface.h:26
virtual void set_device_status(int device, int function, int enabled)=0
virtual void lower_interrupt(int pin)=0
virtual int add_map(types::addr_space_t space, types::map_info_t info)=0
virtual void set_bus_number(int bus_id)=0
virtual void raise_interrupt(int pin)=0
virtual void set_sub_bus_number(int bus_id)=0
virtual void special_cycle(uint32_t value)=0
virtual void add_default(types::addr_space_t space, types::map_info_t info)=0
virtual void remove_default(types::addr_space_t space)=0
virtual int remove_map(types::addr_space_t space, int function)=0
virtual ~PciBusInterface()
Definition: pci_bus_interface.h:44
addr_space_t
Stand-alone, version of the Simics addr_space_t enum.
Definition: addr_space.h:21
Definition: adapter.h:79
Reduced, stand-alone, version of the Simics map_info_t struct.
Definition: map_info.h:23