16#ifndef SIMICS_SYSTEMC_SIMICS2TLM_DIRECT_MEMORY_UPDATE_GASKET_ADAPTER_H
17#define SIMICS_SYSTEMC_SIMICS2TLM_DIRECT_MEMORY_UPDATE_GASKET_ADAPTER_H
34 DirectMemoryUpdateInterface *direct_mem_update,
36 : direct_mem_update_(direct_mem_update),
37 simulation_(simulation) {
43 direct_memory_handle_t handle,
44 direct_memory_ack_id_t
id)
override {
47 direct_mem_update_->release(target, handle,
id);
49 direct_mem_update_->release(target, handle,
id);
53 direct_memory_handle_t handle,
55 access_t lost_permission,
56 access_t lost_inhibit,
57 direct_memory_ack_id_t
id)
override {
60 direct_mem_update_->update_permission(target, handle, lost_access,
61 lost_permission, lost_inhibit,
64 direct_mem_update_->update_permission(target, handle, lost_access,
65 lost_permission, lost_inhibit,
70 direct_memory_handle_t handle,
71 access_t conflicting_permission,
72 direct_memory_ack_id_t
id)
override {
75 direct_mem_update_->conflicting_access(target, handle,
76 conflicting_permission,
id);
78 direct_mem_update_->conflicting_access(target, handle,
79 conflicting_permission,
id);
89 DirectMemoryUpdateInterface *direct_mem_update_;
Utility class that handles the context switching, using RAII methodology.
Definition: context.h:31
Simics direct_memory_update interface.
Definition: direct_memory_update_interface.h:26
Interface to the SystemC simulation.
Definition: simulation_interface.h:27
Adapter for DirectMemoryUpdate gasket.
Definition: direct_memory_update_gasket_adapter.h:31
void conflicting_access(conf_object_t *target, direct_memory_handle_t handle, access_t conflicting_permission, direct_memory_ack_id_t id) override
Definition: direct_memory_update_gasket_adapter.h:69
void update_permission(conf_object_t *target, direct_memory_handle_t handle, access_t lost_access, access_t lost_permission, access_t lost_inhibit, direct_memory_ack_id_t id) override
Definition: direct_memory_update_gasket_adapter.h:52
DirectMemoryUpdateGasketAdapter(DirectMemoryUpdateInterface *direct_mem_update, iface::SimulationInterface *simulation)
Definition: direct_memory_update_gasket_adapter.h:33
virtual ~DirectMemoryUpdateGasketAdapter()=default
simics2tlm::GasketOwner * gasket_owner() const override
Definition: direct_memory_update_gasket_adapter.h:84
void release(conf_object_t *target, direct_memory_handle_t handle, direct_memory_ack_id_t id) override
Definition: direct_memory_update_gasket_adapter.h:42
Definition: gasket_adapter.h:45
Base class, responsible for handling a gasket.
Definition: gasket_owner.h:32
Definition: pci_bus_interface.h:24