456ee51d36
feat: add kernel pagetable support
2024-04-12 18:48:36 +08:00
83abc72e04
fix: extern_addr: remove as_phys_addr, lds will provide virt addr
2024-04-12 18:36:28 +08:00
beb792d426
chore: adjust max_width
2024-04-12 01:17:36 +08:00
f41664e7cd
feat: fixup use in kernel
2024-04-09 01:11:54 +08:00
4d090c0478
feat: move allocator into lib
2024-04-09 00:10:28 +08:00
bed9baac4b
feat: move utils into lib
2024-04-08 23:07:44 +08:00
6267f8449d
feat: move vspace into lib
2024-04-08 23:04:37 +08:00
774cabc513
fix: some parts of physical memory is not mapped
2024-04-08 17:47:37 +08:00
1d026d8053
feat: map kernel
...
1. initial riscv32 support
2. fix bug in table.rs: cur level order is reversed
3. introduce global kernel_{phys, virt}_to_{virt, phys} for address translating
4. remove unused riscv/mm
5. initial early_memory management through RamBlock
6. initial kernel space mapping support
2024-04-08 16:23:10 +08:00
13e331f4d2
chore: introduce PAGE_LAYOUT
2024-04-07 20:10:08 +08:00
70ca917778
chore: rename symbol name from linker script
2024-04-07 19:38:26 +08:00
e469b99cb5
chore: sync partial changes
2024-04-07 01:04:04 +08:00
9710132b3e
feat: allocator: block: implement reserver function
2024-04-07 01:02:23 +08:00
e9751585fe
fix: allocator: freelist: reserve is not handling overlapped situations
2024-04-07 00:21:13 +08:00
0bb447ca28
feat: allocator: add block allocator
2024-04-07 00:20:02 +08:00
ced2b85b63
feat: utils: add Then for bool type
2024-04-06 21:12:41 +08:00
2aa88154b4
feat: allow to reserve space in freelist
2024-04-06 20:40:38 +08:00
bca4e37ef2
feat: add allocator
2024-04-04 19:28:21 +08:00
120e5087e3
feat: refactor vspace
2024-04-01 16:56:21 +08:00
668c9b142c
feat: utils: add size.rs
2024-04-01 16:53:47 +08:00
0012091cd5
chore: cpio: better comment
2024-04-01 16:53:29 +08:00
cc5049353a
chore: move vspace to kernel and rename features
2024-04-01 15:37:47 +08:00
c899797fa0
feat: add initial vspace support
2024-03-26 00:17:43 +08:00
77d02a128b
fix: entry.rs: test console deadlock
2024-03-24 21:25:12 +08:00
fa5dca137d
chore: log on shutdown failed
2024-03-24 21:24:53 +08:00
ea15acb8f6
feat: add sifive serial driver
2024-03-24 21:24:33 +08:00
5032711022
feat: rewrite console init logic
2024-03-24 19:12:04 +08:00
284e12348d
chore: logger: show caller
2024-03-23 21:46:14 +08:00
c3d59bc9a4
feat: provide infrastructure for TLS
2024-03-23 21:38:02 +08:00
c210a049cd
chore: move mm into vspace
2024-03-23 16:45:24 +08:00
ac4a9bf6ec
feat: add lib/cpio
2024-03-21 18:10:52 +08:00
daf96a0c64
feat: drop legacy flags for riscv-sbi
2024-03-20 22:13:21 +08:00
dd5325db2a
fix: add missing bound for KernelObject
2024-03-20 21:21:56 +08:00
ee6166c657
feat: add initial caps
2024-03-20 21:16:54 +08:00
f11e3781d3
chore: cleanup
2024-03-20 21:11:27 +08:00
b5d4e419c4
feat: add ObjectType definitions
2024-03-20 21:10:33 +08:00
369b488641
fix: cargo-make ships clippy by default
2024-02-16 22:42:13 +08:00
d9ccd4ef84
chore: avoid using assembly directly
2024-02-16 22:35:05 +08:00
ef54cc91c7
chore: GitHub Action: optimize
2024-02-16 21:13:28 +08:00
d8fce18960
feat: use cfg_if! to avoid conflicting features
2024-02-16 21:00:08 +08:00
35a77f39ab
feat: switch to cargo-make
2024-02-16 20:59:09 +08:00
613512e329
feat: use workspace
2024-02-16 19:22:06 +08:00
262354cb28
chore: GitHub Action: also run tests
2024-02-16 18:51:17 +08:00
30728a7c2f
fix: boot hartid might not be zero, introduce board level config
2024-02-16 18:30:11 +08:00
cd6b773326
chore: format console/log
2024-02-16 18:16:03 +08:00
0c14eaa057
feat: use tp as hart_id
2024-02-16 17:45:57 +08:00
9219d9f678
feat: rewrite the trap mechanism and add simple timer support
2024-02-16 13:38:24 +08:00
6cfdb4a237
chore: move arch traits into plat
2024-02-15 20:37:48 +08:00
145b8cf076
chore: add rustfmt.toml and format
2024-02-01 19:14:36 +08:00
c321d48860
chore: add some tests
2024-01-26 15:42:58 +08:00