qemu/include/hw/remote-port-memory-slave.h
<<
>>
Prefs
   1/*
   2 * QEMU remote port memory slave. Read and write transactions
   3 * recieved from the remote port are translated into an address space.
   4 *
   5 * Copyright (c) 2013 Xilinx Inc
   6 * Written by Edgar E. Iglesias <edgar.iglesias@xilinx.com>
   7 * Written by Peter Crosthwaite <peter.crosthwaite@xilinx.com>
   8 *
   9 * This code is licensed under the GNU GPL.
  10 */
  11#ifndef REMOTE_PORT_MEMORY_SLAVE_H
  12#define REMOTE_PORT_MEMORY_SLAVE_H
  13
  14#include "hw/remote-port-ats.h"
  15
  16#define TYPE_REMOTE_PORT_MEMORY_SLAVE "remote-port-memory-slave"
  17#define REMOTE_PORT_MEMORY_SLAVE(obj) \
  18        OBJECT_CHECK(RemotePortMemorySlave, (obj), \
  19                     TYPE_REMOTE_PORT_MEMORY_SLAVE)
  20
  21typedef struct RemotePortMemorySlave {
  22    /* private */
  23    SysBusDevice parent;
  24    /* public */
  25    struct RemotePort *rp;
  26    struct rp_peer_state *peer;
  27    MemoryRegion *mr;
  28    AddressSpace as;
  29    MemTxAttrs attr;
  30    RemotePortDynPkt rsp;
  31    RemotePortATSCache *ats_cache;
  32} RemotePortMemorySlave;
  33#endif
  34