16#ifndef SIMICS_SYSTEMC_IFACE_ETHERNET_COMMON_SIMICS_ADAPTER_H
17#define SIMICS_SYSTEMC_IFACE_ETHERNET_COMMON_SIMICS_ADAPTER_H
19#include <simics/devs/ethernet.h>
30template<
typename TBase,
31 typename TInterface = EthernetCommonInterface>
37 ETHERNET_COMMON_INTERFACE, init_iface()) {
41 static void frame(conf_object_t *obj,
const frags_t *
frame,
42 eth_frame_crc_status_t crc_ok) {
53 adapter<TBase, TInterface>(obj)->frame(&f, crc_ok);
57 std::vector<std::string> description(conf_object_t *obj,
59 return descriptionBase<TBase, TInterface>(obj, type);
61 ethernet_common_interface_t init_iface() {
62 ethernet_common_interface_t iface = {};
Definition: ethernet_common_simics_adapter.h:33
static void frame(conf_object_t *obj, const frags_t *frame, eth_frame_crc_status_t crc_ok)
Definition: ethernet_common_simics_adapter.h:41
EthernetCommonSimicsAdapter()
Definition: ethernet_common_simics_adapter.h:35
Base class for mapping Simics interface to a C++ interface.
Definition: simics_adapter.h:47
#define MAX_FRAGS_FRAGS
Definition: frags.h:25
DescriptionType
Definition: description_interface.h:25
Definition: pci_bus_interface.h:24
size_t len
Definition: frags.h:35
const uint8_t * start
Definition: frags.h:34
size_t len
Definition: frags.h:39
frags_frag_t fraglist[MAX_FRAGS_FRAGS]
Definition: frags.h:41
unsigned nfrags
Definition: frags.h:40