Browse Source

configstring: rename variables to dts

fp-encoding
Wesley W. Terpstra 9 years ago
parent
commit
0647cce541
  1. 8
      riscv/sim.cc
  2. 6
      riscv/sim.h
  3. 10
      spike_main/spike.cc

8
riscv/sim.cc

@ -53,7 +53,7 @@ sim_t::sim_t(const char* isa, size_t nprocs, size_t mem_mb, bool halted,
}
rtc.reset(new rtc_t(procs));
make_config_string();
make_dtb();
}
sim_t::~sim_t()
@ -234,7 +234,7 @@ static std::string dts_compile(const std::string& dts)
return dtb.str();
}
void sim_t::make_config_string()
void sim_t::make_dtb()
{
reg_t rtc_addr = EXT_IO_BASE;
bus.add_device(rtc_addr, rtc.get());
@ -303,8 +303,8 @@ void sim_t::make_config_string()
" };\n"
"};\n";
config_string = s.str();
std::string dtb = dts_compile(config_string);
dts = s.str();
std::string dtb = dts_compile(dts);
rom.insert(rom.end(), dtb.begin(), dtb.end());
rom.resize((rom.size() / align + 1) * align);

6
riscv/sim.h

@ -30,7 +30,7 @@ public:
void set_histogram(bool value);
void set_procs_debug(bool value);
void set_gdbserver(gdbserver_t* gdbserver) { this->gdbserver = gdbserver; }
const char* get_config_string() { return config_string.c_str(); }
const char* get_dts() { return dts.c_str(); }
processor_t* get_core(size_t i) { return procs.at(i); }
private:
@ -38,7 +38,7 @@ private:
size_t memsz; // memory size in bytes
mmu_t* debug_mmu; // debug port into main memory
std::vector<processor_t*> procs;
std::string config_string;
std::string dts;
std::unique_ptr<rom_device_t> boot_rom;
std::unique_ptr<rtc_t> rtc;
bus_t bus;
@ -64,7 +64,7 @@ private:
reg_t mem_to_addr(char* x) { return x - mem + DRAM_BASE; }
bool mmio_load(reg_t addr, size_t len, uint8_t* bytes);
bool mmio_store(reg_t addr, size_t len, const uint8_t* bytes);
void make_config_string();
void make_dtb();
// presents a prompt for introspection into the simulation
void interactive();

10
spike_main/spike.cc

@ -31,7 +31,7 @@ static void help()
fprintf(stderr, " --extension=<name> Specify RoCC Extension\n");
fprintf(stderr, " --extlib=<name> Shared library to load\n");
fprintf(stderr, " --gdb-port=<port> Listen on <port> for gdb to connect\n");
fprintf(stderr, " --dump-config-string Print platform configuration string and exit\n");
fprintf(stderr, " --dump-dts Print device tree string and exit\n");
exit(1);
}
@ -41,7 +41,7 @@ int main(int argc, char** argv)
bool halted = false;
bool histogram = false;
bool log = false;
bool dump_config_string = false;
bool dump_dts = false;
size_t nprocs = 1;
size_t mem_mb = 0;
std::unique_ptr<icache_sim_t> ic;
@ -67,7 +67,7 @@ int main(int argc, char** argv)
parser.option(0, "l2", 1, [&](const char* s){l2.reset(cache_sim_t::construct(s, "L2$"));});
parser.option(0, "isa", 1, [&](const char* s){isa = s;});
parser.option(0, "extension", 1, [&](const char* s){extension = find_extension(s);});
parser.option(0, "dump-config-string", 0, [&](const char *s){dump_config_string = true;});
parser.option(0, "dump-dts", 0, [&](const char *s){dump_dts = true;});
parser.option(0, "extlib", 1, [&](const char *s){
void *lib = dlopen(s, RTLD_NOW | RTLD_GLOBAL);
if (lib == NULL) {
@ -85,8 +85,8 @@ int main(int argc, char** argv)
s.set_gdbserver(&(*gdbserver));
}
if (dump_config_string) {
printf("%s", s.get_config_string());
if (dump_dts) {
printf("%s", s.get_dts());
return 0;
}

Loading…
Cancel
Save