diff options
author | Ruslan Bukin <br@bsdpad.com> | 2015-04-29 22:35:23 -0500 |
---|---|---|
committer | Ruslan Bukin <br@bsdpad.com> | 2015-04-29 22:35:23 -0500 |
commit | 81f3211149c051e4f70b0b12eb3709dfc6e0395c (patch) | |
tree | 9b9d276586b948252ec6a39a2748dbca43fe92d3 /src/dev | |
parent | 52a3bc5e5c3cc694b3f8b29f38b0dd296b91350f (diff) | |
download | gem5-81f3211149c051e4f70b0b12eb3709dfc6e0395c.tar.xz |
arch, base, dev, kern, sym: FreeBSD support
This adds support for FreeBSD/aarch64 FS and SE mode (basic set of syscalls only)
Committed by: Nilay Vaish <nilay@cs.wisc.edu>
Diffstat (limited to 'src/dev')
-rw-r--r-- | src/dev/arm/gic_pl390.cc | 6 | ||||
-rw-r--r-- | src/dev/terminal.cc | 10 |
2 files changed, 14 insertions, 2 deletions
diff --git a/src/dev/arm/gic_pl390.cc b/src/dev/arm/gic_pl390.cc index ced246485..b4dc37682 100644 --- a/src/dev/arm/gic_pl390.cc +++ b/src/dev/arm/gic_pl390.cc @@ -276,6 +276,9 @@ Pl390::readCpu(PacketPtr pkt) ctx_id); switch(daddr) { + case ICCIIDR: + pkt->set<uint32_t>(0); + break; case ICCICR: pkt->set<uint32_t>(cpuEnabled[ctx_id]); break; @@ -525,7 +528,8 @@ Pl390::writeCpu(PacketPtr pkt) } else { uint32_t int_num = 1 << intNumToBit(iar.ack_id); if (!(activeInt[intNumToWord(iar.ack_id)] & int_num)) - panic("Done handling interrupt that isn't active?\n"); + warn("Done handling interrupt that isn't active: %d\n", + intNumToBit(iar.ack_id)); activeInt[intNumToWord(iar.ack_id)] &= ~int_num; } updateRunPri(); diff --git a/src/dev/terminal.cc b/src/dev/terminal.cc index 895069774..b4fb50f6e 100644 --- a/src/dev/terminal.cc +++ b/src/dev/terminal.cc @@ -34,7 +34,16 @@ */ #include <sys/ioctl.h> + +#if defined(__FreeBSD__) +#include <termios.h> + +#else #include <sys/termios.h> + +#endif +#include "dev/terminal.hh" + #include <poll.h> #include <unistd.h> @@ -53,7 +62,6 @@ #include "debug/Terminal.hh" #include "debug/TerminalVerbose.hh" #include "dev/platform.hh" -#include "dev/terminal.hh" #include "dev/uart.hh" using namespace std; |