WangRunji
32e7f0ed52
fix process startup stack for musl libc
2019-02-18 21:46:12 +08:00
WangRunji
a33d7632d6
rename 'KERN_VA_BASE' to 'KERNEL_OFFSET'. fix compile error
2019-02-18 14:42:25 +08:00
WangRunji
a12dcb7595
user: add target i686
2019-02-18 14:42:25 +08:00
WangRunji
7691085176
user: support riscv64, remove linker scripts
2019-02-18 14:42:25 +08:00
WangRunji
b4833e9c49
simplify user 'sh' with alloc
2019-02-18 13:21:57 +08:00
WangRunji
68f73bcd1a
use global allocator in rust user programs
2019-02-18 13:21:57 +08:00
Jiajie Chen
fbf9409db2
Convert frame buffer to pa in virtio_gpu as well
2019-02-16 19:15:24 +08:00
Jiajie Chen
f399805196
Use KERN_VA_BASE and MEMORY_OFFSET to convert between kern va and pa
2019-02-16 18:06:32 +08:00
Jiajie Chen
8313b8854e
cherry-pick virtio improvement from lab8-rv32
...
Move mandelbrot to test mod, cleanup virtio feature negotiation and add addr2line script to Makefile
Implement full virtqueue operations, virtio input driver
Use new virtqueue implementation for virtio net driver
Implement virtio blk device support and use it instead of memory sfs when available
fix dirty hack for virtio_blk
2019-02-16 16:52:11 +08:00
WangRunji
c7d736acd4
use rust-toolchain file instead of rustup override
2019-02-16 14:32:22 +08:00
WangRunji
95dfb7684f
update kflash.py, fix build k210
2019-02-16 14:31:47 +08:00
WangRunji
2766f49986
update README, Travis, Makefile
2019-02-15 16:10:24 +08:00
WangRunji
2303a8099b
update Rust compiler to support riscv64
2019-02-15 14:54:42 +08:00
WangRunji
ac0c19cdb0
support Sv39
...
To test: make run arch=riscv64 board=u540
2019-02-01 01:09:23 +08:00
WangRunji
fc8888db72
update for new paging mechanism on riscv. move kernel va to 0x(ffffffff)c0000000.
2019-01-31 23:20:21 +08:00
WangRunji
1ceb7ae12d
use #[repr(C)] instead of #[repr(packed)] to avoid warning
2019-01-31 18:07:15 +08:00
WangRunji
847a1c7576
use core::sync::atomic::fence
2019-01-29 16:08:00 +08:00
WangRunji
66c84b4599
update to x86_64 0.4
2019-01-28 14:24:56 +08:00
WangRunji
238de1b282
fix compile for rv64
2019-01-24 12:31:28 +08:00
WangRunji
047f4ffdcc
cherry-pick jiegec's work ( #3 ) from lab8-rv32: virtio drivers, network stack
...
Read and parse dtb upon boot
Implement virtio net device detection
Negotiate feature bits for virtio-net
Read MAC address from virtio-net device and detect virtqueues
Receiving from virtio net device is working for the first time
Implement driver interface and interrupt handling routines
Rearrange drivers into upper directory
Implement initial support for processing arp request and reply packet
Refactor MAC address and IPv4 address into structs, and implement ICMP echo reply
Fix typos
Implement initial support for virtio gpu driver
Complete first working version of virtio gpu driver with mandelbrot example
Use smoltcp and implement a udp and tcp server on top of it
Cleanup virtio net code
2019-01-23 22:28:45 +08:00
xyongcn
353850f41d
Update README.md
2019-01-10 23:44:07 +08:00
Chen
3690a4ea3b
Merge pull request #1 from jiegec/master
...
Fix AArch64 toolchain downloading in Travis CI
2019-01-10 23:18:45 +08:00
Jiajie Chen
b1d01928c3
Use core::mem::size_of instead of core:intrinsics::size_of. Thanks @wangrunji0408
2019-01-08 22:10:51 +08:00
Jiajie Chen
6e887d5505
Replace hardcoded instruction length with size_of in backtrace
2019-01-08 19:08:17 +08:00
Jiajie Chen
5350ecb09f
Add addr2line tool for annotating backtrace
2019-01-08 19:04:34 +08:00
Jiajie Chen
e3262698be
Fix aarch64 toolchain detection and add missing compiler_builtins v0.1.5
2019-01-08 13:49:49 +08:00
Jiajie Chen
74dea5836f
Fix toolchain download link
2019-01-08 13:05:34 +08:00
Jiajie Chen
4beb865d32
Update toolchain location and detection
2019-01-08 12:57:24 +08:00
Jiajie Chen
66cdbd0713
Update aarch64 toolchain location
2019-01-08 12:45:25 +08:00
Jiajie Chen
090796d3f0
Implement backtrace support for RISCV32
2019-01-08 12:05:29 +08:00
Jiajie Chen
7d6856ceab
Implement backtrace support for RISCV64
2019-01-08 11:33:31 +08:00
Jiajie Chen
d8edd1a7db
Implement backtrace support for AArch64
2019-01-08 11:05:28 +08:00
dzy
61eda6b19e
Add 0.1.4 compiler_builtins. Git ignore llc.
2019-01-06 20:17:35 +08:00
chyyuu
08c73945eb
Update README.md
2019-01-06 11:25:48 +08:00
WangRunji
0965d24083
fix map_kernel on riscv32
2019-01-05 15:29:27 +08:00
chyyuu
46e7a61ba7
Update README.md
2019-01-05 12:58:11 +08:00
WangRunji
4bcb903b46
update travis script
2019-01-03 22:05:08 +08:00
WangRunji
2d5178d0b7
rename ucore to rcore
2019-01-03 21:26:50 +08:00
WangRunji
b8e32f8854
update README. lock Rust nightly version
2019-01-03 19:20:02 +08:00
WangRunji
62221387c1
add OSTrain group5 reports
2019-01-03 18:40:56 +08:00
WangRunji
f0ea48126d
fix sys_wait arg type: isize -> i32
2019-01-03 18:37:27 +08:00
WangRunji
61dfcb5558
Merge remote-tracking branch 'equation314/arch-aarch64' into merging
...
# Conflicts:
# kernel/Makefile
# kernel/src/arch/aarch64/board/raspi3/irq.rs
# kernel/src/arch/aarch64/memory.rs
# kernel/src/arch/riscv32/paging.rs
# kernel/src/arch/x86_64/paging.rs
2019-01-03 18:21:13 +08:00
equation314
826b23811d
Merge branch 'doc' into arch-aarch64
2019-01-02 23:01:01 +08:00
equation314
a485cfae04
aarch64/doc: rename raspi3.md to README.md
2019-01-02 23:00:07 +08:00
equation314
dfb2d49cd6
aarch64/doc: add console driver
2019-01-02 19:15:47 +08:00
equation314
b4e0b38286
aarch64/doc: add framebuffer driver
2019-01-01 21:48:35 +08:00
equation314
1aa8436d71
aarch64/doc: add interruption & timer drivers
2019-01-01 20:47:19 +08:00
equation314
7fda4e360f
aarch64/doc: add GPIO, mini UART, mailbox drivers
2019-01-01 01:56:22 +08:00
WangRunji
e46b6c7b0c
move target json. add kflash.py
2019-01-01 01:53:33 +08:00
WangRunji
190711fbc2
yet another riscv atomic fix
2019-01-01 01:40:34 +08:00