Stephen Marz
|
625df1cf46
|
Added testing shell, no testing, yet.
|
2020-04-21 20:30:09 -04:00 |
|
Stephen Marz
|
da92f55d1b
|
Added codegen-units to avoid SEGV
|
2020-04-21 20:27:13 -04:00 |
|
Stephen Marz
|
8b2b670deb
|
Add testing shell
|
2020-04-21 20:25:39 -04:00 |
|
Stephen Marz
|
b3e99659de
|
Initial fix
|
2020-04-21 20:23:39 -04:00 |
|
Stephen Marz
|
f9572be05a
|
Add options in Cargo.toml for lto and optimizer
|
2020-04-21 20:21:56 -04:00 |
|
Stephen Marz
|
1ae7b115f7
|
Let's try BUILD.md this way
|
2020-04-21 20:14:20 -04:00 |
|
Stephen Marz
|
e6d9807c11
|
Short instructions for building.
|
2020-04-21 20:13:51 -04:00 |
|
Stephen Marz
|
d1dc1d7b32
|
Get rid of Makefile, use cargo build and cargo run now.
|
2020-04-21 19:51:30 -04:00 |
|
Stephen Marz
|
1c329244ce
|
Use Rust out-of-the-box now that it has full support for RISC-V. We need
cargo-binutils and so forth to run these. But, for now all we need is to
run cargo run and it should invoke qemu for us based on .cargo/config
|
2020-04-21 19:49:23 -04:00 |
|
Stephen Marz
|
86018d30a3
|
Added assembly module so that Rust will import RISC-V assembly code
without using GNU tools
|
2020-04-21 19:48:19 -04:00 |
|
Stephen Marz
|
aba5fe0e24
|
Use cargo to build out-of-the-box here.
|
2020-04-21 19:47:57 -04:00 |
|
Stephen Marz
|
abd3048afa
|
Use Rust's global_asm to import assembly files
|
2020-04-21 19:47:38 -04:00 |
|
Stephen Marz
|
4767b6d698
|
Fixed used index and available index. These are modded by the queue size in the ring only. The index continues to increase until it naturally wraps at the data size
|
2020-04-12 21:37:06 -04:00 |
|
Stephen Marz
|
fb3a9ccdae
|
Test block device
|
2020-03-31 11:41:32 -04:00 |
|
Stephen Marz
|
ce5e8b17b2
|
Fixed C++ isms when translating to Rust
|
2020-03-28 21:06:31 -04:00 |
|
Stephen Marz
|
55bcc79736
|
Added MmioDevice structure to put a structure to the MMIO virtio address space.
|
2020-03-28 21:05:45 -04:00 |
|
Stephen Marz
|
d2ab4a1ad7
|
Rename inode to node for a more generic filesystem.
|
2020-03-18 22:37:12 -04:00 |
|
Stephen Marz
|
61d8ace581
|
Added more FS stuff.
|
2020-03-18 22:01:05 -04:00 |
|
Stephen Marz
|
e033feee2b
|
Documentation says 0x80000, but I left off a zero :( Thanks to QiuhaoLi
|
2020-03-18 10:41:57 -04:00 |
|
Stephen Marz
|
b39db75cf4
|
Add fs and minix
|
2020-03-18 10:40:27 -04:00 |
|
Stephen Marz
|
d6bf3d2685
|
Remove testing code, change comments
|
2020-03-16 15:05:04 -04:00 |
|
Stephen Marz
|
40977c2e45
|
Add global entropy device list
|
2020-03-16 14:02:28 -04:00 |
|
Stephen Marz
|
4fd36bf898
|
Move individual chapters, use tags from now on
|
2020-03-15 20:21:42 -04:00 |
|
Stephen Marz
|
c184aae307
|
Add rng.rs for ch9 and overall
|
2020-03-15 20:18:46 -04:00 |
|
Stephen Marz
|
703c2cf5b0
|
Finish virtio
|
2020-03-15 20:18:09 -04:00 |
|
Stephen Marz
|
858c838e73
|
Updates to power of two ring size
|
2020-03-15 11:11:59 -04:00 |
|
Stephen Marz
|
973ec7449b
|
Added comments to describe functions and enumerations. Also, assumptions have been spelled out.
|
2020-03-15 11:09:01 -04:00 |
|
Stephen Marz
|
ea4c8ae9c2
|
Shortened some code using Rust
|
2020-03-13 21:45:13 -04:00 |
|
Stephen Marz
|
50df049fbb
|
I messed up the header size, which is why writes failed
|
2020-03-13 20:01:02 -04:00 |
|
Stephen Marz
|
a6c0ff96fe
|
Remove mepc, satp, and pid, we get these from the frame address
|
2020-03-13 19:38:31 -04:00 |
|
Stephen Marz
|
4487295308
|
Remove frame extraction
|
2020-03-13 19:38:06 -04:00 |
|
Stephen Marz
|
c3e7451997
|
Change trap frame structure to new function, and added quantum multiplier
|
2020-03-13 19:37:44 -04:00 |
|
Stephen Marz
|
f881eacf26
|
Remove unused imports, status isn't currently being used in trap, and removed unsafe from trap 7
|
2020-03-13 19:37:21 -04:00 |
|
Stephen Marz
|
44f2f3acb5
|
Changed testing apparatus
|
2020-03-13 19:36:53 -04:00 |
|
Stephen Marz
|
46afb47ab6
|
changed used ring to be page aligned
|
2020-03-13 19:36:34 -04:00 |
|
Stephen Marz
|
0954532a5b
|
changed used ring to be page aligned
|
2020-03-13 19:36:24 -04:00 |
|
Stephen Marz
|
cfbc4b516a
|
Remove block::init, it's not necessary anymore
|
2020-03-13 15:33:37 -04:00 |
|
Stephen Marz
|
8f55a9a6ec
|
Remove reference when using ref
|
2020-03-13 15:31:47 -04:00 |
|
Stephen Marz
|
67f30af9a9
|
Clean up interrupt code
|
2020-03-13 13:23:55 -04:00 |
|
Stephen Marz
|
cbc3622c8e
|
Remove debugging output
|
2020-03-13 13:16:43 -04:00 |
|
Stephen Marz
|
497abf1660
|
Added comments, will need to centralize the read/write functions
|
2020-03-13 13:04:41 -04:00 |
|
Stephen Marz
|
5e0be36d45
|
My fault, the mut's in let Some don't actually do anything.
|
2020-03-13 12:58:16 -04:00 |
|
Stephen Marz
|
efb26d6aa3
|
Add cargo
|
2020-03-13 11:47:11 -04:00 |
|
Stephen Marz
|
08b227e223
|
Add ignore
|
2020-03-13 11:46:13 -04:00 |
|
Stephen Marz
|
9524954eb2
|
Remove unnecessary code
|
2020-03-13 11:28:39 -04:00 |
|
Stephen Marz
|
eec1047ac9
|
Document how to get the index from mmio address
|
2020-03-13 11:23:08 -04:00 |
|
Stephen Marz
|
5b2e780484
|
move index so that it has more time to write
|
2020-03-13 11:17:32 -04:00 |
|
Stephen Marz
|
9623de2e50
|
Added PLIC handler to delegate to virtio. Virtio now delegates to the virtio device type to handle PLIC interrupts. We now handle interrupts from VirtIO as well as free memory associated with it.
|
2020-03-13 11:15:12 -04:00 |
|
Stephen Marz
|
016520a354
|
Support new block list
|
2020-03-12 20:44:53 -04:00 |
|
Stephen Marz
|
72563c3161
|
Switch to a static block list. This will make it easier to determine
which drive we're talking about. 1 is 0x1000_1000 ... 8 is 0x1000_8000
|
2020-03-12 20:44:28 -04:00 |
|