Browse Source

Refactor headers

sparse-mem
Andrew Waterman 5 years ago
parent
commit
d87a21ac8a
  1. 15
      riscv/abstract_device.h
  2. 4
      riscv/debug_module.h
  3. 10
      riscv/devices.h
  4. 1
      riscv/dts.h
  5. 2
      riscv/processor.h
  6. 1
      riscv/riscv.mk.in

15
riscv/abstract_device.h

@ -0,0 +1,15 @@
#ifndef _RISCV_ABSTRACT_DEVICE_H
#define _RISCV_ABSTRACT_DEVICE_H
#include "decode.h"
#include <cstdint>
#include <cstddef>
class abstract_device_t {
public:
virtual bool load(reg_t addr, size_t len, uint8_t* bytes) = 0;
virtual bool store(reg_t addr, size_t len, const uint8_t* bytes) = 0;
virtual ~abstract_device_t() {}
};
#endif

4
riscv/debug_module.h

@ -4,9 +4,11 @@
#include <set>
#include "devices.h"
#include "abstract_device.h"
#include "mmu.h"
class sim_t;
class bus_t;
typedef struct {
// Size of program_buffer in 32-bit words, as exposed to the rest of the

10
riscv/devices.h

@ -4,21 +4,13 @@
#include "decode.h"
#include "mmio_plugin.h"
#include "int_map.h"
#include <cstdlib>
#include <string>
#include "abstract_device.h"
#include <map>
#include <vector>
#include <utility>
class processor_t;
class abstract_device_t {
public:
virtual bool load(reg_t addr, size_t len, uint8_t* bytes) = 0;
virtual bool store(reg_t addr, size_t len, const uint8_t* bytes) = 0;
virtual ~abstract_device_t() {}
};
class bus_t : public abstract_device_t {
public:
bool load(reg_t addr, size_t len, uint8_t* bytes);

1
riscv/dts.h

@ -2,6 +2,7 @@
#ifndef _RISCV_DTS_H
#define _RISCV_DTS_H
#include "devices.h"
#include "processor.h"
#include "mmu.h"
#include <string>

2
riscv/processor.h

@ -4,8 +4,8 @@
#include "decode.h"
#include "config.h"
#include "devices.h"
#include "trap.h"
#include "abstract_device.h"
#include <string>
#include <vector>
#include <unordered_map>

1
riscv/riscv.mk.in

@ -10,6 +10,7 @@ riscv_install_prog_srcs = \
riscv_CFLAGS = -fPIC
riscv_hdrs = \
abstract_device.h \
common.h \
decode.h \
devices.h \

Loading…
Cancel
Save