aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2016-02-28if atomics were disabled don't allow multiharttravis-devColin Schmidt1-0/+4
This avoids using atmoics, which we without we can't truly support multiple harts
2016-01-12Write 1 to MIPI, not 0Andrew Waterman1-1/+1
2015-11-28Change boot procedure to not rely on IPIsAndrew Waterman4-18/+32
That procedure doesn't work correctly if hart 0 comes out of reset while hart 1 is still in reset.
2015-11-25Don't rely on arpa/inet.h; newlib doesn't provide itAndrew Waterman1-1/+2
2015-11-18Merge pull request #15 from darius-bluespec/fix-disable-fp-emulationAndrew Waterman1-0/+20
Fix --disable-fp-emulation.
2015-11-18Merge pull request #14 from darius-bluespec/fix-disable-atomicsAndrew Waterman2-4/+4
Fix macros for emulating atomic operations (--disable-atomics).
2015-11-18Merge pull request #13 from darius-bluespec/bbl-include-configAndrew Waterman1-0/+1
Add missing #include for config.h
2015-11-18Fix --disable-fp-emulation.Darius Rad1-0/+20
2015-11-18Fix macros for emulating atomic operations (--disable-atomics).Darius Rad2-4/+4
2015-11-18Add missing #include for config.hDarius Rad1-0/+1
2015-11-16Use IPIs to wake up hartsAndrew Waterman4-37/+31
This has the side effect of testing the IPI mechanism. Still not sure this is the best approach to booting, but it works...
2015-11-12Read and use devicetree -- THIS BREAKS ROCKET FOR NOWAndrew Waterman12-558/+804
2015-11-12print PC of failed assertionsAndrew Waterman2-87/+2
2015-10-20fix pte_create to deal with protection bits correctlyYunsup Lee2-6/+25
2015-09-16Initialize FCSR on bootAndrew Waterman1-0/+1
2015-09-14Initialize mtimecmp for debuggabilityAndrew Waterman1-0/+1
2015-09-14Increase VMR limit for SPECAndrew Waterman1-6/+11
2015-09-14Add ftruncate syscallAndrew Waterman4-0/+22
2015-09-14Zero-initialize x-registers for debuggabilityAndrew Waterman1-0/+33
2015-09-11Stub out a few system callsAndrew Waterman2-0/+8
2015-09-11Fix single-precision FP emulationAndrew Waterman1-1/+1
2015-09-08Disable RVC in fixed-size assembly blocksAndrew Waterman3-27/+44
2015-09-03Fix RVC buildAndrew Waterman2-2/+2
2015-09-02Don't automatically run autoconfAndrew Waterman1-9/+0
Run it yourself if you modify configure.ac, and commit the configure script.
2015-07-28Fix DECLARE_CAUSE macrosAndrew Waterman1-66/+12
2015-07-24Store RV logo in rodata, rather than making it on the flyAndrew Waterman1-44/+25
This works around a stack overflow.
2015-07-24Undo last commitAndrew Waterman3-4/+5
It breaks programs that rely on ELF program headers.
2015-07-23Avoid stack overflow with -msoft-floatAndrew Waterman4-5/+8
2015-07-22Don't let brk stomp on mmap'd regionsAndrew Waterman1-1/+1
We were already trying to handle this case, but we got it wrong.
2015-07-05New M-mode timer and SBI call to use itAndrew Waterman8-42/+100
2015-06-24Use sbadaddr (not sepc) to resolve instruction page faultsAndrew Waterman2-6/+6
2015-06-11Fully initialize page tables to zeroAndrew Waterman1-1/+2
Previously, a bug caused only some page tables to be zeroed on RV64.
2015-06-02Fix regression causing sbrk to fail spuriouslyAndrew Waterman1-3/+3
2015-05-31Assume RTC frequency of 10 MHzAndrew Waterman1-1/+1
Of course, this should probably be read from a CSR or platform register.
2015-05-29Make boot loader/SBI changes to support SMP LinuxAndrew Waterman13-61/+183
2015-05-28"Fix" mremap bug by returning -ENOSYSAndrew Waterman1-29/+1
mremap was badly broken, and maybe it's not worth the time to fix it. glibc still seems to work ok, because the malloc implementation handles mremap failure gracefully (though at a performance cost).
2015-05-18Merge pull request #9 from palmer-dabbelt/destdirAndrew Waterman1-5/+5
Change the behavior of the DESTDIR make variable
2015-05-18Change the behavior of the DESTDIR make variablePalmer Dabbelt1-5/+5
DESTDIR is a common make idiom. As per the GNU coding standards https://www.gnu.org/prep/standards/html_node/DESTDIR.html "DESTDIR is a variable prepended to each installed target file, like this: $(INSTALL_PROGRAM) foo $(DESTDIR)$(bindir)/foo $(INSTALL_DATA) libfoo.a $(DESTDIR)$(libdir)/libfoo.a The DESTDIR variable is specified by the user on the make command line as an absolute file name. For example: make DESTDIR=/tmp/stage install DESTDIR should be supported only in the install* and uninstall* targets, as those are the only targets where it is useful. If your installation step would normally install /usr/local/bin/foo and /usr/local/lib/libfoo.a, then an installation invoked as in the example above would install /tmp/stage/usr/local/bin/foo and /tmp/stage/usr/local/lib/libfoo.a instead." The current Makefile.in uses DESTDIR, but has a slightly non-standard behavior: the target install location doesn't include "$prefix". This breaks package managers, because stuff ends up getting installed to the wrong location. Unfortunately the only way I can think of to fix this involves silently changing the behavior of DESTDIR. Hopefully nobody is using it...? [port of 8a2088b59162fe16c16d26ddc1cfcaaaa8c4156f in riscv-fesvr]
2015-05-14Add sbi_shutdown callAndrew Waterman5-10/+27
2015-05-14Fix VM, MIP encodingAndrew Waterman1-6/+6
2015-05-10Update READMEAndrew Waterman1-5/+15
2015-05-10Split pk functionality into pk and bblAndrew Waterman13-111/+138
pk is now an AEE only (i.e. it can only execute user programs). bbl is now an SEE only (i.e. it can only host kernels).
2015-05-10Fix build using glibc toolchainAndrew Waterman2-2/+2
2015-05-09Upgrade to privileged architecture 1.7Andrew Waterman13-200/+282
2015-05-08Initialize the mailbox on bootAndrew Waterman1-0/+6
This fixes a bug when running on HW.
2015-05-02Add ASCII art boot logoAndrew Waterman7-0/+78
It's only printed when booting the Linux kernel. Feel free to improve the quality of the ASCII art. It looks like this when rendered: vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv vvvvvvvvvvvvvvvvvvvvvvvvvvvv rrrrrrrrrrrrr vvvvvvvvvvvvvvvvvvvvvvvvvv rrrrrrrrrrrrrrrr vvvvvvvvvvvvvvvvvvvvvvvv rrrrrrrrrrrrrrrrrr vvvvvvvvvvvvvvvvvvvvvvvv rrrrrrrrrrrrrrrrrr vvvvvvvvvvvvvvvvvvvvvvvv rrrrrrrrrrrrrrrrrr vvvvvvvvvvvvvvvvvvvvvvvv rrrrrrrrrrrrrrrr vvvvvvvvvvvvvvvvvvvvvv rrrrrrrrrrrrr vvvvvvvvvvvvvvvvvvvvvv rr vvvvvvvvvvvvvvvvvvvvvv rr vvvvvvvvvvvvvvvvvvvvvvvv rr rrrr vvvvvvvvvvvvvvvvvvvvvvvvvv rrrr rrrrrr vvvvvvvvvvvvvvvvvvvvvv rrrrrr rrrrrrrr vvvvvvvvvvvvvvvvvv rrrrrrrr rrrrrrrrrr vvvvvvvvvvvvvv rrrrrrrrrr rrrrrrrrrrrr vvvvvvvvvv rrrrrrrrrrrr rrrrrrrrrrrrrr vvvvvv rrrrrrrrrrrrrr rrrrrrrrrrrrrrrr vv rrrrrrrrrrrrrrrr rrrrrrrrrrrrrrrrrr rrrrrrrrrrrrrrrrrr rrrrrrrrrrrrrrrrrrrr rrrrrrrrrrrrrrrrrrrr rrrrrrrrrrrrrrrrrrrrrr rrrrrrrrrrrrrrrrrrrrrr INSTRUCTION SETS WANT TO BE FREE
2015-04-30Assume even less about mstatus reset valueAndrew Waterman1-2/+3
2015-04-24"Fix" RV32 programs running on RV64 pkAndrew Waterman1-0/+4
Only allocate virtual addresses under 2^31. We might revise the RV32-on-RV64 semantics to zero-extend the RV32 virtual addresses, which would allow the user program's use of the full 4 GB.
2015-04-19Fix loading of misaligned ELF segmentsAndrew Waterman1-1/+1
2015-04-10Fix stack discipline for recursive trapsAndrew Waterman6-19/+25